Skip to content
Tech News
← Back to articles

From Stonemasons to Carpenters

read original get Milwaukee M18 Cordless Drill Driver → more articles
Why This Matters

This piece offers a compelling analogy for how AI is reshaping software engineering: developers are shifting from being 'stonemasons' who hand-craft code line by line to 'carpenters' who build the structural forms—tests, documentation, guardrails—that shape AI-generated code. This reframing matters because it suggests the core skill set for engineers may pivot from writing code to designing constraints and validation systems, which has major implications for hiring, training, and workflow design across the industry.

Key Takeaways
Worth a Look

Milwaukee M18 Cordless Drill Driver — Just as carpenters shifted from raw materials to building the forms that shape the final structure, today's builders—whether in wood or code—need reliable tools that adapt to new methods of creation. A dependable cordless drill like the Milwaukee M18 is a staple for anyone doing the kind of formwork carpentry described in the article, from bridges to everyday DIY projects. It's a solid, versatile tool that fits the hands-on legacy this piece celebrates.

See Milwaukee M18 Cordless Drill Driver on Amazon → Affiliate link — we may earn a commission on purchases, at no extra cost to you. Product picked by AI based on this article; it is not a tested recommendation.

My grandfather spent his career building bridges, overpasses and box culverts up and down the central coast of California. Despite these being concrete structures, his occupation was that of carpenter. The reason he was a carpenter is because they would build large wooden structures, which would then create a form (essentially a mold for the concrete to be poured into). This is something that I keep returning to when considering how the software industry is changing because of AI, and specifically the ability to generate source code.

Historically, bridges were built by stonemasons. They would directly manipulate the material (stone) as the bridge was being built, and as they put more stones in place, the bridge would incrementally grow till it achieved its final form. Famously, the Romans would not even need to use mortar in their construction.

However, the current construction techniques are quite different. Currently, most bridges are built out of concrete. When my grandfather built these structures, he and his crew were not stonemasons, nor did they incrementally build the bridges piece by piece. Instead, they were considered carpenters, and spent the majority of their time building the wooden forms so that the concrete could be poured to make the final bridge. This is a significant change from how stonemasons built bridges.

So how does this analogy apply to coding in the age of AI? I propose that software development is moving from an age of stonemasons, to that of carpenters. Historically, software developers were more like stonemasons, working directly with the medium (code vs stone) and incrementally building systems one stone (Line of Code) at a time. However, due to the emergence of AI code generation, I propose that developers should see themselves more as bridge-building carpenters. Instead of building the system up incrementally, they are building the forms (adding structure to the system via tests, documentation, guardrails) that allow the code to then be generated correctly. This requires a shift in how software is developed, and I believe has significant implications.

Implications for development

Everyone is a Product Manager now

Historically, there has often been a sense that development was “real” work, and that project management was somehow less technical/valid. However, now that every developer is forced to focus on the boundaries/interfaces of the software they are building, and not just think about the internals, essentially every developer is being asked to become a Product Manager. Instead of the most important question being “how to build this”, or “can we build this”, now the most important question is “what should we build”. Having to think in this way will be a big shift for many developers.

Software Engineers doing more Software Engineering

One definition of Software Engineering is

“Software engineering is the branch of computer science that creates practical, cost-effective solutions to computing and information processing problems, preferentially by applying scientific knowledge, developing software systems in the service of mankind.”

... continue reading