Books

No one written yet. ;-)

Currently reading

The Deadline

A Novel About Project Management by Tom DeMarco.

I think, it is never too late to read this book. Even 14 years after it was first published.

Web Design for Developers

Now I understand (probably only to some degree) how web designers tick and why they first paint a mockup in the photoshop, then slice it and only then think about html and CSS files. The book also offers introduction or helps to refresh the basics about colors, fonts and composition.

Coders at Work: Reflections on the Craft of Programming

Both the technical aspects and coding principles on the one side and the milestones of careers of this great coders are very interesting.

The range in this book reaches from Donald Knuth (the computer science God), who is still coding every day to emacs guru and Netscape developer Jamie Zawinski, who seems to be burned out and currently sells alcohol in his bar in California and only casually doing some recreational programming.

Donald Knuth means that the need for reuse, components and testing is greatly overrated. Compare it to what BDD and agile guys are saying all the time in their strange feeling for the orderliness.

The Well-Grounded Rubyist

The successor of "Ruby for Rails", but less Rails focused.

If you regularly deal with source code of Rails and other Ruby libraries by reading, debugging, patching, you will probably find not much new stuff. But it is nice to read, what are "officially" recognized patterns. Historical explanations about strange parts of API are also very interesting.

Language Design Patterns: Techniques for Implementing Domain-Specific Languages

Books to read

Goethe - Die Leiden des jungen Werther

[de] Aus aktuellem Anlaß hat ein Kollege mir dieses Standardwerk der Deutschen Literatur empfohlen.

Beautiful Code - O'Reilly Media

Contains great examples of very readable and maintainable code. But also some C tricks.

Structure and Interpretation of Computer Programs, 2nd Edition - The MIT Press

Trying to close the gap in my computer science education - learn LISP properly.

The (Not So) Short Introduction to LaTeX2e

(I'm at chapter 2)

An Introduction to Python by Guido van Rossum

Python programming language introduced by the master himself.

Books I have read and my very personal view on them

The House of God by Samuel Shem

Burn out syndrome at its best.

From Bash to Z Shell: Conquering the Command Line

Explains important concepts of shell like file globs and others. Introduces end to end solutions for e.g. shell completion. A perfect supplementation / preparation for the man pages - explains how all the parts fit together.

The Enthusiastic Employee

Written by the founders of an Industrial psychology consulting company, this book gives more insight into techniques and practices, big companies trying to implement. See also dilbert.com

Ubuntu Kung Fu

I have used Ubuntu as my only operating system on the notebook and as my primary OS on the desktop since 2007. I think it is almost perfect OS for Coders (despite purists saying "Take the real Debian instead").

But sometimes you need a special trick to get work done. The tricks contained in this book are of different kind and different quality:

  • some are trivial - you can simply find the desired function or program via the menu or package manager
  • some are fun like showing jpeg pictures in the console
  • and some are really helpful if you interested in a particular function like playing DVD, mp3 or censoring internet for your kids

All tips are well researched but I found nothing life changing for me. Skim through the book and find for yourself, what can this book do for you!

Pomodoro Technique Illustrated: Can You Focus - Really Focus - for 25 Minutes?

The sample chapter is very promising. I am going to apply it during home office working time.

But what is about real enterprise-y environment? What if you have open office space and too many people in the project?

Advanced Programming in the UNIX Environment by W. Richard Stevens

Ruby and Python provide a high level scripting interface to the underlying operating system functionality. But only after reading this book I understood, that function naming and how the functionality is organized is heavily inspired by Unix.

This book provides the whole background. A must read for anybody who is programming Linux with Ruby, even if all the examples in the book are in C and Linux is not mentioned. ;-)

Pro Git

git tools possess very informative and extensive man pages. But you need to read this book to understand how the parts fit together and to understand how to implement different workflows with git.

"Git internals" chapter is also very enlightening and IMHO a prerequisite for the usage of libraries like grit (http://grit.rubyforge.org/). It helped me a lot while working on git-wiki (http://github.com/geekq/git-wiki).

OpenGL Distilled

A very nice introduction to OpenGL and the foundation of OpenGL API. The book it a perfect complement to the API reference - without a book you have no chance to understand the very-side-effect-based API. The book is also perfectly distilled - essential topics kept, further API details can be found in "OpenGL Programming Guide" (896 pages) and more theoretical stuff can be found in "Computer Graphics: Principles and Practice".

Apprenticeship Patterns

I've read the most of the content of this book as it was a wiki. The book is highly motivating - makes proud of my profession.


This page is powered by jekyll, delicious and myself.