Project Opinion/Help - .NET or PHP
Hey guys, still a newbie around here so forgive me if I'm posting in the wrong section. I need some opinions on which language would suit my project best. Either ASP .NET or PHP?
Now I know a minimal amount of PHP and even less of .NET. However, I am going to roll with the best language for my needs. Keep in mind I'm not looking for a "quick" turn around as I know all languages take some time. I also know Java and C based languages are the hardest to pick up.
With that said here some quick bullet points of my project:
+ Custom CMS w/ Forum Integration
+ Universal Member System (website & forum) w/ Profiles
+ Statistical Input, Editing, Tracking, and Deleting via DB's
+ Credit(s)/Purchase System via PayPal
+ Trophies/Badges/Awards System (to be shown on user profiles)
I'm not sure if I'm allowed to post links or not but here are a few examples of what I'm trying to come close to in terms of functionality:
- LeagueDaddy(.com - .NET)
- UnitedLeagues(.com - .NET)
- DIY-Sports(.com - PHP)
- LeagueGaming(.com - Coldfusion)
As you can see they are all pretty similar. Users enter in statistics, they are saved to a database, and then displayed.
Some concerns for development is how scale-able the language is and how well the database handles large number of users.
Now with that somewhat brief description, I need your help. .NET or PHP, which would best suit what I am trying to do here?
Thanks in advance!
Both can do that just fine.
If you're not very familiar with either language - especially if you're less so with C#/VB - then PHP might be easier for you. It tends to have a better community: more people talking, more support, more code samples, and so on.
But to compare .NET with PHP isn't fair. .NET is a framework; the equivalent with PHP would be like Zend Framework or Symfony or some such. The reason is that .NET does a lot of stuff that you will find you need, while straight PHP requires you to write all that. Which most people don't enjoy doing.
But you've got time, right? Spend a week or two with each. Try WebForms and MVC with .NET, and try a couple frameworks with PHP. See what you like best.
Thanks requinix, I really appreciate the reply!
Yeah, the thing is though spending a week with either is kind of unfair too don't you think? That's like not giving enough time to explore the different languages more.
I know both can do what I am trying to accomplish, I'm just curious to get others take on the matter. Once I decide, it's all or nothing for the next few months trying to learn the language. So I want to make sure I weigh all the proper options. With some help from this community I think I can do just that.
And I'm not really TRYING to compare the languages, and if I come off like that I apologize (again, still new), just reading a butt load of PHP vs ASP vs .NET threads/forums/websites/faqs simply does no good in helping. It all comes down to a matter of opinion and I want your (and whomever else) personal opinion, as biased as it may be.
(By the way, the Review of Languages sticky isn't too helpful when it comes to PHP. )
Then I would say C# and .NET. Strict typing and compile-time error checking will be helpful for somebody new to the scene.
About me: I used PHP for years until about 6 months ago when I was hired on to a C#/.NET job. What little I knew about them I wasn't happy about; less than a month later I was in love with it, and now I feel just as proficient in C# as I do in PHP.
What did you use to learn C#? Since it is entirely different than PHP, I'm sure you either read books or tutorials? Could you recommend me some to check out? Anything to help get me up and going will be appreciated.
Anyone else have any input?
No books or tutorials. Some queries to MSDN to get more information about stuff, some Googling to see how other people have dealt with problems - stuff like that.
So no, can't really recommend anything
June 17th, 2011, 01:09 AM
I'm sure either language would be fine, but .NET is both powerful and reasonably straightforward to use, with the added bonus of IntelliSense (in MS Visual Studio) and compile-time error checking for ease of use. There are different flavours of .NET (such as WebForms and the newer MVC); I have used WebForms successfully for a few years, but MVC is much easier to unit test.
If you're going with .NET, you might want to pick up "Professional Enterprise .NET" by Jon Arking and Scott Millett; it's not for the faint-hearted (or the budding programmer), but it will help you immensely in the long run.
June 19th, 2011, 08:47 AM
I could add that there are still other options besides these two - Django and Ruby on Rails both come to mind. While both would involved learning yet another language (Python and Ruby, respectively), if you are shaky on both of the other options, then it may be worth the trouble to look into the alternatives, especially since both Python and Ruby are quick to learn for most people (I'll admit I am biased here: I am an old hand with Python, and very fond of it, and I'm just learning Ruby now and finding it quite appealing). There are still more options beyond these, of course; it would be worth taking some time to work out which is the one you fell most comfortable with.
BTW, do you have any specific limitations as to platform, database engine, HTTP server, etc. that could be important? This could make a big difference; one of the main reasons I am learning Ruby and RoR right now is that a Django-based project I was working on got sunk because of integration problems with MS-SQL Server, and I was looking for an alternative besides ASP.NET.
Last edited by Schol-R-LEA; June 19th, 2011 at 08:53 AM.