From: Chris Pine Date: 2003-05-06T00:32:53+09:00 Subject: Re: Why is PHP so popular? What can we learn from the PHP camp? ----- Original Message ----- From: "Rich" Visit: http://www.php.net/manual/en/ for starters. Ruby is no where near that level of 'extra' functionality. Sure, it could be done.. but it has yet to be done. ---------------------------- Amen! I have a good friend who would not even consider switching from PHP to Ruby, and this was his reason. Sure, we have the Pickaxe (which is wonderful), but that's not the point: Look at the *range* of modules included in the standard distribution. In Ruby there may be a way to do X (or several), mostly completed, partially documented, found in the RAA... but in PHP there is a *canonical* way to do X, supported and documented as thoroughly as String#reverse. In other words, there's a lot more *in* the language, supported, documented, and with the PHP stamp-of-approval. (Which, considering the repeated gaping security holes in PHP, doesn't mean much to me! It is clearly an inferior language in terms of design, but in the PHP crowd I don't think that matters much.) Which hints to the other reason PHP is so popular: Marketing and cost. Why is Taco Bell more popular than El Palenque (on SE 17th; check it out, Phil)? Marketing and cost. (Since both Ruby and PHP are free, of course, "cost" in that sense refers to difficulty of installation and learning curve.) PHP was sold as a language for html-people... a programming language for non-programmers. In fact, your old html pages already worked just fine as "valid programs"! Taco Bell doesn't have to be good. It just has to be OK, cheap, and easy. I think the "Taco Bell" argument is why it became popular, and the "big manual" argument is why people stick with it. (Well, that and the fact that a lot of people stick with their first languages.) It's surprising to me that "real" programmers would use PHP, though, even if they have other scripting languages to use. However, it really doesn't make any difference to me how popular Taco Bell is; It doesn't make El Palenque any worse. Perhaps the difference is that I don't think anyone would disagree with me that El Palenque's food tastes better... especially people who had never gone there. (I presume none of you have ever been there, but you believe me that it tastes better, don't you?) My Mexican food snobbery carries a certain weight, I suppose, and no one who eats at Taco Bell is going to be snobby about *their* food. I think everyone realizes that what Taco Bell does well is something other than making the best Mexican food in the city, and few (if any) would claim it to be the highest-quality Mexican food around. I guess the problem is that most programmers see programming languages as more like religions than Mexican food. If I told you I was writing a new programming language, wouldn't you have at least a bit of scepticism, perhaps even contempt? "Why another?" "Do you really think it will be popular?" And so on. But what if I told you I was opening a new Mexican restaurant? "When does it open? Are you going to have free chips and salsa?" Anyway, happy Cinco de Mayo! ;) Chris