Earlier quoted context omitted.
"""Facebook, Wikipedia, Wordpress, all of them don't have a good PHP codebase. In fact, people despise them.""" You've seen Facebook's codebase? I doubt it. And when you show me a blogging platform more successful than Wordpress, then we will talk. Who exactly despises FB, Wikipedia or Wordpress? Not the users. And while I can't talk about Wikipedia and FB (haven't seen the source), neither do Wordpress developers (i…
Facebook, Aditya Agarwal, presentation: http://www.infoq.com/presentations/Facebook-Software-Stack Judge for yourself (you probably have to interpret what he said there since obviously he doesn't say up-front "it sucks" but the words he chose describe the situation). Maybe despise is a strong word. But what's your point? successful project so they must have good codebase or something? My original post was that "those…
I never implied that "because they are successful, they must have a good codebase". I actually made a different point, essentially asking in return:
What's a "good code base"?
Wordpress's, for example, is good at what it does, not in some idealistic theoretical way. Not only it resulted in a successful product (actually two: wordpress + wordpress.com), but it also has been proven stable (heard often of WP crashing mysteriously for any other reason that too much load and no caching which is totally reasonable?) and flexible to build upon (wordpress constantly adds features to its core and tons of developers add third-party add-ons).
I'd argue that "good" code base = flexible, extensible, successful, liked by IT'S developers. WP has had all of those. So, for THEIR PURPOSES and to THEIR DEVS, it is a good codebase.
On the other hand you implied that FB, WP, Wiki's code is bad. I tried to show that WP's at least is far from bad by MANY metrics. What are your metrics? Besides, say, proof by rigorous handwaving?
As for the FB presentation, he never says despise or sucks, as you mention. It's a classic presentation of some trade-offs. You'd have a selection of those even if you coded in Haskell or whatever.