This post is for those of a technical bent; if you’re a foodie and the thought of computer code bores you to tears, please skip this one.
Cookbooker was built on a fairly standard LAMP platform. Since I have a day job, it was an evenings and weekends labour of love, and I taught myself PHP and MySQL programming using books and web resources.
Books
I started with
Sams Teach Yourself PHP in 24 Hours (3rd Edition). It took more than 24 hours, but it was a good introduction to all the basics, and a reference I could come back to regularly when I needed to learn something new. It was a good start, later fortified with regular visits to the PHP website and to Stack Overflow to find answers to my many questions.
MySQL Crash Course got me through the particular logic required to build database queries, and continues to be a useful resource as I look to improve my SQL code.
I tried doing some of the projects in PHP Books designed to teach various aspects of putting a dynamic website together, but I got impatient to actually build Cookbooker, and soon enough decided to use it as the learning platform. Every time I needed to learn something specific to make Cookbooker work, I’d research it and test it out until I got it under my belt. The result was that every so often I had to go back over the whole site to fix some faulty assumption I’d started with or some seriously clunky code, but it also meant that everything I learned was leading directly towards a workable website.
Near the end, I found two books that were absolutely brilliant – inspiring and incredibly useful for someone starting a social web application. They inspired me to go back and look at a number of my assumptions, and redo many parts of the site for the better.
Designing for the Social Web. This is an absolutely brilliant book for someone designing a website with social features. There were so many moments I put the book down and scribbled notes, nodding my head like I’d just discovered some profound truth about the universe. In a way I had, at least the universe of all this web business. Online participation, focusing on the primary activity of the site, the ‘usage lifecycle’: he has great, and succinct things to say about all of them.
Lots of people online recommended Designing the Obvious: A Common Sense Approach to Web Application Design as a companion to Designing for the Social Web, and indeed it was an equally worthy book. It’s all about the simple things that make a website work, and don’t work – how to make something that ‘feels’ easy to use and logical, which is harder than you’d think.
I’ve also got a lot out of Steve Krug’s classic Don’t Make Me Think: A Common Sense Approach to Web Usability.
Finally, I did a security review with the help of php|architect’s Guide to PHP Security and Pro PHP Security. Both are solid guides to the ins and out of securing PHP based web applications and I was glad I’d read more than one as they have different takes and different approaches to some of the common problems of security.


Hi Andrew,
Your website is truly and inspiration to me! I’ve dabbled only a bit in making websites since the first days of Netscape Navigator. However, with very little in terms of a programming background (does BASIC on my Apple IIc count???) I was left at the starting line as the technology changed so quickly. I’ve started to get back into it since so many health care related sites for small businesses recycle content and only modify the styling (great way to stand out in the crowd…?!?). I’m just working my way through The Essential Guide to Dreamweaver CS4 with CSS, Ajax and PHP by David Powers and I am beginning to truly appreciate the time you have put into your project. I was pulled in by “Building Cookbooker” but have now come back for “Mycophilia” (I too am a big scaredy cat) and “Wireless Yoghurt!” (now I know why Time Capsule isn’t just your regular hard drive).
Cheers!