a very good book
This is a very good book that has one downfall; it uses code snippets rather than proper code examples. It feels more of a "proof of concept" book.
The other problem is that the book needs some minor updates - the main one being the coverage of the OpenAL code. While not a major problem (it's quite easy to fix the code by looking at just the header), having code that does not just compile out of the box can cause problems for those new into the games programming arena.
Most of the main aspects of game programming are covered - scripting, SDL, sound (compressed and uncompress - encouragingly, it demonstrates how to use vorbis files) and event handling. Game timing is the only part that perhaps is not covered quite as much as it should be. While keeping a baseline of update every 1/30th of a second will work, it is perhaps not the best way of ensuring everything keeps moving.
I did enjoy the games engine code and description. I have read many books dedicated to the subject and to be honest, this holds its own to them.
Had there been someway of getting hold of updates with the OpenAL code fixed, this would have gained a highly recommended. Unfortunately, it does not so, only achieves a recommended.