We, Programmers
If I need to choose a role model who has guided my career the most, I would choose Robert C. Martin, also famously known as Uncle Bob. I learned a lot from him, including software architecture, methodologies, the human side of software engineering, code quality, and more. So when his new book, “We, Programmers - A Chronicle of Coders from Ada to AI”, just got published, I didn’t hesitate much. Mainly because the topic had already hooked me. I have always wondered how our industry has reached its current state and how programming has evolved over the decades.
Overall, it is a beautiful book with a minor, but debatable flaw. It is structured into four major sections. The first section is “Setting the Stage”, a relatively short introduction of us, the programmers and what we are doing. The most memorable part of it was finding out that we are “detail managers”. Initially, I found this concept quite weird, but the book eventually convinced me of its validity.
The second section, titled “The Giants”, is the most informative and most entertaining. Ultimately, this section serves as the main course of the book. Uncle Bob explores the history of software engineers, dedicating each chapter to a single person or a group of related individuals. In many ways, this chapter gave me new knowledge. For example, while I was familiar with the work of Alan Turing and John von Neumann (or, as we Hungarians call him, Neumann János), I gained a much clearer understanding of their contributions. However, I was also impressed by the work of Grace Hopper, particularly her introduction of compilers and the concept of different programming language levels. But the others were also fascinating.
Two stories truly hooked me in. First, how John Kemeny (or, as we Hungarians call him, Kémény János) wrote the BASIC compiler with the help of undergraduate students in just three months, while waiting for the machine to be delivered. To put it differently, he wrote a compiler with undergrads on paper using pencils. The second memorable story was about how Ken Thompson wrote UNIX out of boredom and for fun. And why was he at one point three weeks away from an operating system? Because his wife and infant son took a three-week vacation to visit her parent in California.
The third section, titled “The Knee of the Curve”, has that debatable flaw of the book that I mentioned previously. It is because it is about Uncle Bob and his career, how he has lived his decades as a software engineer. I don’t mind reading about his career, but I didn’t expect it in this book. I was expecting from the subtitle of “A Chronicle of Coders from Ada to AI” a complete objectivity. I think this section suffers from survivorship bias because it primarily focuses on what he has personally observed and experienced.
Finally, in the fourth section titled “The Future”, the book gives an outlook on our possible future. While the second section is the most entertaining, this fourth section is the most useful one for shaping today’s opinion, especially in the shadow of AI. It provides a forecast on future programming language developments, computational capacity limitations, and ethical and disciplinary considerations (topics that are often underrated), as well as whether AI will replace us, programmers (spoiler: it won’t).
What I like the most:
- The book gives an excellent overview of the history of our profession
- Confirmed my previous belief that those “Giants” were more mathematicians or scientists than engineers
- Got to know how “Uncle Bob” got his nickname
What I didn’t like much:
- The third section suffers from survivorship bias, although the section is still somewhat informative
Comments