The way Christopher Alexander worked

Christopher Alexander’s processes differed from those of the prevailing builders and architects at the time[TOE75]. Indeed, many aspects of his work were similar to the principles espoused in the Agile Manifesto[AM01]. They were iterative approaches, which demanded taking small steps and reviewing regularly. They employed mock-ups rather than extensive up-front planning and documentation, used prototypes to prove an idea and elicit otherwise missing requirements, and required working with the client directly[NoO3-05].

However, his team also used other processes that were less in keeping with what we consider agile software development to be. They would use numerical methods1 to solve things, performing experiments through simulation. They would use new materials in novel ways2, offering some of the benefits of traditional materials but without their limitations. Additionally, they worked to a limited budget and kept track of what was possible3, rather than revising costs and requesting additional funding. In a critical departure from agile software development principles, they were unable to provide a constantly deliverable product as they did not have multiple working versions from which a preferred solution could be selected. Half done for them was not done at all.

Christopher Alexander built processes that facilitated faster feedback and provided the freedom to do the best thing to get that feedback while balancing it against a budget. Remember, this was the 1970s, long before DevOps4 turned up. Traditional builders had limited time and money for construction, and the same is true of any modern architectural project. In that respect, his process was no different. The difference was his commitment to producing something viable within that budget rather than pushing to have the budget increased. When the team needed to add something, they took something else away—even when this trade was thrust upon them[Battle12].

Christopher Alexander’s developments had the capacity for adjustment built in; nothing relied on everything else being just so before it was usable. However, this called for a different way of working; elements needed to be adaptable. This was why he sought out new materials. For him, it was essential to have the opportunity to make adjustments on site in response to last-minute revelations5. These revelations were the unpredictable issues brought to his attention by the process of construction, not just during, but by the feedback from the act of constructing—things no-one could have anticipated before beginning the work.

Some agile development methodologies suggest a similar approach. Deploying working code to clients early to get feedback is similar to constructing within a budget so that the client gets something, even if everything else goes wrong. Working to an overall budget and realigning as the project progresses draws parallels with the principles of working with adaptable materials and building flexibility into the process. Prototypes and spikes6 are manifestations of the cardboard cut-out approach to getting on-site feedback. Simulations of architecture mirror the making of walking skeletons in code, as both of them prove that the overall structure works as expected.

Innovation

Christopher Alexander and his team were known for inventing new processes to get things done that were realised just in time to meet their needs7. Unlike other architects, he was hands-on during his building projects, often finding new ways to achieve his goals while keeping costs low. The whole team worked like this, constantly taking into consideration all of the available information about the construction site. The availability of labour, tools, and materials guided them to discover new processes within easy reach, often undocumented or unique, but always appropriate.

Many examples exist throughout his printed works illustrating the way in which Alexander’s team developed solutions for specific contexts. In The Nature of Order, Book 3[NoO3-05], there is a collection under the title The search for new materials (starting on page 518) in which he describes many such instances as well as some of his reservations. One complaint relates to renewable materials having lost some of their value as they have been made less adaptable to their environment by the processes of others. Later, he gives credit to the developers of aerated concrete blocks8, which might seem surprising. But for him, the key was that they were adjustable and conformed to the builder’s needs as well as wood or clay might.

Alexander paid attention to the environment right from his first project9. In 1961, while living in Gujarat, he developed a way to build a roof for a new school. Local resources were scarce. There was no wood to speak of and almost no access to transport for bringing materials in; however, pot-shaped guna tiles were readily available. His approach involved using stacks of these tiles, which made it possible to place arches in parallel lines and produce a dome. Supporting material is not free, and the self-supporting nature of the arches overcame that requirement. The outward thrust from the arches would have been a problem, but he found a solution in the nearby cotton fields; the dome was tied using the plentiful supply of tensile steel straps, which were originally intended for tying cotton bales. The whole process was suited to the materials that were available.

GunaTileDome —Christopher Alexander, The Center for Environmental Structure, The Nature of Order, Book 3[NoO3-05], p. 527.

When I researched his history, I was shocked to learn that Christopher Alexander used all the available materials rather than just traditional ones. I had assumed he would have used more well-proven materials as they had easier-to-understand properties. On the contrary, he developed innovative ways of working with new materials as a regular part of his processes. This use of modern materials in novel ways meant that he could hardly be called a traditionalist.

He developed many new ways to work with concrete, challenging brutalist architecture’s dull and repetitive results[NoO3-05]. He worked with high-pressure water jets[NoO3-05], which were typically used to cut steel, to cut stone for experiments relating to decorative layout. And then there were the revelations about traditional materials, such as the way in which stout wooden beams, though costly up front, would be more environmentally friendly and cost-effective than the smaller stud forms simply due to the many hundreds of years for which the buildings might stand[NoO3-05].

Locally, but remote

Working at the site was a common requirement for Christopher Alexander, but one project10 proved he could even overcome that constraint when necessary. Although his team was not asked to complete the project, he still solved the problem of working remotely. The contract conditions included a requirement to lay all 8000m2 of flooring during a two-month window during the construction of a new concert hall in Athens.

Alexander needed access to a view of the floor and the actual materials, not merely an image of them, so his team rented out a warehouse sufficiently large to house sections of the final product. They cut tiles and placed them on fibreglass mats. When the design finally looked right, viewed as they would appear in their ultimate resting place, they glued them down. The completed mats were also cuttable, meaning they could adapt to any deviations and match unexpected errors in the borders when they arrived in Athens. The process proved that as long as you understand your goals (to view the work as close to reality as possible), a solution, along with a new tool or technique, should present itself.

Developers who stick to a plan and use existing tools, without inventing anything new to solve their problems, are probably not following an agile development process. A software developer should think about the product, how to build it, the tools they use, and how to improve those tools. Uninventive developers are lucky to be able to do a job that does not present novel requirements. But then again, perhaps they’re not so lucky after all.

1

Examples can be found in [NoO3-05] where they use finite element analysis for wooden structures, and [NoO4-04] for a concrete bridge structure. Other examples exist such as the reinforced concrete trusses for the Julian Street Inn.

2

Gunite, or sprayed concrete, is a quick-drying form of concrete shot under pressure at a target surface. It’s normally used to coat the surface of cavities or reinforce an otherwise looser form to give it rigidity. Examples include the hull of swimming pools or creating a skin for a cliff edge to reduce erosion.

3

There is an extensive breakdown of how they developed a budget system in [TOE75]. The aspect of budget is also covered in detail for the West Dean project in [NoO3-05] from page 238 and onward, and also the Eishin Campus project in [Battle12] where there is evidence of how the established methods naturally tend to budget extension and waste (e.g. the concrete lake slab on pg 357).

4

DevOps is a relatively young branch of a manufacturing and product development process of ongoing improvement and introspection, but tuned for software development.

5

Mentioned in [APL77], [NoO3-05], and less directly in other works.

7

See [TPoH85] for examples of new roof and brick design to work well with what was available and the unique requirements of the project. Many other examples can be found in [NoO3-05].

6

A spike is what older people like me call a proof-of-concept.

9

The development of the school roof is documented in The Nature of Order, Book 3[NoO3-05] on pages 526-527.

8

The blocks he refers to are a brand called Hebel. They provide the blocks and the necessary tools to work with the novel material. They can be cut with wood tools and readily adapt to any problem.

10

The project is documented in The Nature of Order, Book 3[NoO3-05] on pages 562-572.