Short bio: Computer Scientist, FOSS supporter (read more)
Tux Machines (TM)-specific
Wez Furlong is Chief Architect at OmniTI, Inc. and a PHP core developer responsible for the streams abstraction layer, the PDO extension, and the SQLite extension among others. I caught up with him at the php|works conference where he presented a seminar on PHP Data Objects (PDO).
You must have a pretty busy schedule working on PHP, as lead architect at OmniTI and you want a personal life, too, I'm sure. How did you become involved with PHP?
The way I got into PHP initially was this company I worked for in England did various different kinds of professional services consulting. One of the projects we had was a Web site where you could go in and advertise your house for sale so you could privately sell your home — place where you could put the details up and people could find it.
That site was written using ASP classic, as it is called now. This client came to us and said, "We would like to build an e-learning application but it needs to run on Solaris". We had heard of PHP — PHP 4 was just coming out around then. We thought we'd give it a go. We got the site up but one of the things they needed was a payment processing gateway for credit card payments. We had to use cURL to make that work. But there is no reason you have to use cURL to make that work. PHP could already use fopen() to make an HTTP connection, so I came up with a pretty small patch to enable SSL support so that we could fopen() an HTTPS connection. The way that needed to be implemented was a real problem. The internals around that time were a bit of a hack, so to make that work — to maintain that hack — was also a hack. It was kind of ugly. It was based on feedback from that patch that I ended up developing the streams layer. It took me about nine months to go through all the corners of PHP in my spare time and get it all working. It was just an interesting project. One of the things I like doing is looking at the way developers are using things and finding better ways to make their life easier, make their work less. It was good fun to do that. And PDO is the same kind of thing.
The whole of PHP is that kind of thing, right? It's made up of numerous extensions.