I'm part way thru the book, and so far its good for beginners. Even tho it is dated (1996), most of the concepts are valid. As a programming teacher, one thing does irritate me: the persistent misuse of the word "programming" when the author means coding. Programming is creating the logic, coding is translating that logic into code. Many students come into class able to code, but almost none come in able to program -- that is, create the logic. They think sitting down and making spaghetti code is programming. The author, as many authors and teachers do, promotes this confusion with his misuse of terms. This lapse makes it so much harder for novices to learn to program. But I was glad to see him emphasize "plan", even with the terms confused. Otherwise, good book for basic game concepts.