5 ms·
I'm sure this is really well intended, but the individualization of environmental guilt is a major problem. [0] Where I agree with the article is to use tools
by jefflombardjr 5y ago
I'm sure this is really well intended, but the individualization of environmental guilt is a major problem. [0]
Where I agree with the article is to use tools like lighthouse and write code that uses the language properly. It is absolutely individual's responsibility to do this. The responsibility of making code efficient (dare I say "green") lies in those writing the browser engines/compilers.
0: https://medium.com/@mitpress/individualization-plant-a-tree-buy-a-bike-save-the-world-ecb916df95e4 https://medium.com/@mitpress/individualization-plant-a-tree-...
- maelito 5y agoIndividualisation is just a step needed for collective change. From the individual to the state and then the world, everything is continuously collective. You just can't hope your institutions to change if a minority of citizen haven't proven lowering one's environmental impacts is possible, and made it socially desirable. Then institutional change can happen. In democraties at least, comsumer-citizens are necessary for the system to change.
- jefflombardjr 5y agoTotally. But not in software. Take a look at Code Complete: Chapter 25. Does a way better job explaining this than I could in a comment box.
- wmf 5y agoIn the developed world we've already gone beyond the optimal point of individual environmental responsibility and it's all diminishing returns from here.
- gruez 5y ago>The responsibility of making code efficient (dare I say "green") lies in those writing the browser engines/compilers. I don't get it. Are they not doing that? Performance and battery life is a major selling point for browsers. If anything the biggest failure is at the individual developer/site level, not that firefox causes your fan to spin into overdrive when it tries to load a SPA monstrosity.
- kitsunesoba 5y agoGoogle and Mozilla seem considerably less concerned about efficiency than Apple and Microsoft are. Safari is well known for being easier on the battery than Chrome and Firefox are on macOS, and pre-Chromium Edge had similar efficiency margins over Chrome and Firefox on Windows. I’ve heard that even Chromium-Edge tends to outperform its competitors on Windows even now. This starts to make sense when you consider that for Apple and Microsoft, end users are the customer and bad battery life is going to have implications on number of devices sold. For Chrome and a lesser extent Firefox, the “customer” is instead web devs, who are more interested in a constant stream of new features than they are efficiency. That said, both browser vendors and site devs are responsible. It doesn’t matter how optimized the browser is if a site loads tens of megabytes of dependencies and is written with expediency and cheapness in mind only.
- jefflombardjr 5y agoThey are 100% doing it. A lot of really bright people work on the engines/compilers. The problem is telling individuals to focus on optimization. Let's use javascript as an example. Say you need to transform an array. You can use `.map` or a `for` loop in javascript. You see a lot of articles like this https://dev.to/henryjw/array-map-much-slower-than-for-loop-57if https://dev.to/henryjw/array-map-much-slower-than-for-loop-5... that say a `for` loop is faster. And sometimes it's true. By the logic of the original article, you should hyperoptimize your code. The problem is. If everyone writes `for` loops instead of using `map`. When map eventually becomes more efficient there's all that garbage code out there that has to be refactored. Ignoring the problems associated with benchmarking - this for example claims map now being faster than for loops. https://leanylabs.com/blog/js-forEach-map-reduce-vs-for-for_of/ https://leanylabs.com/blog/js-forEach-map-reduce-vs-for-for_... It comes down to return on effort. We only have so much effort to put at solving this problem. You maximize your return on effort by having a clear separation of responsibility. In this case the individual's responsibility is to write code to the latest spec. The institution's responsibility is to make the code written as efficient as possible. A single website saving .000000001 ppm of carbon (exaggerating) is just never going to be worth the effort. But a compiler improvement on all websites running javascript. Now that's totally worth it. Further reading behind this logic: https://www.goodreads.com/book/show/3828902-thinking-in-systems https://www.goodreads.com/book/show/3828902-thinking-in-syst... https://stackify.com/premature-optimization-evil/ https://stackify.com/premature-optimization-evil/ Code Complete (chapter 25.2) https://www.oreilly.com/library/view/code-complete-second/0735619670/ https://www.oreilly.com/library/view/code-complete-second/07...
- zebraflask 5y agoNot 100% on topic, but related - not mining or using crypto or writing apps / software / sites that enable it, at least the ones like Bitcoin that are massively greedy re: electrical usage, might also be effective.
- amelius 5y agoAnother solution I hear often is to simply tax the power used.
- sudopluto 5y agono, it is not not only the responsibility of those writing browser engines / compilers. it is the fault of the product designers who take any advancement in the efficiency of technology as a excuse to push more crap. see: blockchain for the sake of blockchain, machine learning for the sake of machine learning, web apps for the sake of web apps
- saagarjha 5y agoNo, this is wrong. Performance is everyone's responsibility, because compilers are fundamentally garbage-in-garbage-out. The people that work on them are incredibly smart and I don't want to discount that, but there is fundamentally nothing they can do if you write something nontrivial that's O(n^3): that's on you to fix. The fact is that a lot of websites leave timers running in the background or use really inefficient ways to manipulate the DOM, and despite the work of all major browser vendors there's not much that can be done here except asking the people that make those websites to not do this. If you're one of them, you should make it your responsibility to care about performance.
- bcrosby95 5y agoI only recently found out that the idea of an "individuals" carbon footprint was popularized by BP, in order to shift the blame off themselves and onto us: https://en.wikipedia.org/wiki/Carbon_footprint#Origin_of_the_concept https://en.wikipedia.org/wiki/Carbon_footprint#Origin_of_the...
- deleted 5y ago[deleted]
- tunesmith 5y agoOnce again, the answer seems to be "why not both". Calculations on individual carbon footprint are useful for buying offsets. Complaining about individualization feels like permission to just not make it our problems. Yeah, we have big companies and big governments, but individuals use those services. So yeah, agitate for changes on the global scale, and yeah, also look at your own footprint.
- marginalia_nu 5y agoMore practically, if the browser developers make more efficient browsers, what typically ends up happening is that the web developers make more inefficient websites that consume the additional resources available. It's Parkinson's law. We need both efficient web browsers and efficient websites. All guilt and responsibility is individual, as individual humans are the only ones with subjectivity and agency. Assigning blame to groups and "others" is extremely counterproductive. You either do what you can or you don't. We can sit around trying to find scapegoats and and point fingers for a hundred years, and it's not going to do any difference. The consumers can blame the the producers, the producers can blame the consumers. The voters can blame the politicians and the politicians can blame the voters. The right can blame the left and the left can blame the right. Men can blame women and women can blame men. Cats can blame dogs and dogs can blame cats. The reason it all sounds true is that every single one the accusations are true. Why yes, the producers are to blame, so are the consumers, the politicians, the voters. We are all to blame, we're all culpable for our decisions as individual humans. Each and every one of us all have responsibility.
- GoblinSlayer 5y agoInefficient code reduces battery life, consumes CPU and RAM resources and overheats hardware - all this directly affects the user, not environment. If the browser terminated the script after, say, 1000 instructions, that would help, but it's only a mitigation for a bug in the script code, not a proper solution.