Reflections on php|tek 2009

Ok, I know I am a little late on this, but I did want to post some thoughts on php|tek 2009.

I was very pleased to be a speaker again this year. On reflection one night, I realized I have been at every “tek” conference as a speaker: php|cruise, php|tropics, php|tek in Orlando and all three of the php|tek Chicago conferences. I am especially pleased because it almost did not happen this year. I had just accepted a job offer at the time the call for papers was taking place. As it ended up, I secured permission from my prospective employer one month prior to my actual start date with them and ended up submitting and presenting my Design Patterns in PHP talk.

Travel for me is just a short 2.5 hour drive from Iowa to Chicago. Two weeks before the conference took place, work decided to hold a carrier conference in Chicago, the speaker for the technical track was unable to attend, and I was asked to fill that role. This took place on Tuesday morning, so I was unable to attend the morning tutorial session. After my work speaking engagement ended, I headed back to the php|tek hotel and attended the afternoon tutorial “PHP Code Review” by Stefan Priebsch, Sebastian Bergmann and Arne Blankerts. These three experts (the co-founders of the php consultancy phpCC) held a code review session citing common example they find in reviews with companies who hire them. Unfortunately, they could not show their clients specific code, so they used examples from popular open source projects. One could characterize this as a “rip on other people’s projects” session, but I don’t think this is a fair assessment. Hopefully any project cited can take this as a bit of free consulting, and remember that while this is obviously not the best location to have a spotlight shined on your code, code bases are evolving organisms, and there were probably descent reasons why the code was structured that way originally. Code can continue to evolve as well, and this kind of a review might just be the impetus which prompts maintainers to refactor away from the problems pointed out in the session. I personally learned a new Design Anti-Pattern in this presentation (and actually referenced it in my own talk later in the week) the Prophet pattern.

I just realized if I covered every talk I went to through the week, this post would go on forever. Suffice to say, there were many great presenters there, and many time slots where I was forced to choose between multiple presentations I wanted to attend. I would be remiss if I did not point out I gave my own talk: “Design Patterns in PHP”, and here are the slides.

Some of the best parts of the conference happen outside of the presentations, and php|tek 2009 was no exception. One aspect of these conferences I have seen getting better every time is the interaction between the regular speakers and the participants in the conference. I think perhaps the greater accessibility of people through mediums like twitter make people want to meet people even more in person, and contributes to longer and more impactful interactions when people do meet in person. During one of the social events, I spoke with Ed Finkler and he told me that he had read my Design Patterns book, and that I had successfully made the whole concept of Design Patterns less academic and more accessible. This was perhaps the most rewarding comment I have had regarding the book, as it validated for me all the work I put into it; the book had the desired impact on a person whom I respect in the coding community.

One of my favorite stories from this conference was about two attendees of the php|tropics conference. I had several interactions with these two attendees during the conference. Both of them have since changed jobs, become more influential in the PHP community, and both of them were speakers during php|tek 2009! One of them is Matthew Weier O’Phinney, now leading the development of the Zend Framework for Zend, and the other was Paul M. Jones, of Solar fame, who had to put up with me on the whole flight back from Cancun to Memphis. It was so much fun to renew my friendships with these people who are now bona fide experts in the field!

One more personal story about PHP community friendships. I met Travis Swicegood online through our work on the SimpleTest project, last year we met in person at php|tek 2008. We stay connected through the wonders of social media, and I saw a tweet from him shortly after he left his job that he needed a room for the conference. I volunteered my rooms couch, and while we caught up, he gave me some great feedback on my presentation, including inspiring me to complete the “Developers Prayer.”

I love attending PHP conferences to renew friendships, to learn, and to be inspired by the creativity in the air. If you have not attended a conference, I invite you to make an effort to attend. Never underestimate the value of networking during these events; when else do you have the chance to rub elbows with (or buy a beer for) the people who wrote the language you make a living from, or who are authors or contributors to the open source projects you use every day. There is tons to learn, and many friendships to be forged. I hope to see you at php|tek 2010!