Discover more from Capsule Reviews
14 of Wands: The C Programmer
You are not expected to understand this
In computing, the suit of wands stands for the power of computers to encode, decode, and recode information. The 14th card of a tarot suit is a person who can teach us about the concrete, finite physicality of computing. The Knight of Wands is the C Programmer.
C contains a very clear, fairly simple model of a computer. In 1980, this model was fairly accurate - today it is the story we tell one another to make sure we are understood.
C’s design centered simplicity, here understood as simplicity and intelligibility of implementation. Because C was portable, intelligible, and efficient, it became ubiquitous. Because C is ubiquitous, it is the lingua franca of programming, and the foundation of many, many other technologies.
C programmers have a reputation for pragmatism, for valuing efficiency, for making an effort to completely understand the implications a decision. A C programmer values simplicity and mastery. A good C programmer is a great system designer, and has a depth of understanding of their system’s environment, assumptions and dependencies.
An obsession with mastery can breed contempt for non-masters, and a belief in one’s on mastery can lead to arrogance at best and cruelty at worst. “Simple” decisions about C memory management, pointers, arrays and string handling, and the belief that master programmers can work safely amid those decisions, have cost humanity billions of dollars and probably more than a few human lives. C is dangerous, and in reality there are none of us can actually master the complexity of a real, life-sized computing system.