I received an email recently from a designer decided to step into programming and go dynamic to speed things up afterwards. He was asking me to suggest a language that he would learn.
Considering the fact that I'm a PHP guy my answer was easy from that point but I've decided to study things a little more since I don't carry such a big crown in the programming world and I still consider myself a starter. Why not, let's see what we can read out there about the two most used programming languages: PHP and ASP.
PHP (an recursive acronym for PHP Hypertext Processor)
Speed - everything that runs in this language uses it's own memory space and does not require connections with other objects in different processes. Speed again because the code seems to be smaller.
Price - PHP uses MySql which is free, uses Apache which is free, runs on Windows, Unix, Solaris or Linux which again can be free to install.
Functionality - it's bundled with more functionality than ASP has to offer such as FTP, data compression, encryption MD5, file uploading, XML or email which is so important. I've never imagined myself using third party software to make "emailing" possible.
Case insensitive functions - I don't find it as a big problem but it seems to be annoying for some programmers.
Error handling - every programmer has to learn how to implement the error handling which can very often lead to other problems just because we're not talking about standards...which can also be a good thing if we're thinking a little further...we need inventions and new versions.
ASP (Active server pages)
Easy to learn - ASP comes from the very well known and used language, Visual Basic, and it's very easy to learn and incorporate.
Speed - ASP uses a COM based architecture and when ever a program tries to connect to a database or he calls a COM object there is an overhead on the server, All this COM overhead adds up and slows things down.
Price - ASP runs on the IIS Server (Internet Information Server) which requires Windows N.T/2000/2003 Servers and I hate to be limited.
Third party components - On ASP, if you need to upload files for example, you will need a third party sofware such as ASPuplod or if you want to implement email you will need another component which is frustrating.
Cross Platform compatablily - You're stuck on Windows baby.
PHP is more secure, faster, more functional and, most of all, free. While this is my conclusion I will welcome any ASP fan to comment.