IBM Backs PHP for Web Development
Christopher Reimer writes "C|Net is reporting that IBM will be getting behind the open-source language PHP for its WebSphere server software and tools. From the article: 'Big Blue's public commitment to PHP is significant because the company has the technical and marketing resources to accelerate usage of the open-source product.'" Evidently PHP is indeed becoming more popular.
Anyone know what market share Websphere really has in relation to say... Apache or IIS. I have seen a number of IBM shops, none of them use Websphere. Is it really just a coincidence.
I'd say, with zope, webware, quixote, twisted and many many others, there's a bit too much in the python web world. What it lacks is a "definitive" web framework.
Of course, for me the answer it's simple (zope), but it's not an easy solution and it's more involved. Zope is an application server: you get an OO data storage, an API to develop applications for it, catalog services (search), portal toolkit - CMF (membership, workflow, etc), and even a full portal system, with plone.
Php has the advantage of being simple to deploy and implement.
I'll do the stupid thing first and then you shy people follow...
The advantage PHP has is simple: there are huge numbers of C/C++ coders who would find it easier to learn and use PHP than Perl/CGI, Java or ASP.Net.
And its lack of structure is attractive to many as many sites simple do not have a formal object-based structure.
It's simple, and it works. And that's what mainly matters anymore, especially with tightening budgets for web sites.
Except there is a standard library. It might not be complete enough for you (and some bits aren't compiled by default), but it's definitely a standard group of functions included in the distribution.
The documentation I just linked to is probably one of the biggest reasons for PHP's success. It's comprehensive, provides a good overview, and lets you easily dip in to find what you need. It makes it easy for amateurs to write simple PHP. (Admittedly with a whole load of coding errors, but they can improve.)
I'd also hardly say that no visual cue for what type a variable is represents a serious issue. It wasn't mentioned in that article you linked to, either. What makes it an issue is the easy and automatic typecasting, and lack of a decent structure in most php.
I'd dispute your statement that these things are quantifiable. It really is taste and, more importantly, experience. Many people can read LISP, for instance. To them a LISP program can be read as easily as, say, Python can be read by most traditional programmers. The best you can do is say what the average programmer is likely to find helpful, not necessarily which features are inherently helpful.
- "I'll probably get modded down for this."
After moving away from Java, I couldn't be more pleased with the flexibility in PHP for web development and even shell script replacement.
It's concise (none of this System.out.println.pretty.please() funny business), the documentation is stellar, it plays nice with many different technologies, and I don't have to objectify and type-cast anything I don't want to. PHP 5 has all the object love and forced typing I need - and the great part about it is that its there if I need it. PHP also has a extension repository PEAR, and a slick templating engine, Smarty.
Sure, it 'lends itself to coding flaws', but it also lends itself to flexible web development and very quick development cycles.
Just because you put your code monkeys in front of Visual Studio or Eclipse *does not make the code any cleaner.* You can't force people to write clean code (which IMHO is an art). More 'structured' languages might even cause dummies to write even more workaround code. And while OOP is really great, I've seen folks who objectify projects into oblivion.
Don't buy in on broad-generalizations like the parent and check PHP out. PHP is on the up, and IBM (along with many others) are noticing.
I think many auto manufacturers will gladly take credit for wreckless driving.
every time PHP (or mysql) comes up, the trolls come out from under their rocks and whine how "php sux","mysql sux" and "java rulez","postgresql rulez" -- ranting about how you'd have to be a complete fuckwit to use php or mysql. they rant about how mysql isnt a "true relational db" or how php isn't "truly oo" blabla yaddayadda, etc. etc. and how postgresql's stored procedures will bring world peace and end world hunger.
but they are always completely missing the point.
instead of ranting about why postgresql and java are "better" than mysql or php, they should be focusing on why php and mysql are more widely used than postgresql and java.
if they focused on those issues instead of language elitism and semantic perfection, then maybe java and postgresql would be more popular.
I've written applications in both - and here's a difference no one talks about. When you open up MS's ASP environment, all that great GUI stuff is there and it's pretty easy to get going. Then as often happens in a development environment, you need a quick script to munge a long list of field names. Is ASP your first choice? It wasn't mine, because I couldn't find a way to get input into/out of it from the command line. So I whipped up a temporary web page with a text box to do it. More overhead than I wanted to spend for what should be a 2 minute job given an editor with macro key abilities.
Then a couple of years later I built my first app in PHP. The first thing I noticed was how easy it was to script from the command line. Since I'm not a perl junkie, it was real useful for small scripting jobs. I'd use a shell language for this, but fankly, I'd rather poke a fork in my eyes.
The next thing I noticed in PHP was I needed an modern editor (the free download doesn't come with an IDE), so I bought one from zend.com for a couple of hundred bucks. It's getting better, but like ASP, it too has no macro key ability (maybe I'm wrong and someone will tell me?), and other nits I'd pick given the chance.
But the big discovery in PHP was that all my ASP data-type problems magically went away. Hours and freaking hours I spent debugging situations where an int was returned from a DLL and ASP string'ed it, or vice versa. There were byref/byval issues I recall as well. We had to build test local harnesses for all our middle tier ASP components because these problems rendered ASP too lame for a debugging platform.
But my original point is really that PHP is useful along a continium of the problem space. Need a quick script? Need a nightly job that cleans up your app? Need web pages? PHP works well for all. ASP, from my experience, hits one for three.
- The Kessel run is for nerf herders. I can circumnavigate the entire Central Finite Curve in a lot less than 12 parse