Foreword

Over a decade ago I walked into an office in Seattle on a Saturday to do an interview. The day before I had had the worst interview of my life. I had spent an entire day wandering through the halls of a large Seattle-based company answering asinine questions. I was not in a particularly good mood and doing an interview on a Saturday was not really what I wanted to be doing.

The interview was not done in the normal one-on-one fashion, but instead it was being done with me talking to about seven developers at once. I was being asked all sorts of questions about databases, web servers, and more general stuff about how programming languages work. There was this one particular guy who kept asking me these oddball questions that just seemed to come out of nowhere. For a while I kept thinking to myself, "Where is this stuff coming from?" It all seemed random at first, and then I figured out why he was asking the questions.

He was putting together a bigger picture in his head and was asking questions in order to learn how to put together entire systems. The questions had nothing to do with the trivial corners of any particular technology but instead dealt with how to build systems. He was using the opportunity to learn.

Patrick is an amazing fellow. Of all of the people I have worked with over the years, he has been the one who has always been the person who asked the questions. He is obsessed with learning and, unlike most engineers, he has no fear of divulging that he doesn't know ...

Get Developing Web Applications with Perl, memcached, MySQL® and Apache now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.