What Chinese Metaphysics Can Teach Us About Software Systems

What Chinese Metaphysics Can Teach Us About Software Systems

A Diagnostic Framework Built on 五行 (Five Phases)

This is a hypothesis in progress. The mapping is not settled. But I think the diagnostic capacity of 五行 is exactly what’s missing from how we talk about technology today.


In Chinese metaphysics, 五行 (Five Phases) describes how elements relate in cycles of generation and control. It is not a static classification system. It is a dynamic model of how energy moves, transforms, accumulates, and fails to flow.

I’ve been thinking about whether this framework can describe software systems. Not as metaphor, but as a structural grammar — a way of understanding how components relate, and where systems lose their way.

By system, I mean the full stack: not just the software and hardware, but the human need it exists to serve and the economic reality it operates within. 五行 is useful precisely because it holds all of these together in a single frame.

What follows is a working hypothesis.


The Five Phases, Mapped

The 相生 (generative) cycle moves in sequence: 土 → 金 → 水 → 木 → 火 → 土. Each phase nourishes the next. Each phase is also checked by another in the 相剋 (control) cycle. Balance is not a static state — it is the ongoing result of generation and control held in proportion.

Here is the mapping:

土 (Earth) — Hardware and Infrastructure

土 is the ground. It is what everything else stands on. In software systems, this is the physical layer: servers, data centres, networking hardware, power infrastructure. It does not compute. It enables computation.

Its generative role: without foundation, nothing above can exist.

Its excess state, 土旺 (Earth excess): infrastructure that accumulates beyond what the cycle can absorb. Capital pooling at the base, unable to transform into value upstream.

Its deficiency state, 土虚 (Earth deficiency): infrastructure collapse. The layers above have nothing to stand on.


金 (Metal) — Operating Systems, Runtimes, and Platforms

金 refines. It takes the raw material that 土 provides and shapes it into something usable. In software, this is the operating system, the runtime environment, the cloud platform, the API layer. It does not solve problems. It creates the structured conditions under which problems can be solved.

Its generative role: 金 takes raw infrastructure and makes it accessible to what comes above.

Its excess state, 金旺 (Metal excess): over-rigid platforms that over-refine, over-restrict, and over-govern. Capability without accessibility. The compliance layer that prevents the application from breathing.

Its deficiency state, 金虚 (Metal deficiency): no stable platform. Every layer above must reinvent the ground it stands on.


水 (Water) — Human Need

This is where most engineering frameworks go silent.

道德經 (Tao Te Ching) Chapter 8 says:

上善若水。水善利萬物而不爭,處衆人之所惡

The highest good is like water. Water benefits all things and does not contend. It dwells in places people disdain.

Software does not create need. It responds to it. The best code is no code — code is the reluctant, necessary response to a problem that could not be solved any other way. Need is upstream of everything.

水 is formless until given shape. It flows to the lowest place. It is the living purpose that enters the system before any line is written. Without it, application logic is self-referential — elegant internally, purposeless externally.

Its generative role: 水 nourishes 木. Genuine, specific human need gives application logic something real to act upon. Logic that grows from real need has direction. Logic that grows without it wanders.

Its excess state, 水旺 (Water excess): abundant, unarticulated need with nowhere to go. Demand the system has no capacity or will to serve.

Its deficiency state, 水虚 (Water deficiency): software built for its own sake. Products built for engineers, not users. The system functions. No one needed it.


木 (Wood) — Application Logic and Software

木 grows. It takes what 水 provides and gives it living structure. It is directional, purposeful, alive — and like all living things, it is subject to entropy.

Code is not neutral. It accumulates complexity. It branches in directions the original need never anticipated. It requires pruning, or it overgrows. This is not a failure of software engineering — it is the nature of 木. The framework expects it.

Its generative role: 木 produces 火. When application logic is sound and the need it serves is real, value is generated and felt in the world.

Its excess state, 木旺 (Wood excess): application logic that has outgrown the need that created it. The monolith. The service that does everything. Software serving its own complexity rather than the problem it was built to solve. Entropy mistaken for richness.

Its deficiency state, 木虚 (Wood deficiency): anemic logic, stunted by over-rigid platforms or starved of meaningful problems. The team that cannot ship because the constraints have become the work.


火 (Fire) — Human Benefit and Economic Value

火 transforms and radiates. It does not accumulate — it gives off. It is the phase of maximum outward expression: the value a user experiences when their need is genuinely met, the economic return that flows from real utility, the social trust that accrues to systems that serve honestly.

And 火生土 (Fire generates Earth) closes the cycle: experienced benefit generates revenue, trust, and social licence, which fund the next round of infrastructure. The cycle returns to its beginning.

Its generative role: 火 feeds 土. Without the return of value into the foundation, the cycle collapses.

Its excess state, 火旺 (Fire excess): hype and spectacle. Promised transformation without the structural logic to deliver it. The demo that cannot become a product. The valuation that cannot become a business.

Its deficiency state, 火虚 (Fire deficiency): systems that function but produce no felt value. Technically complete, humanly invisible. The cycle starves at its completion.


The Control Cycle as Diagnostic

五行 does not moralize. It diagnoses. The 相剋 cycle names the relationships through which each phase checks another — and through which, when proportion is lost, pathology develops.

土克水 (Earth controls Water): Infrastructure over-controlling human need. When compute is expensive and concentrated, real problems cannot reach the system. The people who most need solutions are priced out before their need can enter the cycle at all.

水克火 (Water controls Fire): Need without structure extinguishes benefit. Unshaped demand that never gets translated into working software produces nothing felt. Good intentions without execution.

火克金 (Fire controls Metal): Runaway value-seeking corrupting the platform layer. When economic return becomes the dominant signal, platforms optimise for extraction rather than enablement. The runtime layer begins serving 火 rather than channelling 水.

金克木 (Metal controls Wood): Over-rigid platforms stunting application logic. Excessive constraints — compliance layers, sandbox restrictions, API gatekeeping — prevent software from growing in response to genuine need. 木 is pruned before it can reach.

木克土 (Wood controls Earth): Overgrown application logic destabilising infrastructure. Bloated, entropic codebases making demands the foundation cannot sustain. Technical debt as geological pressure.


A Diagnosis of the Present Moment

The current AI infrastructure moment is a case study in 土旺 — and specifically in 土克水.

The 14 largest data centre operators are projected to spend close to $750 billion in 2026 (BloombergNEF). The Stargate project targets $500 billion and 10 gigawatts of power. Over 23 gigawatts of capacity was under construction globally as of late 2025.

And yet: AI-related services generated roughly $25 billion in revenue in 2025 — about 10% of what hyperscalers spent on infrastructure that year. Only 25% of AI initiatives have delivered their expected returns. In Q2 2025 alone, nearly $40 billion of $91 billion in global venture funding went to just 16 companies. Hyperscalers lock in GPU supply through multi-year contracts, leaving smaller builders on spot-market premiums or months-long wait lists.

土 has grown beyond what the cycle can absorb. 水 — genuine human need — is being dammed rather than channelled. Smaller builders, who would be the ones translating specific human need into working software, cannot access the foundation.

The cycle completes technically. It fails humanly.

This is not only an economic imbalance. It is a structural one. And 五行 gives it a shape that purely financial or technical frameworks do not.


What This Framework Offers

五行 applied to software systems is not a replacement for technical analysis. It is a complementary diagnostic layer — one that asks different questions.

Not only: is this system stable and efficient?

But: where is the cycle blocked? Where is energy accumulating without transforming? What needs to be restored for flow to resume?

Most post-mortems identify what broke. They are less good at describing the relational dynamics that made the breakage inevitable — the slow accumulation of imbalance across phases that individually seemed rational.

五行 models systems as dynamic and relational rather than as component inventories. Imbalance is always a process, not an event. And the cycle has memory: 土旺 doesn’t happen overnight. It builds through accumulated decisions, each locally reasonable, that collectively produce a state the cycle cannot sustain.

Software and hardware do not operate in silos. They exist within human society. A framework that only asks whether a system is technically sound is asking too little.

The full mapping — including how the control relationships can be used to prescribe corrections, not just diagnose conditions — is work still ahead. 木 is alive, which means the framework itself is subject to growth and entropy.

But the shape is here. And I think it is worth building on.


The Reflective Engineer explores the intersection of software practice, Taoist philosophy, and the questions that technical frameworks alone cannot answer.