Since this is a recurrent theme (a question along the lines of “What server-side language should I learn?” is started approximately once a month), I thought it might be helpful to create a single thread (a one-stop-shop if you will) listing useful sources of information to aid this decision-making process…
First off, some pages that provide a pro/con analysis (and brief discussion) of each of the following scripting languages/platforms (with an eye on XML support too): ASP
(http://wdvl.internet.com/Authoring/Languages/XML/PracticalXML/practicalXML3_3.html)
[JSP](http://wdvl.internet.com/Authoring/Languages/XML/PracticalXML/practicalXML3_4.html)
SitePoint resident Kevin Yank has also written some articles on this topic:
http://www.webmasterbase.com/article/265
http://www.webmasterbase.com/article/546
Here's article on the particular topic of .Net vs PHP, followed by the thread started in response to it:
http://www.sitepoint.com/article.php/870
http://www.sitepointforums.com/showthread.php?threadid=75177
I have also drawn together numerous past threads where this topic has (IMHO) been discussed in a constructive, balanced way or contains one or more particularly good posts on a particular language, so be sure to read each thread in its entirety. They are presented in no particular order:
http://www.sitepointforums.com/showthread.php?threadid=38364
http://www.sitepointforums.com/showthread.php?threadid=15799
http://www.sitepointforums.com/showthread.php?threadid=81713
http://www.sitepointforums.com/showthread.php?threadid=40319
http://www.sitepointforums.com/showthread.php?threadid=48354
http://www.sitepointforums.com/showthread.php?threadid=58412
http://www.sitepointforums.com/showthread.php?threadid=58291
http://www.sitepointforums.com/showthread.php?threadid=67474
http://www.sitepointforums.com/showthread.php?threadid=65968
In order to stop this becoming YET ANOTHER discussion thread, I have asked an administrator to make it "Important" and lock it.
Furthermore, if you would like to contribute any links that I have missed, please send a Private Message to a member of the Programming Team.
I only came to a decision about which programming language to go with when I started getting Kevin Yanks, Building a Database driven site using PHP and MySQL, article in the SP newsletter and decided to follow that through.
At the end of the day all the major ones (asp, php, JSP) etc are very powerful and capable and it comes down the personal preference, which style you feel most confortable using etc.
While it is not my favorite by any means, I think for the choices to be balanced, we need to consider ColdFusion as well. There are a handful of situations where this might just be the right scale of programming platform for a starting developer or a small/medium scale project.
Yes and no. I think debates on which language is better are pretty dumb. But there are often significant differences between the platforms/frameworks available for each language. Plone is one example where it’s trivially easy to do stuff that’s quite hard in competing ASP.NET or PHP systems, even if the languages used to build them are fundamentally similar.
One of the problems with this thread is that the title refers to “scripting languages” but the introductory message asks “What server-side language should I learn?”. This introduces an ambiguity because in web development not all the server-side programming is done with “scripting”.
“Scripting” usually refers to CGI scripting, i.e., processing GETs and POSTs from pure HTML or HTML/AJAX clients.
But nowadays a lot of web development is done in Java and C# where the application is divided between the client and server and on the client side it’s making function calls to routines on the server and getting return values, EXACTLY as though the called-methods were local, only all the marshalling and unmarshalling is handled behind the scenes so the programmer doesn’t have to do it. From a programming standpoint this is a very different paradigm from CGI. My guess is that 5-10 years from now most web programming will use this model.
So when someone is considering what server-side programming language they should choose they first have to consider which of these architectural models they expect to use.
My .02s are that it may be helpful to know who you’re going to be doing work for…
ASP/.net - Government and Private sector companies with deep pockets (most of Fortune 500), and non-profits that are MS centric.
JSP - Specialized technology firms, contractors to the Feds or Military sectors, usually very large & and long established companies (ie. Gieco) and a lot of firms in the wireless/PDA world.
PHP - Non-profits, startups, small/mid-sized firms, ISPs, technology innovating firms, new media firms, large universities, cool kids, and the rest of the entire world.
Disclaimer, these are just my personal experiences doing web dev work here in Washington DC. You results may vary… widely.
I found this scheme of programming languages history, I think some might find it interesting: http://www.levenez.com/lang/history.html
actually seen it in a fancy Silverlight edition, but that was on a commercial site and I don’t feel like posting the link here.
My contribution:
an important factor is that all of the major languages are cross-platform. I’ve just been reading about mod_mono and it’s been constantly improved since 2004. My point is, people with different backgrounds don’t need to stick to their platforms.
If I had to pick one now, though, I’d say ASP.Net because it’s the most rewarding. Using stuff like Visual Studio Express and mod_mono for hosting, breaks the myth of ASP.Net being so expensive.
But that’s just if i had to pick one framework. Besides, I use Linux all the time now.
I’d say that learning as many languages as possible might be the best way, though time-consuming.
Personally I feel each have their own advantages and disadvantages but I tend to naturally incline towards PHP & mySQL if im doing general purpose scripting or Python/Ruby if I require something with a bit more intensive coding.
hey guys what do u think about the flash action scripting along with flex today in the market flex are very demand language for the online gaming program.
At the end of the day all the major ones (asp, php, JSP) etc are very powerful and capable and it comes down the personal preference, which style you feel most confortable using etc.
For budding PHPer"s I really recommend K. Yanks book: Build Your Own Database Driven Website Using PHP & MySQL
only ASP…there are manyyyy advantages which i can tell for asp … php has noe debugging as asp is best in debuging and asp give more serverside coding then others …sp is simple and we also have full support in coding on every single event
regards
Andy