test.ical.ly | getting the web by the balls

Jun/11

21

PHP 5.4, major/minor upgrades, backwards compatibility and the dependency spiral

Yesterday I wrote about PHP 5.4, and possible turns for future major versions for Doctrine and Symfony. That post got quite some attention. This topic of releases, dependencies and backwards compatibility always seems to strike a nerve.

But as things move forward how can there be such a thing as release stability?

First of all I think it’s important to remind oneself that progress is something positive.

Who can honestly argue against PHPs feature such as namespaces which came with 5.3 or proper OO that came earlier with the 5.0 branch?

Even today many developers seem keen to get their hands on traits with 5.4 and who could blame them?

PHP 5.4 – as I learned from Benjamin yesterday – is expected to be released in about half a year. That would be about 2 1/2 years after the release of 5.3!

It would seem only natural that frameworks, libraries and other things written in PHP would eventually move to this new version. Otherwise what’s the point of progress.

But what if that forces their users to upgrade when they may not be able to? Just think about hosting companies who have to carefully upgrade whole infrastructures or big companies that host many websites. As far as I know PHP 5.4 won’t be breaking BC so an upgrade should be easy and safe but for any big company change is also a risk best avoided until the technological benefit ourruns the disadvantages of outdating.

I expect that the major PHP projects will start experiments with the new PHP version and that they will leverage its potential as soon as possible in form of a new major or minor release that will be PHP 5.4 only.

I also expect that the current versions running on PHP 5.3 will be maintained further it can be assumed that the majority of users has access to 5.4.

Think back to symfony 1.4 which is still supported until next year (although not everybody seem to fully appreciate this..) !

Only staying with the then older versions will come with the tradeoff of not participating of improvements. But then what else is new?

Progress is not something that comes with no cost. Progress is always an investment. You have to move to keep up.

· ·



  • m

    PHP 5.4 will wreck havoc on hosting companies as the most deprecated things like magic_quotes are removed from it. I don’t expect many hosting companies to upgrade to it anytime soon.

  • http://www.weirdog.com Olivier Laviale

    This argument about hosting companies is really about lazyness. My hosting company provides three different version of PHP : 4.x, 5.x and 5.3.x. All I have to do to use one or the other is to define a PHP_VERSION variable in my .htaccess

    But most hosting companies don’t provide this nice feature and wait for Debian to update, which took forever (like 5 years) to just from 5.2.6 to 5.3.3

  • http://test.ical.ly Christian

    @m, @Olivier well a lot of hosters (especially mass hosters) provide only one more or less up to date version to save on their own resources as this reduces complexity that otherwise needs to be managed. And they have to consider carefully whether and upgrade could break their paying (!) clients’ code. The laziness to a big part is on these customers sides. This was the reason for the slow shift from 3.x to 4.x to 5.x and it will happen time and time again only naturally..

  • Pingback: abcphp.com

  • Hector

    The first link is broken due to the domain change. I could get to it by changing test.ical.ly part to http://www.testically.org but you might want to change it.

  • http://test.ical.ly Christian

    @Hector cheers for that. fixed the link and the image now.

  • http://www.facebook.com/letha.annie.catron Letha Catron

    My only question is is the clock in the picture real? and if so, where was it purchased? I really want it and the others I’ve seen online are different variations of yours.

<<

>>

Theme Design by devolux.nh2.me