If you've been cruising the net, looking for the latest and greatest things, you often come across vaporware technologies, and promises that are made and broken. You might find yourself imagining things, like over-hyped proprietary products coming down the pike, where the choices had been open in the past.
The world has changed overnight, in case you've blinked.
If you came late to the PHP Party, don't worry--there's plenty of reasons to celebrate. PHP is an Open Source server-side scripting language for creating dynamic web content, in place on some 1.5 million Web sites worldwide--and growing. There's a new version of PHP out, version 4.0. I just got around to downloading and giving it a whirl.
PHP 4.0 is not a trivial upgrade to an existing product--it's a total re-write with backward compatibility to the 3.x technology. That's actually quite a feat, because they kept the compatibility with version 3.x while making some radical changes under the hood. First and foremost, the 3.x product was really an interpreted language, each line of code evaluated during the execution of the server side page.
With version 4.0, the functional difference is actually quite staggering--the server actually compiles the code on the fly, and then executes the code, with dramatic improvements in speed, as you can guess.
There's actually more to it than this. Zend Technologies now provides an optimizer (not a free product, by the way--they have to make a living somehow) for people who have created massive PHP projects and want to create more efficient code bases.
And if that's not enough, PHP has been separated completely from Apache, so that the language itself can be embedded into other products that need scripting languages. This is absolutely awesome news, as far as I'm concerned. Possibly even bigger news than PHP 4.0 itself.
I've come to enjoy coding in PHP a lot. I've found its syntax is very consistent and its ability to hide gory programming details to be extremely pleasant. I can only hope that the open source projects that lack a good scripting language will take this ball and run with it. Imagine all of your favorite databases running the same scripting language, one that's pretty easy to learn and fairly well documented. The possibilities are endless.