The best engineering books for non-engineers

Geoffrey Keating
4 min readMar 6, 2018

--

I’ve been reading a whole bunch of engineering books recently. While their emphasis is on building software, a lot of the ideas are applicable to non-engineering activities too. Suggestions about managing projects, reducing complexity, and making tough decisions are just as useful whether you’re starting a business, writing a book, or almost any other creative endeavour. Read any of the below and you’ll quickly see how these concepts can apply to a wide range of activities.

1. The Pragmatic Programmer by Andy Hunt and Dave Thomas

A surprisingly untechnical book that includes dozens of real world applications for non-engineers. For example:

Don’t Live with Broken Windows
Fix bad decisions, and poor code when you see them. Crack down on the small stuff in order to keep out the big stuff.

2. Joel on Software by Joel Spolsky

A series of blog posts curated by Joel Spolsky dealing with everyday problems every engineer (and non-engineer) is likely to encounter during their career: whether it’s about the economy, managing people, business strategy or just insulating pipes.

Don’t Let Architecture Astronauts Scare You
When you go too far up, abstraction-wise, you run out of oxygen. Sometimes smart thinkers just don’t know when to stop, and they create these absurd, all-encompassing, high-level pictures of the universe that are all good and fine, but don’t actually mean anything at all. These are the people I call Architecture Astronauts.

3. Rapid Development: Taming Wild Software Schedules by Steve McConnell

A must read for anyone working on large, complex and collaborative projects. The chapter on morale is worth the cover price alone.

How Morale Kills Your Project

Michael Jackson (the singer, not the computer scientist) sang that “One bad
apple don’t spoil the whole bunch, baby.” That might be true for apples, but
it isn’t true for software. One bad apple can spoil your whole project.

4. Badass: Making Users Awesome by Kathy Sierra

If you are a teacher designing a lesson plan, if you are a speaker designing a presentation, or if you are trying to learn a skill yourself: this book is for you. The concepts are so simple yet so thoughtful, anyone can learn from what Sierra is teaching.

Choices are expensive

Choices aren’t just cognitively costly while we’re choosing, they drain cognitive resources after we choose. Leaving the decision to someone else saves the cognitive expense of deciding and frees us from the cognitive drain of second-guessing ourselves later.

5. Errors by Gerald M. Weinberg

A compilation of Weinberg’s six-decade work on understanding software quality and the organizations that produce it (or more often those that do not). Weinberg gets his message across in simple, memorable anecdotes that you’ll be able to recite perfectly, months after I first read the book. His Introduction to General Systems Thinking is also highly recommended.

The Value of Software

Though copious errors guarantee worthlessness, zero errors guarantees nothing at all about the value of software. Let’s take one example. Would you offer me $100 for a zero defect program to compute the horoscope of Philip Amberly Warblemaxon, who died in 1927 after a 37-year career as a filing clerk in a hat factory in Akron? I doubt you would even offer me fifty cents, because to have value, software must be more than perfect. It must be useful to someone.

6. The Deadline: A Novel About Project Management by Tom DeMarco

A genre-bending book that teaches the principles of software project management through fiction. Sounds like a car crash on paper but this clever packaging makes it so much easier to plow through. Great insights on managing conflict, productivity and running meetings.

Running Successful Meetings

Keep meetings small by making it safe for unessential people not to attend. A published agenda, rigorously followed, is the easiest way to make nonattendance safe.

7. Programmers At Work : Interviews by Susan Lammers

Susan Lammers’ interviews with Dan Bricklin (VisiCalc), Bill Gates (Microsoft) and Mitch Kapor (Lotus 1–2–3) serve as a tapestry of the history of computing. There’s plenty of technical material in here but it’s the storytelling of the people involved that elevates this book, not necessarily the technology.

Taking inspiration from outside software

Physics and mathematics, like other respectable disciplines, require that you think clearly to succeed in them. That’s why many successful computer people come from these fields. It’s harder to do what people do nowadays — start in computer science and stay in it — because it’s a very shallow discipline. It doesn’t really force you to exercise your intellectual capabilities enough.

8. Hackers and Painters by Paul Graham

Like Joel On Software, this is less a book and more a collection of loosely collected essays stitched together. Chapters such as “Programming languages explained” are some of Graham’s best work and are must reads for anyone with an interest in software and business technology.

The Other Road

There are only two things you have to know about business: build something users love, and make more than you spend. If you get these two right, you’ll be ahead of most startups. You can figure out the rest as you go.

Got any more recommendations? I’d love to hear them.

--

--

Geoffrey Keating

Writing, editing and marketing @intercom. I write my personal things here.