Some books about habits and how our brain works in good and not so good ways.
- Thinking Fast and Slow by Daniel Kahnemann
- The Power of Habit by Charles Duhigg
- Blink by Malcolm Gladwell
Steve Yegges blog post that made me realize that it is time to learn to touch type along with some tools that can make it fun to learn.
It is worth learning Smalltalk, just to understand the book, Smalltalk Best Practice Patterns.
SICP is a classic and it deserves to be read but Concepts, Techniques, and Models of Computer Programming is just as good if not better.
- Concepts, Techniques, and Models of Computer Programming by Peter van Roy and Seif Haridi
- Structure and Interpretation of Computer Programs by Harold Abelson and Jay Sussman
- The Little Schemer by Daniel P. Friedman and Matthias Felleisen
- The Seasoned Schemer by Daniel P. Friedman and Matthias Felleisen
Source code to a number of projects with beautiful code.
- CloudFoundry - beautiful Ruby code, OS Platform as a Service.
- Levelup - Node wrapper for the LevelDB key-value store.
A good short article by Marin Fowler on the tradeoffs involved with writing explicit or implicit code.
- To Be Explicit (pdf) by Martin Fowler
The book by Fowler is a timeless reference book and it is required reading for anyone serious about programming. Kerievsky's book gives more in depth examples and finally Reg's blog post discusses reasons for not refactoring just to please your own ego.
- Refactoring: Improving the Design of Existing Code by Martin Fowler
- Refactoring to Patterns by Joshua Kerievsky
- The Narcissism of Small Code Differences by Reginald Braithwaite
Simple vs. Easy
- Simple Made Easy by Rich Hickey
I like Sandi Metz way of explaining why testing is important.
- Magic Tricks of Testing by Sandi Metz
- Practical Object Oriented Desgin in Ruby by Sandi Metz
- The Craftsman Articles by Bob Martin (click on the Craftsman link).
- The Scientific Method
Documentation matters, but keep it simple.
The original gitcasts.com is no longer available, but the videos are uploaded to You Tube.
- Unix Power Tools by Tim O'Reilly et al.
- Bash Cookbook by Carl Albing et al.
- Build Awesome Command-Line Applications in Ruby by David Copeland
Tools for generation code. Here documents are the simplest possible way, but if you want to generate multiple files it is better to use Thor or Yo.
The ultimate book on continuous delivery, a must read for anyone interested in automation. And, that should be everyone!
- Continuous Delivery by Jez Humble and David Farley
Wonderful book about different people stereotypes.
- Adrenaline Junkies and Template Zombies by Tom Demarco et al
Two articles on estimation by Martin Fowler and Dan North.
Life, the Universe, and Everything
Books about happiness, the mind, and other things.