Kevlin Henney on the Core Values of Programming

97 Things Every Programmer Should Know

By Mary Rotman
March 1, 2010 | Comments: 1

97 Things Every Programmer Should Know
Looking for new insight into programming? The newest installment in our 97 Things series might just be what you need.

"This book is not about a specific technology or a particular agenda. It is a reflection of many different perspectives on programming," says editor Kevlin Henney (@KevlinHenney). "There is a lot of good stuff in there that is essentially timeless and durable. Different programmers will take away different ideas. They will also enjoy the process: the book is very readable. A book with should in the title could be construed as worthy but onerous. I feel that 97 Things Every Programmer Should Know is worthwhile and fun."

I asked him a few questions about the book earlier this week so I could understand a little bit more about programming essentials (and why he wrote the book) for myself.

Mary Rotman: After editing this book, are there certain programming tips & tricks you picked up along the way? Or is the whole book a "tips and tricks" resource by itself?

Kevlin Henney: I don't think I could easily pick a top 3 or 5. Or, to be precise, I reckon my top recommendations would change on a daily basis!

That said, I think that any reader will walk away with a strong sense of the following three core values:
- Code quality matters
- Skills matter, from processors to people, from bits to business
- Programming is more than just the program

MR: What about the book got you interested in editing the content?

KH: The project has open-source and crowdsource elements to it, which is interesting enough in itself. Being involved in a project with a bit of a difference has appeal.

In training, consultancy and articles I often find myself trying to frame advice and recommendations to others. This project is an extension of that interest in promoting the value of skill and insight in programming, but is more than I would be able to undertake as an individual. There is a greater diversity of topics, points of view and styles than one person could reasonably offer.

I've been involved in review and editing work before, and have enjoyed it, but I found the process of helping contributors improve their contributions more rewarding for this project than I had expected.

MR: What will the readers be able to take away from this book? It seems like it covers so many topics under the umbrella of programming; is there anything specific that you think will stick out to people?

KH: That's difficult to say or guess, as the readership is be definition and intention so broad. Some readers may come away inspired to do something different at work or in their professional life. Others may feel that they want to contribute a piece of advice to the web site associated with the book. I'm sure that some readers will subtly (or not so subtly) use it to influence the behavior of their colleagues. Most readers will most likely find comfort and confirmation plus some useful tips, rather than a specifically active response.

MR: With so many different books on specific programming books, what will draw people to a book like this?

KH: That it's not specific. But in being general, it manages to avoid being vague. It's generality arises from the cross-section the contributions make through many topics. But although brief, each item is specific and focused, not fuzzy. And a book with 73 authors that's actually readable? That's also a novel concept!

MR: A novel concept indeed! If people are looking for more information after they've read the book, or want to contribute their own essay on programming, where can they go?

KH: Most of the promotion and following for the site and the book has come from the project having its own Twitter feed, which goes by the name of @97TEPSK.

Additionally, the book is affiliated with the site on which the original contributions were made. This can be found at

If you're interested in learning more about programming concepts or discovering practical knowledge and principles that you can apply to all kinds of projects, please purchase 97 Things Every Programmer Should Know today!

You might also be interested in:

1 Comment

Is this something that is good to use as an outline to new programmers? What about younger learners...say middle school or high school? The concept sounds great. Can't wait to get my hands on the book to see how I might be able to use the book for inspiration and curriculum in teaching CS and inspiring STEM into CS.

News Topics

Recommended for You

Got a Question?