This book is a work in progress, comments are welcome to: johno(at)johno(dot)se

Back to index...


The idea for this book was born out the desire to give something back to the programming community at large, and to the games industry in particular. Initially I wanted to write something relatively brief about certain techniques and trends in my own work as a programmer that I have found to be very useful.

I want this to be more of "a cookbook" and less of "a bible", in that it should be more about practical knowledge than rants about "the right way of doing things". In a sense the classic Gang of Four book is a big inspiration, in that it is less theoretical and more practical. It shows concrete examples of design patterns that have worked in real projects, and tries not to be so rigidly "religious"; there is no "one true way", and each pattern includes a section on the pros and cons of applying said pattern. I have always admired the the attitude of sharing knowledge that the authors subscribe to.

As my thoughts on "sharing patterns" developed, I slowly came to realize (with judicious help from others) that simply describing a few useful techniques would not be enough, because it is really the progression of thought that led me to develop and practice these techniques that are of the greatest interest. I came to realize that it would be necessary to communicate my entire frame of mind concerning software (something that I have of course come to take partly for granted) in order to get the ideas across.

During the past few year I have been doing a lot of teaching, and that experience has truly helped me figure out the true essence of what I want to communicate; the power of the Model-View-Controller concept, and how that (in my mind) is implicitly connected to the concept of Immediate Mode programming.

Back to index...