FOSDEM '08 is a free and non-commercial event organised by the community, for the community. Its goal is to provide Free and Open Source developers a place to meet.


Interview: Andrei Zmievski

Andrei Zmievski will enlighten the FOSDEM 2008 audience about PHP6 and its Unicode and internationalization features.

Your talk at FOSDEM 2008 will revolve around Unicode and internationalization support in PHP6. Why exactly is that?

I hope to convey how important it is to develop new sites and applications with global audience in mind and how PHP can help with this development. I expect only an open mind from the attendees.

PHP5 has a bit of a slow uptake problem: users are not switching to it fast enough. Do you think PHP6 could bring enough benefits to accelerate upgrades?

People switch to new versions when they feel that the benefits of the upgrade overweigh the drawbacks of migration. PHP 6 is no different in this matter. If people need good Unicode support, they will start adopting PHP 6, so our goal is to educate people and make them aware of what good Unicode support means for them.

You are involved in the development of PHP-GTK. What is the status of that project?

PHP-GTK 2 is very close to final release. It has been in beta for some time, and so far there have not been any major problems with it. I hope that we can make the release within a month or two. We also now have a way to support new Gtk+ 2.x versions without much manual work, so hopefully the future releases will be more frequent. There are still some big and very cool pieces that we'd like to support, like the ability to implement native widgets in PHP, support for Gnome objects, and much more. These have to come after the version 2 release though.

Do you feel that 'web development world' PHP benefit form the stuff that's happening around PHP-GTK?

I believe so, and in fact it already has. When I started working on PHP-GTK, PHP was at version 4, and I had to push its object-oriented support to the limit, frequently running into problems with implementation. I had long talks with Zend folks about how to rewrite OO support in a better way and they did listen. So PHP 5 owes a lot of its OO features (internal and external) to PHP-GTK, I'd like to think.

So do you think PHP will become a popular language for non-web development work?

Yes, I hope so. I think it already made some progress. Look at PHP-GTK, for example - there are many professional applications written in it, from point-of-sale systems to health records management. PHP CLI (command line interface) is also gaining ground for scripts, daemons, and other such applications. One problem though is that because PHP was built around processing short-lived requests, there are still issues with it running long-lived scripts, but hopefully the new garbage collection will solve this issue completely.

In which direction is PHP evolving as a language?

PHP is always evolving towards what its users need it to be. It's really a glue language, in a sense that it provides a language and support structure for a bunch of technologies, from LDAP to Web Services to database access. So when people ask, where will PHP be 3 years from now, it's a bit like asking, where will Web be 3 years from now? I don't know, but I'm sure PHP is in the midst of it somewhere.

Do you have any comments about the Open-Sourcing of the Zend Framework?

Not much to say except that I think it's a good move.

Smarty, one of your other projects, is quite popular and is enjoyed by many PHP enthusiasts for its simplicity. However not all PHP coders know the benefits of a templating framework. What is, to you, the advantage that Smarty can deliver?

Smarty is a templating engine, not a framework per se, but it can serve as a View part of an MVC framework (and I think it has actually). Templating works well in larger teams, where people who have to work on presentation layer (templates) are not necessarily the same as the developers. The same can be done with straight PHP of course, since PHP is a templating language, in a sense, but I think Smarty (and other template engines) make it a bit easier for those who are not developers.