FURTHER LEARNING
Outside of independent and professional work I ensure to seek wisdom from others in the industry. Along with independent work, keeping up with outside reading (among other methods) is my responsibility.
Games development encompasses a large variety of subjects and narrowing down good sources of further learning can be tricky. This page contains recommendations for software development and games development with the target audience narrowed down and kept in mind.
This is far from a perfect list so please let me know your thoughts via social media.
Working Effectively with Legacy Code
By Michael Feathers
Legacy code as defined by Michael Feathers is an eye opening and mind-blowing experience to read. This book takes you through the core concepts of legacy code from conception (and creation) through to clean up, giving you the complete tools to deal with it. There is no better book that I have found which outlines the techniques and explains why they work or do not work.
One of the amazing parts of this book is that it shows off techniques which technically work, and technically count as valid, but are not good techniques and instead of hiding these techniques from the reader they explain to the reader why they are worse than others. The teaching style of offering all the techniques – including the bad – and hoping that the reader selects the good is so refreshing as online resources tend to either hide bad techniques or not explain why a technique is good or bad.
After getting to grips with test driven development with a small feature or project, pick this book up and it will level up your entire idea of what code is!
The Art of Clean Code: Best Practices to Eliminate Complexity and Simplify Your Life
By Christian Mayer
This must be the easiest read in terms of clean code. This book outlines all the basic principles adding a few basic techniques to implement them on top. Anyone wanting clear answers on what clean code looks like this is a great read.
Just skip chapter 2 (the 80/20 principle) in my opinion – the rest of the book is still worth it!
97 Things Every Programmer Should Know: Collective Wisdom from the Experts
Edited by Kevlin Henney
This book contains 97 entries written as advice; it seems applicable to people in industry less than 5 years. I read this book by reading one or two entries a day which gave my mind time to process them. I would say some entries are very particular, for instance ‘if in X language don’t do Y’ and if this is not a language you are ever likely to touch some extraction of wisdom is needed.
Kelvin Henny is someone who I watch a lot of talks from and with this book he did a great job.
Designing Games: A Guide to Engineering Experiences
By Tynan Sylvester
I am not a designer by profession but by training (university) it is something I found a love for. This book is the easiest read and the broadest read on what design is and how to do it. If game design is a topic you would like to get into this is a great jumping off point. It will give you all the information to start designing a game without going deep into any subject.
When it comes to going deeper in design there are other books on this list for that. This is my go-to if I want a few pages reminder on what a subject topic is without extra fluff. I recommend this for newer people in the industry (and students) and if it sounds like you are that person (new to design) then go for it.
Level Up! The Guide to Great Video Game Design
By Scott Rogers
Level up is a design book when action is your goal. When I have the game idea and now it is time to actualise those ideas this is the book I reach for. It outlines how to turn my fussy ideas into actual designs, into to the real world. There are a few pages in this book which show this off brilliantly in which the author expresses all possible platforms in a two-dimensional platformer – this is the type of book level up embodies!
Level up is a design tool book you read when actualising your ideas.
Game Mechanics: Advanced Game Design
Fundamentals of Game Design
By Ernest Adams, Joris Dormans
Game mechanics is the most textbook approach to game design I have ever read. That outline may turn off the more art-like designers but for a software engineer it turns these unknown questions of design into actualisations with figures and conditionals. The machinations which came out of Adams’ book click with my mind and since reading that book I cannot play a game like Zelda without breaking down the economy into a set of circles and lines.
Fundamentals of Game Design is the more text book version of designing games and level up. It is a decent book but it is a text book. I love text books because they give me a source for the thoughts and feelings about the industry I knew had some truth. This book is not going to be revolutionary for anyone who has read other design books, it is basically elements of Rules of Play with the origin of many other design books. I like this book because the ideas are described in a language I can absorb, and it is able to remain on topic in terms of design.
Just a note: Game Mechanics is out of print so pick it up from a charity shop it’ll be cheaper than Amazon.
Press Reset
Blood, Sweat, and Pixels
By Jason Schreier
Say what you want about games journalism, but Jason Schreier’s two books are a shining example of why the games industry needs protections and better working conditions. These two books are a collection of interviews with games developers producing video games through crunch, layoffs and other such terrible conditions with their own thoughts on the situations. The books themselves give a detailed enough history on these studios to grasp why the developers are in their position.
As a game developer it is vitally important to understand what the industry was, what it is and where we are heading. These books are the past and present of the industry. If you are in the games industry pick up these books and read them, it is highly requested reading.