I’ve heard from so may people that one way to truly boost your PHP programming skills is to design and build your own framework. Then, throw it away! That’s the important bit, after building it you must throw it away and use a well maintained peer reviewed Framework (for example Zend Framework, Symphony or Agavi).
Today I decided to put on my war paint and become a man. I’m building and MVC PHP Framework called the Edu Framework (Edu – get it?).
As I have mainly used the Zend Framework in the past I imagine that it will look like a very basic version of Zend Framework with a Front Controller, Action Controllers, Request / Response Objects and a view. The fun part is that I’ve decided to not look under the hood of the Zend Framework until I have reached version 1.0 of Edu. Instead I will rely of Martin Fowler’s – POEAA , The Gang of Four and the many articles written about the famous MVC implementation on the net.
In addition to building the framework I have also set myself the task of achieving a high Joel Test Score. Although I already use source control I will have to learn how to unit test, create a deployment process, a bug tracker and put in place a myriad of other techniques Joel mentions in his infamous article.
Tonight’s work consisted of setting up the project environment (installing Ubuntu, LAMP, SVN, PHP Unit and Xdebug). Over the weekend I’m going to come up with a rough UML design of the framework and post it. I will also create a project bug tracker.
Finally in addition to hopefully learning more about PHP and software development my ultimate goal is to have a presentation to give at the unconference at the Dutch PHP conference. If your planning to attend this year I hope you’ll drop by.