Book Review: 97 Things Every Programmer Should Know Edited By Kevlin Henney

Posted: March 15, 2011 in Uncategorized

The book 97 Things Every Programmer Should Know is basically a collection of essays by a variety of skilled programmers who are each offering their personal view on the topic of what all programmers should know.

As you’d expect from such a large collection of authors, the value of the result is mixed. Some of the essays will probably be arguing for ideas that you hadn’t really considered, while others are probably things that every remotely competent programmer already knows (at least in theory!).

In a weird way, it’s actually the latter case where the book might actually be most beneficial. Some of the ideas offered are obvious, but easily forgotten. For example, the focus of chapter 3 is “Ask, “What Would the User Do?” (You Are Not the User)”. While almost anyone who’s ever written a program would probably agree that the goal of a program is to be intuitive and easy for the users, I think we’ve all had the dubious pleasure of using programs where it seems as if the user was given no thought at all. Even if this kind of idea isn’t at all new to you, it doesn’t exactly hurt to be reminded of it.

The essays in the book are licensed under the creative commons, and available through a website run by O’Reilly, so you can take a look at a few essays if you like to get a sense of whether it would be of value to you or not personally. I actually worked from an electronic copy that O’Reilly provided for review purposes, but I had looked over some of the essays on the website beforehand.

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s