News for hackers. Stuff that matters.
Re:Insect collapse by amelius on Tuesday January 15, 2019 @05:32AM (#18910154)
> And how do I square the fact that I work on flipping bits in computers somewhere that represent some fiction of our collective imagination, all the while burning more energy and fuel and contributing to the massive side show that distracts us from our self-destruction? Not well.

Well at least the mass consumption of virtual goods (software) seems to produce less waste than the mass consumption of physical goods. Your mission is to write software that's so good that people do not need to upgrade their hardware.

Re:Insect collapse by xg15 on Tuesday January 15, 2019 @05:53AM (#18910235)
I'm not sure about that. Sure, the software itself won't, but the hardware needed to run the software absolutely has environmental impact: It drives habitat destruction due to mining the raw materials, pollution from waste by the mining and production processes and than more pollution when the hardware is decommissioned and ends up on landfills.

Then there is the enormous energy demand of IT systems, which in turn requires more fuel to drive them.

The industry itself is not helping either. Not just is writing resource efficient software often not a priority, it's sometimes even seen as an anti-pattern (due to a misunderstanding of "premature optimization"). In the latest iteration, we have technologies like blockchains that make wasting energy into a feature.

> Your mission is to write software that's so good that people do not need to upgrade their hardware.

Meanwhile, the mission of your superiors is to make sure people upgrade their hardware as often as possible so the revenue keeps coming in.

Before there is a large-scale change of that culture, I don't think software development will be innocent in this.

Re:Insect collapse by open-source-ux on Tuesday January 15, 2019 @07:42AM (#18910731)
...the hardware needed to run the software absolutely has environmental impact

I agree. When I look at other industries I see efforts to reduce energy consumption. Most programmers, in contrast, couldn't care less. The most popular languages are the least energy efficient. But they make life easier for developers, or as devs love to say 'more productive'. Who cares if you need to add more and more server boxes to your setup, after all 'hardware is cheap' - the default response of countless programmers everywhere. This industry is absolutely rife with hypocrisy.

Re:Insect collapse by Zoh0eich on Tuesday January 15, 2019 @12:32PM (#18912973)
It's not just the language though. It is also what's done with the language. Increased productivity also means all kinds of marginal convenience and monetization features will get implemented which gobble up additional compute cycles.

If everything were written in assembly we simply wouldn't have the human resources to implement 500 ad trackers on a web browser. Not to mention that the web browser would be far more rudimentary in the first place.

Re:Insect collapse by nopriorarrests on Tuesday January 15, 2019 @07:49AM (#18910763)
>The most popular languages are the least energy efficient.

What does it mean?

Re:Insect collapse by rollo on Tuesday January 15, 2019 @11:16AM (#18912210)
JS is the most popular language. Thus most software is wasting orders of magnitude more energy than it should. The same functionality would require less than a tenth of processing power (and thus energy and physical hardware) if it were implemented properly.
Re:Insect collapse by nopriorarrests on Tuesday January 15, 2019 @11:41AM (#18912430)
Properly is like what, assembler? So lets spend 100x power on developers notebooks and 100x of their paid time and rewrite eveything in asm so it will work faster? Or what "implemented properly" means?
Re:Insect collapse by open-source-ux on Tuesday January 15, 2019 @02:50PM (#18914321)
Properly is like what, assembler?

No-one is advocating that. There are dozens of fast, high-level programming languages to choose from.

Today, dynamic programming languages are the most popular - and often (not always) the least performant and least power efficient.

What does energy efficient mean? Here's one perspective explored in a paper:

Energy Efficiency across Programming Languages: How does energy, time, and memory relate?

https://sites.google.com/view/energy-efficiency-languages

Here's the related Hacker News discussion:

https://news.ycombinator.com/item?id=15249289

Dynamic languages benefit too from attention to energy-efficiency and speed in their evolution.

When PHP 7 was released, Rasmurf Lerdorf, the creator of PHP, said the performance improvements meant fewer servers, smaller memory use and reduced CPU activity - all of which equalled less power or electricity consumed.

When you consider the millions of servers in use, that additional language efficiency adds up to a substantial saving in electricity use. You can watch a segment from his presentation where he talks about this here - and the calculations he made of potential CO2 savings:

https://youtu.be/umxGUWYmiSw?t=15m16s

Re:Insect collapse by Zoh0eich on Tuesday January 15, 2019 @12:35PM (#18913005)
Properly in this context would mean achieving the same effect at the lowest possible overall expense of energy (including those of developer laptops) given specific hardware.

Google spends a lot of effort optimizing their software because they bear the energy cost of running it in their own data centers.

Websites do not bear the energy cost of running their code on enduser devices.

The lack of incentives turns energy waste into an externalty which means it is not factored into development.

Re:Insect collapse by xg15 on Tuesday January 15, 2019 @06:03PM (#18916533)
Well, climate change doesn't care very much about developer hours. And the amount of power the dev notebooks spend is probably negligible compared to the power your production servers use. So in the context of this discussion which is explicitly about energy efficiency, I'd say this is absolutely correct.

And yes, there absolutly nonsensical stuff going on in modern software stacks, that could - in theory - be cut without any negative consequences. E.g., contemporary languages and framework seem to do a lot of stuff repeatedly at runtime that you could just as well precompute during build. However, this would require a completely different software stack than what we have now, so from our current point of view, it would be hard to change.

Re:Insect collapse by rollo on Tuesday January 15, 2019 @02:01PM (#18913834)
In a modern compiled language and without using ten layers of abstraction. It is very feasible and does not require significantly more development effort, at least not compared to the energy and material savings.
Re:Insect collapse by nopriorarrests on Tuesday January 15, 2019 @03:34PM (#18914829)
If it "would require less than a tenth of processing power" while being "very feasible and does not require significantly more development effort" I think you should get in touch with Google or Facebook with your suggestion.

You can solve two problems at once - you will lower their carbon footprint to 1/10 of their current one, and become a multi-millionaire or even billionaire. Sounds like a double win to me.

Re:Insect collapse by rollo on Tuesday January 15, 2019 @05:04PM (#18915923)
That's the problem we're talking about. It is very feasible but only if performance and energy use is something you want to focus on, while accepting the economic penalty of not prioritizing time-to-market. This is just yet another case of unchecked capitalism and free market destroying the planet. Focusing on energy and resource conservation may be more important as well as feasible, but it's not quite as economically competitive. Unless the industry as a whole decide to do what's morally right, or it is regulated and mandated by the government.
Re:Insect collapse by eecc on Tuesday January 15, 2019 @09:47AM (#18911425)
Unfortunately datacenters don't run on pixie dust! I'd love to know the carbon billow produced in a 5 social media session.
Re:Insect collapse by gaius on Tuesday January 15, 2019 @06:15AM (#18910332)
mass consumption of virtual goods (software) seems to produce less waste than the mass consumption of physical goods.

I read that bitcoin produces more CO2 than the global aviation industry...

https://jalopnik.com/bitcoins-annual-carbon-footprint-is-equ...

Your mission is to write software that's so good that people do not need to upgrade their hardware.

Email, word processing, the vast majority of commercial workloads, would work fine on machines with a tiny fraction of the typical PCs power today. But developers insist on using godawful “frameworks” to do the most trivial things. Like JS based text editors that take gigs of RAM to do less useful stuff than Emacs could do in megs.

The PC of the future is something like an RPi with an eInk display with a solar panel on the other side.

Re:Insect collapse by titzer on Tuesday January 15, 2019 @06:38AM (#18910438)
> I read that bitcoin produces more CO2 than the global aviation industry...

It's big (~23Mt), but not as big as aviation (~860Mt).

https://www.atag.org/facts-figures.html https://digiconomist.net/bitcoin-energy-consumption