The Elements of Programming Style by Kernighan and Plauger


This is a seminal book on structured programming. As such it is showing its age; all the examples are in PL/1 and FORTRAN, and Amazon is only showing second-hand copies, but it is well worth getting and reading. It's recommendations are as true today as they were in 1978.

In The Beginning Was The Command Line by Neal Stephenson


Against a backdrop of the story of computing at the end of the twentieth century, this huge essay asks deep and meaningful questions about life the universe and everything. It is a fascinating, entertaining and thought-provoking read; I thoroughly recommend it.

The Integral Trees by Larry Niven


Two novels for the price of one. The second may be a little weaker than the first, but Larry Niven does not produce any bad writing. In common with the rest of his work, these contain rock hard science. Take a neutron star, put a planet round it and you have the recipe for a gas torus — a vast volume of micro-gravity with breathable air. These books bring orbital mechanics to life, if you notice it amidst the riveting story.

Raspberry Pi User Guide by Eben Upton and Gareth Halfacree


A very useful introduction to the $35game-changing small computer designed for education but used for countless other projects. This is the book written by the Man with the vision behind the Raspberry Pi Foundation.

The Great Book of Amber: The Complete Amber Chronicles, 1-10 by Roger Zelazny


This is the series of books (here in one volume) that the Amber Diceless Roleplaying Game is based on. It's a great read even if you don't end up playing the game.

Python For Informatics by Charles Severance


This is an open source book, so you can download it free. It is based on the very popular How To Think Like A Computer Scientist: Learning With Python, which is also free, but to my mind at least it starts off much easier. Instead of jumping headlong into programming, it starts out discussing what a computer is and what programming is. A perfect introduction to programming.

The Art Of Unix Programming by Eric S. Raymond


Solid, sensible and enlightened advice on how to design and build software that is useful and maintainable. This book should be on every programmer''s bookshelf. Even if they do not program on Unix.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License