Ce document est aussi disponible en français
PHP-GTK is now stable, and is bringing a brand new use to PHP. Meeting its author : Andrei Zmievski.
Damien :PHP has always been a web langage. Why did you come up with this new orientation ?
Andrei : Well, I've always been interested in GUI applications, and Gtk+ seemed like a really good toolkit. But writing them in C is somewhat tedious : memory management, limited function callback parameter passing capability, etc... So at the time I was looking at PyGTK (since I like Python), and I was figuring out how it was made. It occurred to me that something similar could be done for PHP, plus it seemed like a very cool and unusual idea. Later on, of course, the whole "new way of using PHP power" thing came up. But originally it was just a hack because I was bored I guess.
Damien :Did you start the PHP-GTK to support some other project ?
Andrei : No, there was no planning for any other projects. Initially I wasn't sure it could even be done, and as I worked on it, several deficiencies in Zend Engine had to be corrected. Large portions of Zend Engine 2 are also influenced by PHP-GTK.
Damien :What part of ZE2 ?
Andrei : New generalized object overloading, class constants (now available because of namespaces), destructors (not really caused by PHP-GTK but really needed by it), something else I forget now.
Damien :Do you believe PHP (and PHP GTK) is user friendly enough to make people build application with it, like Visual Basic ?
Andrei : Probably not like Visual Basic yet : that has been under development for a long time, and there are a lot of people at work on tools, libraries, docs for it. But it is friendly enough as proven by the fact that only a few days after the initial release, people started writing applications with it.
Damien :Do you have examples of application using of PHP GTK ?
Andrei : Yes, the biggest one I'm aware of is PHPMole by Alan Knowles which is an integrated development environment for writing PHP applications, HTML documents, etc... and it's very modular. There is also Teak : an IMAP mail client by Rich Payne, GNUTeca (a library management software) built by guys in Brazil (which I hear is very large too), there are some references on freshmeat.net for more applications.
Damien :So, unlike lost of PHP extension which are done to fill a need, PHP-GTK is a pure creation out of nowhere. How do you explain the large success it met ?
Andrei : Well, I guess there has always been a need to write GUI apps with a RAD language like Python and since PHP with version 4.x has become a pretty good general purpose language, it was a logical next step. But as I said, I didn't really had any big plans for it. PHP is pretty easy to work with and combined with its amazing number of features (using extensions), all kinds of GUI applications can be built.
Damien :Nowadays, do you have plans for PHP-GTK future ?
Andrei : With Gtk+ 2.0 and Zend Engine 2 forthcoming, I guess PHP-GTK 2 will be under development too. The magical number 2.. That will be the version that really should have been done from the beginning : Gtk+ 2.0 is unified across Windows and Unix, it's very cleaned up, ZE2 has many more features that PHP-GTK can take advantage of.
Damien :PHP is going OOP and will keep up with other languages such as Java. Do you think PHP will also get caught by the same drawbacks, such as slowliness, and limited portability ?
Andrei : I don't see why that has to happen to PHP. These drawbacks are not an inherent characteristic of OOP.
Damien :Some developpers are missing some technical lead. It is said that flames and Backward Compatibility is preventing PHP from evolving further. What do you think ?
Andrei : I think that is true to some extent. Personally, I am not on any of PHP mailing lists currently for a couple of reasons. For one, I just needed some time to myself without being deluged by tons of email, and I was a bit tired of endless debates that were going nowhere. As Sascha Schumann said, "The quality of life is much improved when one is not on php-dev". THat said, I still monitor the lists via news.php.net periodically and contribute code. But I do believe that PHP development lists are somewhat full of people who tend to say more than they know. I hope we can have a more restricted mailing list that only qualified developers participate in, and everyone else has only read-access to. Call it PHP 5000 lines-of-code club, if you want. Backwards compatibility is a thorny issue. On one hand you don't want to alienate your user base by introducing backward compatibility breaking changes all the time, but I believe that PHP has gone way in the other direction and it's suffering because of the holy shrine to backward compatibility. I mean other languages (Perl and Python being good examples) are not afraid of breaking backward compatibility when it makes sense and with PHP 5 being the next major version I would think that we could break the bad stuff and make good new stuff. Case-insensitivity being a prime example. But just look at the Zend Engine 2 mailing list and php-dev : there are thousands of posts from people who are sharply divided on this issue. Those against breaking backward compatibility say, "But people upgrading from PHP 4 will have to suffer and rewrite their scripts and they will cry their eyes out". My personal opinion is, "That's fine. Stick with PHP 4 if you want to keep your scripts running. But develop new stuff with PHP 5". So, I hope there will be change in attitude towards backward compatibility in the future.
Damien :PHP 5000 lines of code : will one need to write this much C PHP code to gain writing access to it ?
Andrei : I think that would be a good motivation to join. :) But not necessarily, that was just a number out of thin air. There could be other qualifications. A number of well-designed and thought out RFCs, or good history of finding bugs and proposing good fixes. Those needn't be 100-lines-of-code, but you see what I mean.
Damien :Could PHP benefit from having a stronger lead ? Andrei : Absolutely !
I think that is the most important thing handicapping PHP right now. There is no strong leadership, like with other languages.
Damien :What form or who could this lead take ?
Andrei : Usually, there is a natural leader who emerges, but that hasn't been the case with PHP. So, in my thinking, we should make an effort to make PHP Association be the leader. It would be composed of members from the developer community (and perhaps other areas) with an elected board that would have the power to make the necessary decisions regarding the language. Right now, PHP Group is this nebulous entity that mainly handles license and administration issues. And I think that Association would be the proper face for PHP. Assuming that enough people get motivated. Maybe PHP community is just apathetic, but I hope not.
Damien :Successful languages are backed by a legend (such as Larry Wall for Perl), or famous companies (Java and Sun). Will PHP need to find his icon in order bo be credible with firms ?
Andrei : Right now, PHP is like a bean bag chair - it's nice, comfortable, squishy, you can pretty much sit or lie in it in any position, but you wouldn't want to bring it to a business meeting [http://www.beanbagbeanbag.com/]. I think it's important that business community knows who heads PHP, how it's developed, what the future direction is, etc... Nothing like that is really well defined right now. PHP does not have a good roadmap, things are just thrown in hazardly and even though most of the time they fall in the right spot and work, it's not a good approach to developing a language platform.
Damien :Could the PHP group set up a commercial entity, a la MySQL. Both being OpenSource and economically viable ?
Andrei : I don't think that should be the goal of the PHP group or even PHP association. Creating an Open Source economicaly viable company is hard and I think the effort would be better used on working on PHP. Not to say that someone else couldn't set up a company like that and provide PHP services and support or whatever else.
Damien :Nowadays, how can one make a living using PHP ?
Andrei : Well, I think that since PHP is such a popular language especially for the Web, there is going to be a growing demand for qualified PHP programmers. that is one way. Another is developing commercial software using PHP. Yet another is providing PHP technical services and support, developing commercial PHP extensions, etc... There are always ways.
Damien :What are the majors obstacles preventing PHP to reach big companies ?
Andrei : I've never worked for big companies, so. :) Well, the PHP developer community needs to grow up, for one. More PHP conferences are good too. Cleaning up PHP and putting some "enterprise" features in there (I won't name which ones). Promoting PHP as more than just a Web language. Having 3rd company developers providing PHP tools like IDEs, etc...
Damien :Can PHP pretend rivalizing with Java or ASP ? What does it miss to do so ?
Andrei : Sure it can, it already does. Java just has way better class library, but that's a matter of time. Oh, another big thing would be for PHP to have a built-in or easily available cache/accelerator and encoder solutions. I think it's really suffering because of that. I think PHP 5 will be a lot closer to Java. It will still be lacking certain OOP features, but you can't do everything in one version. I hope that PEAR/PECL will really take off. I don't know much about ASP, so I can't answer the other part.
Damien :PHP has over a 100 extensions. What is missing ?
Andrei : That's part of the problem. A lot of those extensions can be unified and cleanded up. Most of them are optional and can be moved into PECL which is the idea, as far as I know.
Damien :When and what was your first php script ? what was it ?
Andrei : I don't really remember. :) Probably something like < ?php print "hello, world !\n" ; ?>
Damien :When was that ?
Andrei : Sometime in 1998 I believe... We were looking for a new development platform at our company and PHP seemed like a good one.
Damien :Why did you think PHP was good ?
Andrei : Easy to use, familiar syntax for C/Perl people, good DB interfaces, pretty good API for writing your own stuff. Nice base of existing code, as far as what we call extensions now. Works as Apache module. :)
Damien :When did you join PHP community ?
Andrei : End of 1998 I think. I saw a message from Rasmus saying that any help is appreciated, especially with Windows port, so I offered to help (I did some win32 programming in the past). But that quickly turned into working on WDDX extension.
Damien :What are your major contribution with PHP besidews PHP GTK ?
Andrei : they are all listed here pretty much : http://www.zend.com/comm_person.php ?id=24. * PHP-GTK * Perl-compatible regular expressions extension * WDDX extension * Session extension additions * Userspace object overloading extension * Object aggregation * A variety of array and other functions * Zend engine contributions * Smarty template engine * Online code browing for PHP (Bonsai/LXR)
Damien :What do you do for a living ?
Andrei : Right now i am Director of Research and Development at ispi (www.ispi.net). We are an ASP basically. We develop e-commerce and online publishing technology and either license it or provide in-house services for clients.
Damien :What do you do beside PHP ?
Andrei : Bike.. read.. lift weights.. love discovering new music. Watch as much movies as I can. Dream about making a short film. Travel when I can. Keep an eye on other OS projects. Working on time travel in my spare time. But only into the future (through napping). Work on the community radio show.
| Suivant > |
|---|
Vous pouvez ajouter votre commentaire! |


