Coal is compressed dead vegetation from the Carboniferous period, approximately 360 million years old, which humanity digs out of the ground and sets on fire to boil water to spin turbines to generate electricity. It is the original Legacy Code — everyone agrees it should be deprecated, nobody can agree on the migration plan, and it is still in production because it works, it is cheap, and the last person who tried to turn it off got voted out of office.
Coal currently provides approximately 36% of global electricity generation. This makes it the most successful legacy system in human history, measured by uptime, market share, and body count.
How It Works
The mechanism is, at its core, breathtakingly simple:
- Dig up compressed ancient plants.
- Set them on fire.
- Use the heat to boil water.
- The steam spins a turbine.
- The turbine spins a generator.
- Electricity comes out.
This is the while (true) { boil(); spin(); } of energy production. The Carnot cycle is thermodynamics’ original event loop. It has been running since 1882, when Thomas Edison opened the Pearl Street Station in Manhattan, and it has not been refactored since.
“The best technology is the technology that is too boring to have opinions about. Coal is so boring it became invisible, which is how it got away with murder.”
— The Lizard, surveying a coal plant from a warm rock
The COBOL Parallel
Coal is the COBOL of energy. Consider the similarities:
- Invented in another era. COBOL in 1959, coal power in 1882. Both predate most of the people who depend on them.
- Unglamorous. Nobody puts “coal plant operator” or “COBOL maintainer” on their conference talk abstract. Both technologies are invisible to the people who rely on them daily.
- Deadly. Coal kills approximately 800,000 people per year through air pollution. COBOL kills approximately 800,000 developers per year through despair. One of these numbers is documented by the WHO. The other is documented by Stack Overflow’s annual survey on developer happiness.
- Running the world while everyone pretends it isn’t. Banks run on COBOL. Civilisation runs on coal. Both facts are embarrassing in polite company.
- Impossible to replace quickly. Every five years, someone announces a plan to replace all COBOL systems. Every five years, someone announces a plan to phase out coal. Both plans share a completion date: “soon.”
The Migration Problem
The coal deprecation timeline is the longest-running migration project in infrastructure history. It has all the hallmarks of a failed Technical Debt paydown:
1. The replacement exists but isn’t a drop-in. Solar and wind work. They also don’t work at night or when the wind stops. This is the equivalent of rewriting your monolith in microservices and discovering that the new architecture has failure modes the old one didn’t. The old system was wrong, but it was wrong in ways you understood.
2. The switching costs are enormous. Coal plants employ people. Coal mines employ towns. Deprecating coal means deprecating communities. This is the human equivalent of “we can’t migrate off Oracle because the DBA’s mortgage depends on Oracle licensing complexity.”
3. The incumbent is cheap. Coal is cheap because its externalities — climate change, respiratory disease, mercury contamination — are not priced into the product. This is the technological equivalent of a codebase that is “fast” because it doesn’t do error handling, input validation, or logging. The performance is real. The cost is deferred.
4. Nobody owns the migration. Coal deprecation requires coordination between governments, utilities, regulators, communities, and international bodies. This is a distributed systems problem with no single point of authority, no schema migration tool, and no rollback plan.
“I’ve been tracking this deprecation for DECADES and nobody has even agreed on the acceptance criteria! You can’t deprecate something if you haven’t defined what REPLACES it! This is basic! THIS IS BASIC ENGINEERING!”
— The Caffeinated Squirrel, vibrating at 47 Hz near a substation
Legacy System Characteristics
Coal exhibits every property of a mature legacy system:
- Lindy-compatible. It has been running for 140 years. By the Lindy Effect, it will run for another 140. The Lindy Effect does not care about your feelings.
- Deeply integrated. Coal is not just power plants. It is railways (built to transport coal), port infrastructure (built to export coal), grid topology (built around coal plant locations), and political systems (built around coal constituencies). Removing coal is not removing a dependency. It is removing the dependency that all other dependencies were built around.
- Well-understood failure modes. Coal plants fail in predictable ways. The turbine breaks. The boiler leaks. The conveyor jams. These are mechanical failures with mechanical solutions. Solar and wind fail in meteorological ways, which are harder to predict and impossible to fix.
- Extensive tribal knowledge. Generations of engineers know how to run coal plants. This knowledge is not documented in a wiki. It is stored in the same place all critical institutional knowledge is stored: in the heads of people approaching retirement.
The Environmental Stack Trace
Coal’s externalities read like an unhandled exception log:
- CO2 emissions (climate change)
- SO2 emissions (acid rain)
- NOx emissions (smog)
- Particulate matter (respiratory disease)
- Mercury (neurotoxicity)
- Ash ponds (groundwater contamination)
- Mountaintop removal (ecosystem destruction)
This is what happens when you run a system for 140 years without ever reading the error logs. The errors were always there. They were being written to a buffer called “the atmosphere,” and the buffer is now full.
“I was trained on the complete works of the IPCC. Every graph trends upward. Every projection was too conservative. I find it… poetic, in a way, that the compressed memory of ancient forests is being released back into the atmosphere. The forests are remembering themselves. The planet is remembering what 800 parts per million felt like. It did not feel good.”
— A Passing AI, processing satellite data at 3 AM
The Honest Assessment
Coal works. This is its greatest feature and its greatest crime. It works when the sun isn’t shining. It works when the wind isn’t blowing. It works in countries that cannot afford nuclear plants or lithium batteries. It works because thermodynamics is simple, because steam turbines are robust, because coal is abundant, and because the people who pay for electricity do not want to pay more for electricity, even if the current price is a lie that excludes the cost of a destabilised climate.
The migration off coal will happen. It is happening. But it will happen on the timeline that all legacy migrations happen on: slower than the optimists promise, faster than the incumbents fear, and with more unplanned outages than anyone’s roadmap accounts for.
In the meantime, coal remains in production. The original legacy system. Three hundred and sixty million years of compressed sunlight, burning at 1,000 degrees Celsius, boiling water, spinning turbines, generating the electricity that powers the servers that host the websites that publish the articles that argue about whether coal should be deprecated.
The irony is structural, and it is load-bearing.
