☆☆☆★★★★★★★: Matsumoto’s Ruby Book
There are not many good technical books, but Matsumoto’s “The Ruby Programming Language”, co-authored with Flanagan, stands out as one of best examples of technical writing.
Here’s why:
The writing is succinct without being abstrusely terse. It’s clear without being simplistic. The sentences are fluff-free and the meanings are conveyed clearly, like a good Ruby program. Consider this excerpt for example from page 75:
Every object has a well-defined class in Ruby, and that class never changes during the lifetime of the object.
An object’s type, on the other hand, is more fluid.
The type of an object is related to its class, but the class is only part of an object’s type.
When we talk about the type of an object, we mean the set of behaviors that characterize the object.
Another way to put it is that the type of an object is the set of methods it can respond to.
It’s impossible to shorten these sentences any further but also to make them any clearer than they already are.
A masterpiece of technical writing: Matsumoto’s other writings are also elegant.