Likes
I started using PHP after I did about 200,000 lines of Perl code during an upgrade of a system that I supported at a large company. We translated the C++ services over in about 9 months. It was the easiest and most stable conversion I’d ever made. So when I started using PHP, it was like a natural progression for the things I was asked to do.
Server Side Scripting
When I started writing dynamic pages, I had just started working for a company that had it integrated into their programming model. I liked how it was so easy to make dynamic web pages. It was like waving a wand over the user’s input and getting the exact thing that they wanted. It was also a plus for that job that I got to implement AJAX for some client side magic, but this post is about PHP.
PHP code works seamlessly into the HTML. I’m sure that there are many other languages out there that do this too, but this was the first time I’d ever got to pull data out a database and format it into a page. I liken it to drawing a picture from numbers.
It’s Free
It’s nice to have a language that you can use and not pay a dime for. Well except for the time you’ve put into installing into the server. I’m not talking about the last time you installed PHP. You knew how to that time. It’s the other 50 times before that you installed and suffered trying to get it right. It’s easier now. The installer writers started listening to the users and made the installs better.
Not Just One Solution
I like a language that lets the programmer make their own solutions. A program should be an expression of a programmer’s experience and creativity, not of those that created the language. Sure, I use code that I find on the internet but only grab a starting block on which I can build a eloquent solution.
Dislikes
Every languages has disadvantages. PHP is no exception.
Debugging
A flaw that both Perl and PHP had for me was a lack of debugging tools that were available. The guys who introduced it to me were serious gearheads. I’m talking UNIX prompt kind of gearheads. The kind that are talked about with hushed voices back in college because they knew all the key commands to VI. Well these guys did their debugging old school. Memory dumps, printf, and log files. No pretty IDE with pop up windows to tell you what your variables were doing.
