Computing runs on
electricity.
The cost is invisible.
Every program spends energy. Almost none of them can tell you how much. Multiply that gap across the world's software and the waste is real, and unmeasured. This is the problem Joule exists to fix.
Data centers already draw
hundreds of terawatt-hours.
Data-center electricity use is measured in the hundreds of terawatt-hours per year, and estimates put it on track to roughly double before 2030. That is before counting the billions of devices running software at the edge, each drawing power one operation at a time.
per year
by 2030
software today
Figures follow IEA electricity estimates. Orders of magnitude, not point predictions.
"Efficiency is a choice we can only make deliberately once we can see the cost. Right now, at the level where code is written, we cannot." The premise
The tools optimize for speed.
Nobody prices the watts.
A profiler will tell you which function is slow. A build will tell you how large the binary is. Neither tells you the energy a function spends. So engineers optimize the number they can see, cycles and milliseconds, and the energy number stays a guess.
Speed and energy usually move together, but not always. Waking a radio, spilling a cache, and busy-waiting can all be fast and wasteful at once. Without a number, those trade-offs are invisible.
Make the cost
a first-class output.
Joule attributes energy to every function and operation, then compiles to C for a fast native binary. Every build carries a receipt. When the cost is a number in front of you, efficiency stops being a virtue you hope for and becomes an engineering target you can hit.
A receipt on every build, broken down by function and by category.
Set an energy ceiling on a function and let the build report against it.
Change the code, diff the receipts, and watch the joules move.