Back in the old days, the web was only about HTML. Then came along ASP, PHP, Perl and ColdFusion to help make web pages dynamic. What does this mean, and which language is best?
First, the dinosaur. Shortly after HTML took off, people decided they wanted to do cool things with their HTML – like showing the current date and time, working with cookies, and so on. Straight HTML tags could not do these dynamic things. So a language was invented, called PERL, that was basically the C language. I coded many, many projects in PERL back in those days. Perl was cool – but it was a MONSTER. It ate memory as if there was no tomorrow. And it needed a monster of a system to support it.
As the web took off, people realized that they needed a dynamic language that was coded from scratch FOR the web – that could run very quickly, with multiple people using it at once, with very low memory and processor usage. With most corporate websites running Windows, Microsoft worked on coding for a language that worked extremely well with their webserver, was quick and efficient. This was ASP. ASP was well integrated with the IIS webserver and was a huge improvement over PERL. Many corporate sites began doing their coding in ASP.
But this didn’t immediately help the non-Windows sites out there. They struggled on with Perl. Forums in particular needed help, with many users all doing things at once. That is when PHP was created. Most forums on the web (including the InfoPop forum we use here at BellaOnline) were coded in PHP. Many non-Windows website designers began to convert from Perl to PHP for those memory gains.
As both languages gained in popularity, the inevitable crossover began, with people on all platforms choosing from the languages based on their past knowledge and their company’s policy.
Others jumped on the bandwagon, and ColdFusion was introduced as a third party solution. It was not really a programming language – it’s more a markup language like HTML is. This made it easier for non-programmers to add dynamic ability to their code without having to deal with advanced concepts and features. There are many ColdFusion development tools to do the programming for the user, as well.
Just as with the Mac/PC wars, there will always be people who strongly defend their chosen language choice as “the best”. But really, just about anything you can do in one language, you can do in the others. It all comes down to which you are personally most comfortable with, and which you have backup support on at your company, to ensure the website stays as stable as possible.
Any language can be coded poorly – and create slow, memory-hogging websites. Likewise, any language can be coded well – creating fast, efficient, dynamic sites that do incredible things. It is always the responsibility of the programmer to take the courses, learn the language as well as possible, and create code that shines.
I, of course, prefer ASP :).