← All writingWriting

Why the Physical World Doesn't Scale Like Software

I'm interested in why software can reach so many people while housing and infrastructure are still so difficult to build.

Digital copies and physical productionOne software source branches into three copies. Physical production needs material and assembly for each additional structure. SOFTWAREPHYSICAL PRODUCTION COPY 1COPY 2COPY 3 MATERIALASSEMBLYREPEAT
A conceptual comparison of copying software and repeating physical work.

What I'm interested in

You can have a phone with access to information, software, entertainment, and AI while living somewhere without decent housing or reliable infrastructure. Having more digital tools doesn't necessarily improve the place you live.

I want to understand why it's so much harder to scale improvements to physical living conditions. I've spent more time building software than working with physical systems, so I'm starting by trying to understand what makes them different.

Once a program exists, giving another person a copy usually doesn't require rebuilding it.[1] Another apartment needs its own materials, labor, site, transport, and approvals. Even with the same design, someone has to go through the work of making it again.

That's a fairly obvious difference, but I don't know how much of the cost around it is unavoidable and how much could change.

Some of the cost has to remain

Buildings take up space. Materials need to come from somewhere, and moving and assembling them takes energy. A digital design doesn't remove those requirements.

I don't mean that buildings could literally have zero marginal cost. What I'm interested in is whether we can keep reducing the time, labor, and coordination needed to build them, along with the cost of the physical work itself.

There are also costs that don't come directly from making the building. Land, financing, approvals, and delays can matter. Their importance will depend on the place and project, which is why I need to be careful about generalising from one production method.

Where I'd look

Robotics, manufacturing, modular construction, logistics, and software all seem worth understanding. Each could change different parts of the process.

A factory might make repeated components easier to produce. A robot might help with a task that's difficult or expensive for people. Software might help a contractor get the information they need before work starts, rather than after something has to be redone.

But I'd want to know how these ideas work across the full project. How much does it cost to set up the equipment? Can a factory get enough predictable orders? What happens when the site or local code requires a change to the design? Does saving time at one step actually make the home cheaper?

AI is interesting here too, though a better design or schedule still needs materials, people, and permission to build. I don't want to start with AI as the answer and then find a construction problem to put it on.

Following the whole project

If construction gets faster but a project is still waiting for approval, the total timeline might not change much. If material use improves but land is the main cost, the final price might not change much either.

I'd want to follow a project from the first decisions through to someone using the finished building. Where did it wait, what had to be redone, and which constraint actually limited it? Those details would help me judge whether a proposed technology changes enough to matter.

I'm also interested in which constraints require different institutions or incentives. Software could help people share information and still do little about a disagreement over what can be built on a site.

I don't have a specific solution yet. I want to understand the process well enough to pick a part of it where I could do useful work, instead of making broad claims about making construction like software.


  1. I mean copying the software, not running the service. Hardware, energy, maintenance, and compute still cost money. The distinction matters especially for services that run a model every time you use them. ↩︎

Next draft: Default Choices