Skip to content


Programming PHP

The second edition of Programming PHP was recently published. The O'Reilly press release said:

Rasmus Lerdorf and Kevin Tatroe provided the guidelines for this book. The newest author is Peter MacIntyre, a Zend Certified Engineer with more than five years experience in PHP. Wez Furlong and Chris Shiflett also contributed. Furlong modernized the "Extending PHP" chapter, and Shiflett brought his renowned expertise in updating the "Security" chapter.

Recent books

I've had a couple of longish flights recently, and opportunity for reading.

Life Expectancy is a Dean Koontz novel. I find that his books tend to be a bit cliche and predictable (but still enjoyable), but this one is different. It's not his typical horror novel; you're led through the story from the perspective of Jimmy Tock, born on the night his grandfather died. Before his death, he made 10 predictions about Jimmy, 5 of which are proven in short order and the remaining 5 are billed as terrible dates between his 20th and 30th birthdays. This is a humourous and thrilling story of a baker trying to figure out how best to tackle his fate in the face of some pretty heavy goings-on. While some parts are predictable (but again still enjoyable) there is some chain-yanking, in good humour.

Deception Point by Dan Brown. The first Dan Brown novel I've read; it's a fast paced story that ties some political interests to an important scientific discovery. Exciting, fast-paced and has a healthy dose of science in there too. Apparently, all of the cutting edge special forces gear mentioned in the novel actually exists. I enjoyed this book; not as much as I enjoyed Neal Stephensons Zodiac, but I think it's hard to come close to that one :) I can't really write too much without revealing parts of the plot that take a while to emerge; it was a good read.

Airframe by Michael Crichton. I bought this one to read on my flight back from the Zend Conference. While reading the first chapter or so, I began to wonder if this was a mistake, but quickly found that the point of the novel is not to dwell on an incident but to get to the bottom of it. The story follows Casey Singleton as she works towards this goal while trying to avoid harm from disgruntled employees at the aircraft manufacturing plant and unwanted attention from the press. Crichton does an excellent job of making the characters come to life, dosing you up with inside information about aircraft and aircraft safety along the way. It's easy to convince yourself that you've figured out the ending, but you're almost certainly wrong. It's not a plot twist so much as masterful misdirection; a damned good read that'll generally make you feel safe about flying.

Techie Books

In addition to some leisure reading, I've also read a couple of tech books in recent months. I was given a copy of Ilia Alshanetsky's book php|architect's Guide to PHP Security (signed by Ilia himself :) and also a copy of Chris Shiflett's book Essential PHP Security.

I like both books, and I'm not just saying that because the authors are friends of mine. Both books are short, with Ilia's book weighing in the heavier of the two. They're written in different styles; Chris very clearly presents the most common styles of web application attacks and explains how they work and what you should look out for, and how to defend against them. Ilia's book is more of a whirlwind exploration of a lot of different attacks coupled with (fairly specific) examples of how to counter them, while at the same time considering application usability based on his experiences with FUDForum. He also talks about the use of honeypots to draw attackers away from important or sensitive areas of your site.

Chris' book is easier to read, and although it is the shorter of the books, it will help instill the right kind of security thinking that will serve the reader very well. Ilia's book is much more comprehensive, although the very dense writing style can make it a bit harder to read and use as a reference.

If I had to recommend just one book, I'd find it hard. If really pushed, I'd probably suggest that Chris' book be recommended for more junior developers and Ilia's for more senior developers. I'd actually recommend both books to anyone who's really serious; use Chris' book as an introduction to firmly set you on the right track and then follow up with Ilia's book for some more advanced techniques.

I read SQL Server 2005 Service Broker Beta Preview on the flight back from Paris. I picked this up from the Microsoft booth at the Zend Conference. In truth, I only read it because I'd run out of reading material and it was still stashed in the side pocket of my suitcase. This book talks about the Service Broker feature in the new version of SQL Server. This is a reliable, optionally distributed, message queuing facility that ensures message ordering. You're either thinking "Big Deal", "Eh?" or "Neat". This facility is ideal for implementing workflows in a very robust manner. If you're on Windows and have a project coming up in this space, it's worth a read. It sounds like pretty neat stuff; enough so that I might even find some time to play around with it and write some examples in PHP + PDO.

Java: How to Program

I was asked to review this book recently (with an eye on how it equates to PHP), and having just gone through it, I'm quite impressed. It is well written, well structured (taking you from no knowledge and going from there) and teaches you good design principles, without beating you over the head with them.

Having completed my review, it is apparent that PHP 5 has most of the good parts from java, without bogging you down in syntax. I view this as a good thing, making it easier for programmers to drift between the two languages more easily.

If I was asked to recommend a book on java programming, I wouldn't hesitate to recommend this one. I would even consider recommending it to someone new to programming, because most of what it teaches applies equally well to other languages; it serves as a very useful primer, going into the right amount of detail, to make future employees useful regardless of the language that you're going to use.

I Am Legend

I Am Legend

The other day I received a couple of goodies from my wishlist (thanks to David Costa) in return for fixing an SQLite bug. One of the items was I Am Legend.

If you are a fan of vampire stories, or even if you're not, this is an excellent short story (just shy of 160 pages of very readable type). It was so good that it only took me a few hours to read, and as I approached the end of the book I got the "oh no! the story is almost over" feeling that accompanies books of this calibre.

I thoroughly enjoyed the book. If you're not a vampire fan, don't be put off by the frightening cover artwork--the story is not particularly violent or explicit, making excellent use of mood and tension instead.

Eaters of the Dead

US Cover UK CoverDuring one of my hops through AMS on the conference run at the end of last year, I had a couple of hours to kill and picked up a copy of Michael Crichton's "Prey". I loved the story, having recently become a father and very recently just been in/around Silicon Valley. I even got Juliette to read it, and now she's gone Crichton mad.

Currently, I'm reading his book "Eaters of the Dead", which purports to be a translation of a story written by an Arabian scholar who gets caught up in an adventure with a group of Viking warriors. It's a well written story, and I'm enjoying it a great deal.

I find it amusing that the US book cover (pictured right) has to have a block-buster-sounding "The 13th Warrior" as a catch-phrase.