Live data from Hacker News

Principles of Green Software Engineering

principles.green

61–70 of 99 posts

Re: Principles of Green Software Engineering

#61
Computational efficiency is great, but Principle 6, "Reduce the amount of data", is out of place. Where data is information and informed decisions are better decisions, less data results in worse decisions and inevitably more energy usage down the line. So something is wrong or some qualification is missing in this phrase.

Also note that people are carbon so I read Principle 1 as reduce the amount of people (seats and time) it takes to make the software and make the apps quick to use so people don't waste time waiting on them.

Re: Principles of Green Software Engineering

#62

Earlier quoted context omitted.

Honestly, the number one thing any of us can do for the climate is to contact our representatives regularly about climate pricing. Absent that, we’ll never slow our pollution enough to stop runaway warming. Everything else is a micro optimization that may even distract us from the only thing that will get us over the line.

> the number one thing any of us can do for the climate is to contact our representatives regularly about climate pricing That's probably correct. > Absent that, we’ll never slow our pollution enough to stop runaway warming. But that's probably wrong. People managed to make non-polluting energy sources more compelling than the polluting ones even when the pollution is fully externalized. We will probably see a huge c…

> But that's probably wrong. People managed to make non-polluting energy sources more compelling than the polluting ones even when the pollution is fully externalized.

I don't think this is true. In particular, while the price is lower for "non-polluting", we still don't have an answer for clean base load generation (well, we do--nuclear--but that seems to be off the table). Even ignoring the storage problem, I don't think we (Americans) are on track to power our entire economy with renewables by 2050. We'll probably be able to meet our current electricity demand with renewable energy by 2050, but we also need to electrify almost every other sector in our economy--most notably transportation--which means we need to generate a whole lot more electricity than we do today.

Also, if wealthy countries don't implement any kind of border adjustment, we'll just keep outsourcing our pollution to the likes of China who will happily keep burning (ever cheaper) oil.

Re: Principles of Green Software Engineering

#63
I've been having the same so of thoughts for a few years. glad someone is writing this down.

so many inefficient systems/languages/algorithms are being used at scale, it is really disheartening. For instance, Python is the Ford F250 double cab dually of the software engineering world.

Re: Principles of Green Software Engineering

#64
post #33

It seems most of these boil down to: build more efficient software. Software that is more efficient with the network and CPU is also cheaper to run. So the incentives are generally aligned. When I deploy a system I want it to run on 5 servers not 50 for cost reasons not because I'm being green. If I'm being green by accident, that's a bonus. I'm glad on the "measure" side it gives examples of how to measure (though I…

I think there's something missing here. In how we operate applications. It's not unusual to run an application on a server where that server is using only 25% of its resources (e.g., ram and/or cpu). Then, there are many different servers running many applications all of which are under utilized. There are more efficient ways to operate these applications that drive up power efficiency. Google brags about the power e…

Pre-cloud it was always pulling teeth to get new hardware provisioned. You had to get past the guy who has realized his only power is saying no by refusing to write checks, and then you have to get IT to provision the box, and there may be physical layout issues that complicate doing that in the best way possible.

It's very common for someone to take all of those servers using 25% and do manual bin-packing with them. It's also common for changing features and customers to alter the resources needed after the manual process is completed, leading to further rounds of bin packing.

And every time you relocate services or hardware, there's a chance for an outage. That can become a wall you can't climb or cost you social capital every time it happens.

My general impression of Kubernetes is it's trying to solve that social problem with technology. We know how that usually goes, but any port in a storm, right?

Re: Principles of Green Software Engineering

#65

It seems most of these boil down to: build more efficient software. Software that is more efficient with the network and CPU is also cheaper to run. So the incentives are generally aligned. When I deploy a system I want it to run on 5 servers not 50 for cost reasons not because I'm being green. If I'm being green by accident, that's a bonus. I'm glad on the "measure" side it gives examples of how to measure (though I…

I do wonder how many kW of power things that HN generally disparages as bloated (Electron being the main one people talk about) actually adds up to versus more efficient technologies?

One of the elephants in the climate crisis room is coming to grips with how many watt-hours are appropriate to spend on a task that could be completed with human power alone.

As Denis Leary used to joke, we have exercise machines that mimic normal activities which we refuse to do, so we are all turning into hamsters. Maybe instead of a leaf blower I need a broom with a better design and just count the cardio I'm going go get against my budget for the week.

Maybe, as some people argue, getting down and looking at my plants closely avoids me having to spray fossil-derived chemicals on them based on incomplete information. It's a matter of perspective on whether that time is quality or just a chore. Some cultures elevate certain chores to an art form. Japanese gardening is but one example in one niche in one cultural group, but there are many others.

Re: Principles of Green Software Engineering

#66
post #25

I wonder if this might be penny wise and pound foolish. Hypothetically, if it takes even a single week longer to make code much more efficient and only 20% of that workforce is driving to work, making coffee, running their laptops, etc, do you come out ahead?

More directly how many cpu hours are needed to be saved to compensate for the carbon footprint of a single SV engineer? I'm guessing that a lot.

Re: Principles of Green Software Engineering

#68
post #25

I wonder if this might be penny wise and pound foolish. Hypothetically, if it takes even a single week longer to make code much more efficient and only 20% of that workforce is driving to work, making coffee, running their laptops, etc, do you come out ahead?

The XKCD comic on these needs a separate column for open source.

If thousands of companies are using my library, then there really is a case to be made for making it as efficient as we can within the bounds of maintenance concerns.

Re: Principles of Green Software Engineering

#69

Earlier quoted context omitted.

If the result or information presented by the most horrendous, energy inefficient, blockchain-backed, cloud replicated app results in a SINGLE person NOT traveling for a weekend, the carbon savings would completely demolish any cost for the software overhead. /Devil's Champion Argument Incoming/: Facebook's part in effectively coordinating most people in most parts of the world to stay home during the pandemic has pr…

I agree 100%. Reading through this thread has me damn well convinced that most folks have zero idea how much power things in their homes use.

It's interesting, I've been planning to move onto a sailing yacht for a while and part of the planning process has involved figuring out an energy budget which will inform what batteries and charging equipment (solar panels etc) are required to run a WFH (WFB?) setup. I bought a simple plug-in power meter and I was very surprised by the power usage of some things in my life!

Re: Principles of Green Software Engineering

#70
post #57
post #50

Earlier quoted context omitted.

There is no such thing as "clean energy". Energy always entails environmental impact. As an example, a wind turbine has large environment impact: * During its production: mining to get the metals, heavy metal work like making steel, cement, resins, etc. Digging large mines, driving trucks all around with heavy materials * During its operations: noise, visual pollution, often destroying wildlife sites as people don't…

I was similarly surprised when I read about a few ecological downsides of solar power. What is the best material you found on "full comprehensive costs (including downsides and externalities) of energy sources"?

You can try talks from this guy, he's a french energy and climate expert. I found that he explained very well the root of the issue between growth, energy and climate impact.

Here is a talk he did for the MIT media lab in english: https://youtu.be/s254IPHXgVA

Post reply on HN