This Thing Rules

Want to learn to code? Read this book first.

A perfect primer for the world of digital media, software, and even Morse code.

I have been a tech nerd for almost 32 years now. Over the years I have owned and written about computers, mp3 players, smartphones, game consoles, DVD players — you name it, I've written about it. My opinion on such matters holds weight with a certain audience of tech consumers. But until last year, I had no idea how any of this shit really worked. The nuts and bolts, code and compilers; none of it made any sense.

Turns out, software is not magic. Coding is not wizardry. There are no arcane secrets behind machine learning. Out modern computerized world is just layers upon layers of systems of computations that we've heaped onto the backs of our silicon beasts of burden. If that seems obvious to you, allow me to ask: How does your iPad know what colors to produce onscreen? How does Netflix know which movie to send you? What, physically, is data? Despite living in an electronic world, these are just not things that we're taught.

In an effort to actually understand the games I write about and the gadgets I review, I've tried throwing myself into various online courses, be it YouTube or learn-to-code apps, with barely any success. Each time someone tried to explain how code actually works to me, I'd have a million "why" and "how" follow up questions for which I almost never found a fulfilling answer. Repeating this over and over has made me feel less intelligent, which isn't what you set out to feel when you ask questions and study information.

Input may receive a portion of sales if you purchase a product through a link in this article. We only include products that have been independently selected by Input's editorial team.

Which is why I recommend you pick up Charles Petzold's excellent book Code: The Hidden Language of Computer Hardware and Software. In it, Petzold traces the mechanisms through which all computers – in a modern sense, most machines – communicate with us and each other. To do so, he begins at the very beginning (literally the lightbulb) and drives straight through to the way code works on (relatively) modern computers. Explained in this way, you can actually understand on a fundamental level how each and every mechanism along the way to finished software actually works.

Petzold's book isn't magic; it will require some mental effort on your part to keep all the numbers and diagrams straight in your mind. But it is, by far, the most straightforward way of explaining the earth shattering power humans can wield when working with 1s and 0s.