If you haven’t done so already, you may want to start by reading the Preface to Knowledge Engineering & Emerging Technologies.
January 31st, 2024 (4th ed)1
The aim of this article is to encourage you to take an end-to-end perspective in your designs, seeking to minimize the overall complexity of your system, of the hardware-software-user combination. To achieve this, it is helpful to understand how computing, and within that, how the notions of the sacred and the profane have evolved over the past 60 or so years.2
The following remarks set out a ‘true north’ perspective for this conversation:
- “We are reaching the stage of development where each new generation of participants is unaware both of their overall technological ancestry and the history of the development of their speciality, and have no past to build upon.” – J.A.N. Lee, [Lee, 1996, p.54].
- “Any [one] can make things bigger, more complex. It takes a touch of genius, and a lot of courage, to move in the opposite direction.” – Ernst F. Schumacher, 1973, from “Small is Beautiful: A Study of Economics As If People Mattered”.3
- “The goal [is] simple: to minimize the complexity of the hardware-software combination. [Apart from] some lip service perhaps, no-one is trying to minimize the complexity of anything and that is of great concern to me.” – Chuck Moore, [Moore, 1999] (For a succinct introduction to Chuck Moore’s minimalism, see Less is Moore by Sam Gentle, [Gentle, 2015]
- “The arc of change is long, but it bends towards simplicity”, paraphrasing Martin Luther King.4
The discussion requires a familiarity with lower-level computing, i.e. computing that is close to the underlying hardware. If you already have some familiarity with this, you can jump straight in to section 2. For all backgrounds, the discussions in the Interlude (section 4) make for especially enlightening reading. Whether you find yourself in violent agreement or disagreement, your perspective is welcomed in the comments!
Continue reading this article…
- 3rd ed. (Jul 20, 2021), 2nd ed. (Apr 9, 2014, addition of GCC history), 1st ed. (May 2, 2010) ↩
- * Sacred: Worthy of respect or dedication. Devoted to a single purpose. Profane: Violating the sacred character of a place or language. Irreverent toward what is held to be sacred. ↩
- This quote by Ernst F. Schumacher is often incorrectly attributed to Einstein ↩
- Martin Luther King’s actual phrase was “The arc of the moral universe is long, but it bends towards justice.”, 1965 You can see an example of this in Ian Hogarth’s discussion about the contest between tokamak and stellerator in the evolution of nuclear fusion technology. (Short version: the tomkamak surged ahead despite its complexity to operate as it was easy to design, but the real breakthrough will likely be achieved by the stellerator as it is simple to operate though harder to design.) ↩