Lately I've been noticing a lot of cases where the successor to a given instance of web technology (specifically within the so-called
"LAMP" stack of Linux, Apache, MySQL, and PHP/Perl/Python) isn't necessarily the next version of that instance, but rather something different. "Say what?" Let me explain with the specifics:
Web Servers: The
Apache web server is what most right-thinking people have been using for the past decade. Version 1.3 is common, stable, and reliable, but the Apache people have been pushing version 2.0, which has taken a while to become stable and reliable (and therefore common). I had thought that I'd eventually decide that 2.0 (or 2.1) has become good enough to switch to. Instead, I'm starting to think that
LightTPD will reach that point first. Of course, a big thing holding it back is its barely-pronouncable name, so people have started calling it "lighty".
Programming Languages: The dominant web programming language these days is
PHP, with PHP 4 currently the commonly used stable version, and PHP 5 the improved version that many people are gradually switching to. But PHP is an ugly monstrosity that encourages poor programming, and few experienced programmers really like it. Meanwhile,
Perl is a language that's much-beloved among many, but others find it ugly. Perl 5 has long been stable, introducing features incrementally (currently at version 5.8), but some years ago major development turned toward Perl 6 and big changes; Perl 6 has taken forever to produce end-user-visible results, and apparently some Perl 6 features are now supposed to be making their way into Perl 5. But now the
Ruby programming language (which began in Japan in the early 90s as sort of a more object-oriented Perl) is starting to become popular among both PHP and Perl programmers, especially (in the context of web programming) with the
Ruby On Rails framework. At this point I think Ruby (On Rails) is likely to become more popular than either PHP 5 or Perl 6. At one point
Python aspired to that position, but Ruby does it all better.
Finally, one I'm not yet sure about, which doesn't quite fit the same pattern as the rest....
Database Servers:
MySQL has become the dominant open-source web database server by starting with speed and ease-of-use, then gradually adding better real-world database features, most visibly in the latest major version, MySQL 5.0. But many people are still running the stable version 4.1 or even 4.0. Recently the 800-pound gorilla of commercial databases,
Oracle, bought up the companies that provide the storage engine technology that give MySQL its major reliability features, leaving in doubt MySQL's future commercial viability (and therefore future development of the open-source side). Meanwhile,
PostgreSQL has had those real-world database features forever, but has historically been slower at improving its speed and ease-of-use, so it's taken longer to catch on in the web world, and it isn't entirely compatible with MySQL. Some have talked about the possibility of porting PostgreSQL's storage engine over to MySQL, but I think the more likely scenario is
PostgreSQL gaining MySQL compatibility so that PostgreSQL can directly replace MySQL.
I suppose for completeness I'd talk about migrating from
Linux 2.4 to
FreeBSD rather than to Linux 2.6, but I haven't seen much sign of that. Rather, I get the impression that FreeBSD's long-awaited version 5 release seems to have been seen as a bit of a disappointment, while FreeBSD admins stick with the ever-stable FreeBSD 4, and the Linux 2.4 admins unhappy with Linux 2.6 are likely to stay with 2.4 for a while.