Beauvais Cathedral in northern France was one of the most ambitious and highly decorated Gothic buildings of the middle ages. The vaulted roofs of the choir were over forty meters high, making it the highest vaulted cathedral in Europe. However, in 1284, only twelve years after its completion, the choir dramatically collapsed, apparently because some intermediate buttresses were not strong enough.¹
The choir at Beauvais was rebuilt with much stronger buttresses, but an attempt in the sixteenth century to crown the building with a 153 meter tower, which would have made the cathedral the tallest structure in the world, resulted in further disaster when the tower fell down. Beauvais Cathedral remains admired as a great achievement of Gothic architecture, but it is also a reminder of the challenges confronted by medieval architects. These challenges and their solutions give us insights into what a craft approach might look like for the Internet of Things.
Medieval architects and masons had limited engineering and mathematical knowledge and used simple instruments. The enormous scale of medieval cathedrals was achieved by the repetition of simple geometric forms using such basic tools as a 45° square and dividers. The pattern of the ribs and shafts in vaults for example might have been calculated by simple rotation of a 45° square². The size of the buttresses were calculated by rules such as that given the fifteenth-century German master mason Lorenz Lechler:³
“Divide the space between the buttresses into five equal parts: give three parts to the window, and two parts to the wall on either side of the window.”
Medieval cathedrals are triumphs of pragmatic craftsmanship. They show how imposing and inspiring buildings can be created using simple tools, basic geometrical patterns, repetition and a “rule of thumb’”method. Sometimes as at Beauvais there were disasters, but generally this craft approach was very successful and resulted in some of the greatest buildings in the world.
Illustrations by Giulia Garbin
The triumphs of the medieval stonemasons may seem a very long way from the modern digital world. But in every computer system there are surprising parallels between computer software and medieval cathedrals. Just as cathedrals were created from the linking together and repetition of certain basic geometrical patterns, so computer programs are derived from certain basic elements: arrays, strings, variables, conditionals, loops, etc. The variable and the loop are as simple and as powerful as the 45° square and the dividers were in the hands of the medieval mason.
Medieval masons relied on repeating simple geometrical concepts, likewise, as Eric Raymond has pointed out:
“A programmer could easily hold the entire logical structure of C in his head (unlike most other languages before or since) rather than needing to refer constantly to manuals; and Unix was structured as a flexible toolkit of simple programs designed to combine with each other in useful ways.“
The way in which computer programs consist of many different modules likewise resembles the organic way in which cathedrals gradually grew and developed. Just as a cathedral might have a thirteenth-century choir and a sixteenth-century tower, so a large program might contain one component which dates back thirty or forty years, cheek by jowl with a more recent piece of coding.
The Credit Suisse global banking system dates back to the 1970s, and contains over 100 million lines of code written mainly in Java, C#, C++ and PL/1. Even a simple task like the introduction of the International Bank Account Number requires the rewriting of thousands of lines of code, with a risk that the vast edifice could come crashing down. Hundreds of projects updating the system are underway at any time, in just the same way as the medieval stonework of a cathedral is constantly undergoing a program of repair and replacement. The distinguished computer scientist and ‘software archaeologist’ Grady Booch has emphasised how software has evolved organically, declaring that:
“All software-intensive systems have an architecture, but most of the time it’s accidental, not intentional. This has led to the condition of most software programming knowledge being tribal and existing more in the heads of its programmers than in some reference manual or publicly available resource.”
Booch’s comments suggest striking parallels between software architecture and the way in which medieval cathedrals were built. For example, the master masons who designed medieval cathedrals often carried the overall design in their head, working out details with 4. Eric S. Raymond, ‘The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary’, Revised edn., Sebastopol, CA: O’Reilly Media, 2001. 5. Stephan Murer, Bruno Bonati and Frank Furrer, ‘Managed Evolution: A Strategy for Very Large Information Systems’, Heidelberg: Springer, 2011. 6. Larry Greememeier, ‘Software’s Dirty Little Secret’, Scientific American 17 June 2008: https:// www.scientificamerican.com/ article/softwares-dirty-little- secret/ 51 fellow masons with plans scratched on the floor of lodge buildings on the site. If the master mason suffered an accident, as when William of Sens fell from scaffolding while working on Canterbury Cathedral, this was disastrous for progress on the building. Similarly, the loss of key personnel who understand the history and structure of a complex software system can be disastrous for a business.
How do these parallels between complex software systems and the procedures of medieval masons help us in thinking about the problems that confront us in today’s digital world? Some of the lessons are apparent in Eric Raymond’s remarkable book, The Cathedral and the Bazaar,⁴ Raymond draws a contrast between the carefully planned and managed environments of commercial software development, which Raymond compares to the medieval cathedral built with precision by a small group of experts, and the more ad hoc and organic approach associated with open source developments such as Linux, which Raymond suggests is like a crowded and bustling bazaar. Raymond’s book is an important one for Mozilla, since it helped inspire the act that created Mozilla, the release of the source for Netscape Communicator in 1998.
Some of Eric Raymond’s historical parallels don’t quite work. As we have seen, the approach to the creation of medieval cathedrals was much more organic and evolutionary than he suggests. On the other hand, markets in medieval Europe were much more strictly controlled than the idea of a bazaar suggests. But Eric Raymond’s fundamental point about how large structures can grow more effectively by communal and cooperative effort, working from the ground up, is one that is borne out by the medieval cathedral.
The moral of the building of the medieval cathedrals is about cultures of cooperation and shared effort. The most important point to emerge from contemplating the cathedrals concerns craft ways of thinking. Discussions about the role of craft in technology frequently focus on the way in which technology can be a material which the craftsman shapes and uses. But there are other aspects to craft thinking as well. One of these is the development of large structures organically through patterns of pragmatic development and repetition.
The World Wide Web could be considered one of the largest examples of such organic craft development. And in thinking about the health of the internet, perhaps we also need to think about how craft structures like medieval cathedrals have been preserved and developed over the centuries. One central feature of this has been the social institutions which sustain and support craft structures like cathedrals: the guilds of craftsmen, cathedral chapters, the fraternities of laymen. Perhaps we need to build similar sustaining social structures to ensure the future health of the web and to maintain its craft character in the face of commercial industrialisation.
These craft characteristics are particularly evident with legacy code. Few projects are greenfield sites. You will probably inherit some code and other materials from earlier parts of the project. In the case of large systems, this code may be lenghty and may relate to a no longer supported operating system or computing technology. Michael Feathers calculates that in many development efforts the amount of legacy code may overwhelm the new code by factors of as much as 100:1 and even 1000:1. ⁷
Yet the legacy code still works. An immediate instinct may be to just rewrite it. Yet often this legacy code works perfectly well, and rewriting it runs the risk of breaking interdependencies elsewhere. The programmer is faced with exactly the same dilemma as the medieval mason. Do you change one bit of the building and risk another part of it falling down? For the medieval architect Lorenz Lechler, the test of any method was a pragmatic one: will it stand up and stay up? In programming, the “WTF” factor (how much swearing will a change to a program cause?) represents a similar pragmatic response.
These craft perspectives will become increasingly important as the Internet of Things gains more traction. The way in which objects will become connected to the network in the home and elsewhere will be just as piecemeal and haphazard as a medieval cathedral. When we hook up our networked mirror, we will find it knocks out the networked scales. And login issues will mean that the scales will only show my sister’s weight and not mine. The risk of the tower of devices tumbling down will be very high. Medieval cathedrals suggest, however, that this does not mean we need a managed and heavily regulated approach to using the Internet of Things. The experience of the medieval masons shows how, by keeping things simple and interconnecting design in an open way, large networks can be built up organically. Sometimes the choir will come crashing down, but generally the organic craft-based effect will be spectacular.
The simple techniques developed by medieval masons could be used to create huge edifices because masons had strong social networks to share their knowledge. The guilds and lodges of the medieval masons were like huge idea factories. Maybe, to assure the future health of the Internet of Things, we need a new form of guild.
1. Stephen Murray, ‘Beauvais Cathedral: Architecture of Transcendence’, Princeton, NJ: Princeton University Press, 1989.

2. Lon Shelby, ‘The Geometrical Knowledge of Medieval Master Masons’, Speculum 47, 1972, 395- 421, reprinted in Lynn Courtney, The Engineering of Medieval Cathedrals, Aldershot: Ashgate, 1997.

3. Lon Shelby and Robert Mark, ‘Late Gothic Structural Design in the “Instructions” of Lorenz Lechler’, Architectura 9:2, 1979, 113-31, reprinted in Courtney, Engineering of Medieval Cathedrals.

Letter of the Editor
Terraforms – Or, How to Talk About The Weather
On Persistence: The Past Art/Works of An/Other Future
What the Enlightenment Got Wrong about Computers
Community Learning at Dynamicland
Imagining a Universal Declaration of Digital Rights
An interview with Audrey Tang
Dream Beyond the Wounds
The Blurring
More than HumanCentered Design
The Unpredictable Things
When the Path We Walked Blocks Our Ways Forward
Letter of the Editor
A viewpoint on Craft and the Internet
Who Controls the Internet?
Ethical Tech around the World
Interview with Gillian Crampton Smith
Life & Death
Typographic Craft
The Internet as a Lota
A Medieval Crash
A Gandhian Dream
Evolutionary Craft