20 Years of PHP
Rasmus Lerdorf announced the first version of the PHP Tools ("Personal Home Page Tools") on June 8, 1995. Inspired by Ben Ramsey's blog post on PHP's 20th anniversary, I would like to join other members of the PHP community and recollect how I first came into contact with PHP.
I fell in love with programming on the Amiga platform (which celebrates its 30th anniversary this year) in the early 1990s extending mailbox software with plugins implemented in ARexx and C. I also dabbled in coding demoscene routines using Assembly. Shortly after I got my first x86-based PC in 1998 I was contacted by a former graphic designer with whom I had collaborated in the Amiga scene before. He was now designing websites and asked me whether I could implement a solution for a client of his using either Perl or PHP. I had no prior knowledge of either language and decided to evaluate both. I tried Perl first and gave up (honestly, I cannot remember the exact reason) after only a couple of hours. Within a weekend I was not only able to learn enough PHP to implement what the client needed but I was also able to actually implement it.
Later I subscribed first to the German PHP mailinglist and then to the General (English) one. Asking questions quickly turned into answering questions. It wasn't long before I was helping with the translation of the PHP Manual from English to German. Eventually I started working on PHP itself, sometimes fixing bugs or implementing small features but mostly discussing the concept and design of the then upcoming PHP 5. The first open source project that I started was phpOpenTracker, a website analytics solution that grew very popular. It was on phpOpenTracker that I gave my first conference presentation, and at the world's first PHP conference (PHP Kongress in Cologne in October 2000) no less.
In late 2000, early 2001 I was exposed to software testing in general and unit testing in particular for the first time when I worked with JUnit at the university. Around this time I started to work on what would become PHPUnit, triggered by a discussion with a professor of mine who thought that a tool like JUnit could not be implemented for PHP. I committed the initial work on PHPUnit to
cvs.php.net on November 27, 2001. Version 0.1 of PHPUnit was released on April 6, 2002. PHP as well as PHPUnit have evolved a lot since then and software development with PHP is very different today from what it was all these years ago.
If a discussion with a professor almost fifteen years ago were the only reason for me to develop and maintain PHPUnit then I would have stopped doing that a long time ago. I still work on PHPUnit and other tools because I believe in the PHP platform and am passionate about helping PHP developers build better software. With PHP 7 on the horizon I see a bright future for the PHP platform. I am thankful for everyone involved in the PHP ecosystem: the core developers for advancing the platform, the vendors of components and frameworks for providing reusable solutions, and every developer who uses PHP for changing the way we live and work through products and services nobody would have thought of twenty years ago. I am thankful because being a part of the global PHP community allows me to make a living doing what I enjoy the most: sharing my knowledge and experience with developers at conferences, at usergroup events, and at our customers.