Why I am writing this post?
I’m sure many will see this post and say, “well I disagree. I am a super programmer and because I understand low level C and can use notepad ++ to write interpreted programming (PHP for example).. well that’s what makes me awesome and a programmer”. I’m going to let those self absorbed ID10T’s in on a little secret… Your W-R-O-N-G.
Efficiency
I had been working on a project over the past few months that required me to use Visual Studio very heavily. During this time, I had not used any of the lesser IDEs such as Dreamweaver or Notepad++. In this time, I found myself using the superior Intellisense and precompiling of code that Visual Studio provides in real time error detection and auto completion of variables, objects etc..
Recently, being team lead on another project that is PHP/MySQL based, we started again using Notepad++ and although I can appreciate the enhancements that PHP has made over the years and what being cross OS compatible brings to the table (so is Java by the way.. just sayin..), I have to admit that from an efficiency standpoint, Visual Studio and .NET wins in every way hands down. What would normally take 2 weeks to complete in the ASP.NET MVC took 3 1/2 weeks to complete in PHP. This set back was not from lack of HTML or PHP knowledge, as I have been using PHP for many years, but more from a tools available standpoint.
Compatibility
While PHP does have ldap classes that you can call things like Active Directory, it is very clunky and similar to it’s OOP support seems forced in.. almost like an after thought, which if you think about it, really was. Good thing Concatenation has the ‘.’, we can’t use dot notation for object properties, we have to use a stupid arrow $this->StupidObject;.
Well PHP is Free and open sourced … so there!!
Now, while I can appreciate that there are arguments for the fact that PHP is free and open sourced for changes and all that, I have several answers to that as well. First, MVC is open sourced as well. It is written by Microsoft, but the code has been opened for anyone to alter at any time. As far as free, you get what you pay for. Although there are frameworks like “CakePHP’” out there, there is no standard framework that is part of an IDE’s knowledgebase to be utilized for cleaner and more efficiently written code.
Conclusion
I wanted to share my personal experience in the hopes of explaining a little more about what PHP lacks and that people really need to think about the overall cost that comes with the various language decisions that get made in business. PHP, although “free” in the sense of out of pocket expense, you also have to think about the 70K+ engineers you are paying and the extra 1-2 weeks it will take on each project to complete. Might be even more if it is a large project.
I think that you’re right on the money insofar as PHP being an inferior language. I think that learning low level languages like C or C++ and a little x86 assembly is valuable to any programmer, even if they do not end up as a full time low-level developer. Additionally, I think that Vim or Emacs or Notepad++ are all great programming environments if someone is trying to learn a language as it really forces you to think about what you’re doing. Obviously an IDE like MS VS is going to be great when you’re a competent eveloper, but every tool has its purpose.
Thanks man.. I’m glad to hear someone have the same view points that I do in this. Starting with something like PHP unfortunately keeps you from learning the meat of programming and what is actually happening when you aren’t looking. BTW, started looking through your site and very nice articles!
Lol, I think the only fans of PHP you’ll find are people who learned to program using PHP and only professionally use PHP. I spent time learning it, but I have taken it off of my resume. I would never want to work with it haha