Most of what gets written about software and the environment is about carbon. That is fair. Carbon is the big, slow problem. But there is something closer that I keep coming back to, and it is the generator.
In much of Nigeria the grid is not the main source of power. It is the backup to the backup. Offices, shops, homes and the small server rooms behind local businesses run on diesel and petrol generators for hours every day. A World Bank study of Lagos estimated that generators meet about half of the city’s energy demand, and named them the third-largest source of fine particle pollution in the city.
The detail that stayed with me from that study is a simple one. Generator smoke comes out close to people. A power station sends its smoke up a tall stack, usually far from where anyone sleeps. A generator sits by a shop front, behind a house or on an office roof, and its plume reaches the ground within metres. The picture above is a rough sketch of that. The smoke spreads as it travels, and where it touches the ground is where people breathe.
The fine particles are what matter. They are small enough to get deep into the lungs, and breathing them for years is linked to heart and lung disease. Lagos has recorded yearly averages several times above the World Health Organization’s guideline. Generators are far from the only cause. They are just one of the few that sit right next to us.
My background is in environmental toxicology, so I tend to ask one plain question. Who is exposed, and to how much? Asked about software, the answer is uncomfortable. Every hour a server runs on a generator, and every hour a phone charges from one, is paid for partly in the air of the street around it.
I want to be careful here. No single app decides whether a neighbourhood breathes clean air. The grid, power policy and the price of fuel matter far more. But software is not neutral either, because it decides how much power gets drawn, and when.
Some of that is ours to change. A server that does half the work per request draws less power, and on a generator that is fuel not burned beside somebody’s window. An app that drains less battery needs less charging. A report or a backup can often wait for the grid to come back instead of running on diesel. And a server room should be able to see how much of last month’s power came from its generator, which most cannot. That last one is the problem Snowleaf is built around.
Health often lands where carbon figures do not. A tonne of CO₂ is a number on a report. The smoke outside your office is what your staff walk through every morning. If the code we ship can cost them a little less of it, that is reason enough to write it well.
Sources. World Bank, The Cost of Air Pollution in Lagos (2020). World Health Organization, Global Air Quality Guidelines (2021).