Tim Bray's keynote, misinterpreted? No, really not.
Posted by Pierre in
PHP
Saturday, November 11. 2006
"There are a lot of things that go into maintainability, but I suggest that the biggies are object-orientation, MVC architecture, code readability, and code size (less is more, a lot more).
This is PHP’ Achilles’ heel, of course. Yes, it is possible to write clean, object-oriented, modular, MVC-style PHP applications. But most people don’t; the majority of apps that I’ve seen have spaghetti PHP code wrapped around spaghetti SQL embedded in spaghetti HTML. Also, a lot of the people who really understand O-O and MVC and maintainability would rather work in Java or Rails."
From a person "working at Sun Microsystems", I would not expect a better description of PHP developers but I have to admit that this guy is courageous. Going to the PHP International Conference to tell them that PHP developers (for the waste majority) are incompetent and not able to write clean code is not what I would do :)
By the way Tim, why Sun has suddenly so much interest in PHP? Plans to educate us? ;)
And to conclude:
"Java is a much richer system and assumes you’re smart enough"
If you are a dumb developer and never put your back on a school chair, PHP is for you.
I go back cooking, I like them "al dente".
ps: yes, I am in a rant mood
NY - #1 - 2006-11-11 03:30 - (Reply)
Well, you know, he does have a point…
PHP is easy to develop with, hence more people code in PHP, hence the average PHP coder (or code) is less competent than the average RoR developer.
In a way this is like speaking English. The language is useful enough that many people bother to learn it at some level – as a result, the worldwide average English speaker is probably not very eloquent. In contrast, I’d say the average Latin speaker is pretty likely to have a at least a Master’s degree.
Yet, we’re writing our blogs and comments in English, don’t we? ![]()
Thorsten - #2 - 2006-11-11 09:51 - (Reply)
Unfortunately Tim Bray is right – in my opinion. Many, many PHP projects (even the big ones) have a code quality that really makes me sick. Sure, there are exceptions but most PHP developers are writing bad and ugly code. The funny thing on the other side ist that this code works. ![]()
Pierre - #3 - 2006-11-11 14:13 - (Reply)
"Yet, we’re writing our blogs and comments in English, don’t we? :)"
Frenglish with a touch of german here ;)
"Well, you know, he does have a point…"
I do not see a point, I see someone making a generalization out of his experiences. Do I say that all Java developers cannot write good code and keep rewrite (oops, sorry, refactor) their apps once a year?
I try to keep an eye on other applications and tools, no matter the language they used. There is bad codes everywhere and the percentage of bad codes is not higher in Java than Ruby or PHP
@Thorsten You told me that you like my code, happyness++ ;)
Aaron - #4 - 2006-11-12 10:15 - (Reply)
The thing about PHP is that it’s NOT about beautiful code, it has always been about getting the job done.
Before PHP it was Perl. Computer Science people just love ragging on those functional programming languages which are letting highschool kids and dentists create applications which perform better are quicker to develop in and scale better than their "Ivory tower" java applications.
@Thorsten: code quality is overrated – and in the eye of the beholder. It was good meeting you last week ![]()
Thorsten - #5 - 2006-11-12 10:59 - (Reply)
@Aaron: If the code is bad, no one wants to contribute to a project. And IMHO code contribution is one of the big advantages of open source software. I hope we have more time to talk and discuss next time!
Aaron - #6 - 2006-11-12 11:27 - (Reply)
@Thorsten: I’m not promoting bad code, just saying that I will always go the route of functionality vs. purity when it comes to creating solutions in PHP. Many people may look at this code and say that it is a distaster from a "martin-fowler-says" point of view. I have seen people talk about drupal code like this and say that it is a nightmare to work with… it is a procedural codebase with a rather special plugin/module system. However the development base is huge, the product is fast and scalable dispite (or maybe because of) the simplistic application design and procedural codebase.
Aaron - #7 - 2006-11-12 11:32 - (Reply)
Pierre, I love this comment from Tim Bray:
"And .NET is’t open-source, so why would you use it?"
seeing the until-recent closed-source nature of Java ![]()


