ChipmunkNinja
Ninjas are deadly. Chipmunk Ninjas are just weird.
About this blog
Marc Travels
Marc on Twitter
JustLooking on Twitter

Marc Wandschneider is a professional software developer with well over fifteen years of industry experience (yes, he really is that old). He travels the globe working on interesting projects and gives talks at conferences and trade shows whenever possible.

My Publications:

My book, "Core Web Application Programming with PHP and MySQL" is now available everywhere, including Amazon.com

My "PHP and MySQL LiveLessons" DVD Series has just been published by Prentice-Hall, and can be purchased on Amazon, through Informit, or Safari


ABCHKMPRaRoSTVW
xxxxx-xxxxxxxxx
May 29, 2008 | 04:26:16
Why PHP Sucks (Hint: It doesn't)
By marcwan

There seem to be these periodic flare-ups in the blogosphere and community site circuit where some poor programming language ends up being skewered thoroughly by roving gangs of self-righteous programmers. One or two articles will suddenly receive wide circulation listing arguments why language X is clearly a horrible choice for any “real programmer”, and then examples to prove this will inevitably be given: "false" equals true, (++*p1)++[--x] is actually a valid expression, or Begin and End are used instead of { and }. The couple of articles defending the language that inevitably appear will receive long streams of comments vilifying the author for being an idiot, or even worse, a hack. The sad realty of all the hullabaloo, however, is that all of this is ultimately pointless, and typically based on some silly assumptions.

The first is that somehow some languages are “better” than others. If your language doesn’t fully support the lambda calculus, or some other Feature X, it must not be worth using goes the thinking. As I’ve programmed in various capacities and looked at hundreds of thousands of lines of code over the years, I’ve never once thought to myself how the task would have been easier if that supposed missing feature were truly there. Ah, reply the nay-sayers, you only think that way because you have never known Feature X and how it could help. To which one must reply: hogwash. Computers, open source, and the Internet definitely all have one thing in common: brutal application of free market supply and demand. If having Feature X really would make my web application development significantly easier, somebody would have already written a language or environment that used it.

Another argument against the demonised language of the week has it that some people are “real programmers”, while everybody else is just a hack. Back when I worked on the Visual Basic products at Microsoft in the 1990s, surprising numbers of us on the team developing the language (myself included) would proudly declare that we worked on the product, but would never actually admit to using it, because it wasn’t a real language, and real programmers, with degrees in computer science from prestigious universities, wouldn’t dare to stoop to that level.

There are two major problems with this argument. First and foremost, Visual Basic is actually a perfectly fine language. For earlier versions, you could spend about an hour and write a fun little game that you could then send around in email. There would be your program EXE File of about 20-30k, and a 60k Visual Basic runtime. That’s it. Something similar in C would take at least a weekend, and not be significantly smaller. On a contract in 2003, I had to write some large and non-trivial samples in a number of different languages, and I recall VB as being not particularly annoying to use.

The second problem with this argument is the more dangerous of the two: that somehow a Computer Science graduate, or a “real” programmer who uses a “real language” is better than one who does not. Stop and take a few minutes to look at the history of the websites that you use every day. Apart from places like Google, where the underlying technology was a pretty serious piece of code right from day one, most if the sites you are using were not written by mega-super-awesome programmers, but people who had an idea, were extremely motivated, and had a combination of skills that were good enough and a programming environment compatible with those skills. Two of the better programmers I have ever met actually never took any Computer Science classes—one can write code so insanely complex but workable that your head will goggle, and the other continues to put together very successful web applications on sheer will (and Google search) alone.

Indeed, I’ve typically found the most “skilled and real” computer programmers I know don’t actually adapt to the web that well, as they (we) tend to bog down in implementation details and infrastructure and “doing things right”. Just writing code, not worrying about every single boundary condition and cranking things out and pushing out releases as fast as humanly possible feels alien. Yet, the fact is: the Internet isn’t “things done right”. It’s things done fast enough and good enough for the masses.

And so, while we’re sitting here arguing about whether PHP sucks, or whether Ruby truly is the best language in the history of mankind, the real web entrepreneurs are out there pounding away in Tcl/Tk, Perl, or COBOL, and making the millions.

The lesson? Shut up and code.

Comments (6) Add Comment | Tags: php sucks language debate
Programming is simply a child of curiosity
Posted By: aurora72 May 29, 2008 14:28:17
Well, I still remember my first program I wrote in 1994-1995 semester, which simulated a velocity vs time graph of an automobile using VB4.0 Then, the VB offered as much functionality as possible on the desktop . Then we had also the classic ASP sites all around which are still being used and among them some popular too.

Well I have spent a lot of time indulged in VB and cannot deny its virtues. It served as the initial igniter
but everything has its moments and its lifetime so is VB.

Now I enjoy different programming languages, not constrained by the limitations of mainstream languages like it. That 's simply a matter of curiosity and got a lot to do with self-development and it's up to the individual...

Lately I have noticed a new kind of virus, which spreaded thru the USB-Flash or HD Drives and after a short inspection I've noticed that it was written in VB! I've smiled remembering my days in VB. Someone who hasn't changed the programming language had tried and succeded writing a good virus program exclusively in VB.
That was cool. And, that was also the pleasure in colorfulness and multi-paradigm of the world. Everyone's freedom to choose what he/she likes to choose. That's it.

Last word on the subject: Steve McConnell was saying in one of his articles, which I can summarize as follows: "It 's not the language, it's the programmer that matters" That is all.
Posted By: kertz Jun 01, 2008 04:07:01
That was not the point here Brandon... Just take a look around why are people fighting to show their language is better? Especially since RoR hit the scene, there has been people who adapted it coming to conclusions that Ruby is better than PHP, Python and Java (they are the most hunted languages by Ruby freaks!). I'm sure about one thing Ruby is a powerful language but they are not going anywhere, their community is desperately trying to prove things by words not codes! While others build applications and silently prove things.
Add a Comment

Title:

Name:

URL:

Comment:

Copyright © 2005-2008 Marc Wandschneider All Rights Reserved.