Many thanks to the organizers and hosts of ConFoo 2010 in Montréal! It was great meeting everybody there. I always say my favorite part is talking to the attendees; that’s where most of the interesting stuff is.

I gave two talks this time around. The first was the venerable “How To Organize you PHP Project”, which I still love to give, and which I think is really valuable both to new and to experienced developers. The slides are at; if you attended, please rate it at

I was really happy about the “Organizing” talk this time around; I was able to add comments on the new PHP 5.3 namespaces, and show how The One Lesson works in practice with existing projects. Attendance was high; great audience, lots of good questions throughout, and a few people were even figuring out in advance where we were going before we got there (it’s always nice when an audience question is addressed in a later slide). There was one guy who saw this presentation the first time I gave it years ago, and he noted that it was much more polished this time around; it’s good to know that there has been visible improvement in the talk.

The second presentation was on “The Solar Framework for PHP5”. The slides are at, and if you attended, please rate it at

I was happy about the “Solar” talk, too, but it ran a bit long. When I practiced it, I went for almost 90 minutes, but we’re only allotted an hour, so I had to flip past some good stuff toward the end. Even so, I still went five minutes over time. Attendance was reasonable; Nate and Joël from Lithium showed up, as did Fabien from Symfony. More good questions from the audience, and some discussion of language features available in Python and Ruby that have to be emulated in PHP (I’m looking at you, named keyword arguments).

Thanks to everyone who came to my talks; I hope you found them useful, informative, and entertaining.

Are you stuck with a legacy PHP application? You should buy my book because it gives you a step-by-step guide to improving you codebase, all while keeping it running the whole time.