Developing software in the Real World

Tutorial Q&A PDF

Chris Kirk has kindly provided a Q&A PDF which summarises a number of problems that have been raised and answered in the comments on the tutorial page. If you are having problems, download it and see if it helps. Thanks Chris!

Three years of my Zend Framework Tutorial

Three years ago today, I published my first Getting Started with Zend Framework tutorial. This was the announcement. Back then, Zend Framework was at version 0.1.5 and a considerably smaller download than now :) Three years later and I haven't lost my enthusiasm for Zend Framework as you can tell since the latest version of the tutorial supports ZF 1.8 and 1.9 and uses the new features like Zend_Application and the command line Zend_Tool scripts.… continue reading.

My tutorial is compatible with Zend Framework 1.9

I've just updated my tutorial to version 1.6.3 after checking that it is still compatible with version 1.9 of Zend Framework. The only changes I had to make were: ZF 1.9 comes with its own BaseUrl view helper, so there's no need to write our own. ZF 1.9.0's command line tool doesn't work on Windows. I've created patches on issues ZF-7464 and ZF-7465. I'm sure this will be sorted with 1.9.1 though. ZF 1.9 looks… continue reading.

DNS Transfer

Just a heads up, I am currently transferring the registrar for, so there may be an interruption of service here if I mess up :)

The watch Linux command line tool

I'm sure everyone else already knows about watch, but it's new to me. This little utility executes a program repeatedly at a set interval and displays its output. I've been using it with mysqladmin's processlist command like this: watch -n 1 /usr/bin/mysqladmin -uroot -pMYPASSWORD processlist Note that this does put your password on display at the top of the command window whilst watch is running. If you don't want that, you could write a little… continue reading.

Bootstrapping modules in ZF 1.8 and up

I've started to play with modules in a Zend Framework 1.8 application as the new autoloader means that all your model directories no long have to be on the include_path for autoloading to work. What I'm specifically interested in is being able to instantiate a model that is within a module from within another module. Setting it all up isn't that hard, but I couldn't find a concise description, so these are my notes on… continue reading.

I'm speaking at ZenCon 2009!

I'm speaking at ZendCon 2009 this year! I'm doing a tutorial session called Zend Framework Certification Bootcamp where I'll be highlighting key sections of Zend Framework that you'll need to know in order to pass the the ZFCE exam. I'm also presenting a standard session, Getting a website out of the door (aka Managing a website project) which will be a non-code talk about the realities of project management in a small web development company… continue reading.

Some notes on Zend Server CE for Mac OS X

I've installed Zend Server CE on my Mac to see where it's got to and it's looking quite usable. The installation puts everything into the usr/local/zend directory which is fairly well laid out so that you can find what you are looking for. There's also a a nice admin system at http://localhost:10081 which allows you to restart PHP, view phpinfo(), configure extensions and php.ini. There's also a phpMyAdmin to help administer the bundled MySQL server.… continue reading.

DPC '09

The Dutch PHP Conference is over and so it's time to write a short wrap-up. Day 1 The conference was opened by a cool animated video and then Cal Evans welcomed us, with a nice short speech. The keynote was given by Andrei Zmievski of Digg. Andrei is a core devloper and gave an interesting overview of what we can expect to see next in PHP. I then listened to Paul Reinheimer talk about some… continue reading.

WinPHP wrap-up thoughts

This post is part of a series about my experiences building a PHP app for Windows Server 2008 and IIS 7 for the European WinPHP Challenge 2009 which is sponsored by iBuildings, Microsoft and Leaseweb. The WinPHP challenge come come to an end and I'm fairly happy with how SuccesSQL has come. I wish I had realised exactly how little time I had in May though. Somehow I managed to forget that we had three… continue reading.