Pure Progress
The other day I was working on a programming project in my free time, and I was using Ruby. I had actually started out using MySQL and Ruby, but quickly determined that I’d probably be better off not using a proper database since my query types weren’t so far ranging. Later on, I found that the performance of my Ruby code just wasn’t there, and, really, the program was very straightforward, so I ended up re-writing a bunch of little helper programs in C. When all was said and done, I had gone from using Ruby w/ MySQL to using C w/ binary data. Hooray for progress. This was all a little frustrating, and, for some reason, it made me feel justified that I usually use PHP for the little web programming that I do.
The mental connection was because PHP could be viewed as the C of the web. It’s fast, it’s ubiquitous, it’s old, and it’s even got some vaguely familiar syntax in places for the C programmer. It just so happened that this strange train of thought was immediately followed by me reading this summary from the Zend/PHP conference. Let me cite the relevant passage, a quote from a plenary Q&A:
Ruby is appropriate for computer-science-loving people who have a puristic [sic] attitude.
Ugh.
In an earlier post, I expressed doubts about the outcome of Microsoft’s recent push into new programming language territory. In light of something like this statement from Zend, that seems unfair of me, so let me be clear: Whatever the outcome, the fact that Microsoft is endeavouring to bring new programming techniques and technologies to their customers is not only good, it is necessary. (Note: “new” as in newly available on the platform.) Will lambda expressions make C# 3.0 a language only for purists? I think not. Positioning yourself as the VB of the web makes good sense, but not if you’re doing so as an argument against progress.