Saturday, October 4, 2008

How It Started

Recently, while writing a talk proposal for Roadsend PHP, I wrote down a brief history of how it got started. On a new blog intended to discuss the development and future of Roadsend PHP, it seems appropriate to start with a recap of the past. So, here it is:


Roadsend, Inc. is a programming and hosting company founded by Jon Michel and Shannon Weyrick and based in Fishkill, NY that has been in business since 1999. Roadsend has used PHP as its main server-side programming language since before the release of PHP 4.0.

Roadsend released its first open source project, the PHP SiteManager Web Framework in 2001. Roadsend SiteManager and the succeeding Roadsend Portal CMS have been in development and use for all company projects since that time.

The idea for Roadsend PHP began life at Roadsend in 2002 while investigating the creation of a Zend extension for speeding up Roadsend SiteManager by replacing some of the functionality with equivalent C code. Roadsend employee Tim Daly, Jr. (now at Yahoo) had the alternative idea of creating our own implementation of PHP that would compile the existing PHP version of SiteManager to native binary.

For a time, both the C extension and the compiler were developed simultaneously. However it was decided to abandon the C extension and instead focus all effort on the new compiler implementation, which (it was hoped) would not only fulfill the desire for more speed but also offer functionality that the original PHP could not offer.

Over the next several years we managed to develop a full implementation of the PHP language, including native compiler, interpreter, runtime, extensions, debugger, and full blown Windows IDE. It could do things the original PHP couldn't, like compile a site to a single FastCGI binary, or with an embedded web server so that it could serve itself.

Roadsend PHP was originally offered as a commercial (closed source) solution. It was re-released as an open source project in 2007 under the GPL and LGPL licenses.


Of course, it hasn't yet taken over the PHP world, and there are several reasons for that. We intend to address these reasons, and that will be the focus of this blog. Stay tuned.