4 ms·
> my language doesn't care about compilation speed, so I'm generating e-waste at a significant personal expense to compensate That isn't a personal critique, e
by hansvm 2y ago
> my language doesn't care about compilation speed, so I'm generating e-waste at a significant personal expense to compensate
That isn't a personal critique, even sounding like a perfectly rational decision, but if anyone here is working on a language (or any other software) of any popularity, it's worth keeping those sorts of negative second-order effects in mind.
- tarnith 2y agoThis is an odd critique. Many interpreted languages consume easily upwards of 50x the energy at runtime...
- hansvm 2y ago> Compiled language authors shouldn't write faster compilers because interpreted languages exist My point is that the costs of those particular compiled languages is high enough that it's worth some additional investment in speed, regardless of the existence of interpreted languages.
- the_duke 2y ago> the costs of those particular compiled languages is high enough Only if we are talking developer experience. Even if you are working on something almost no-one uses. Spending a bit of time , or even hours, compiling, will be dwarfed by running more efficient code. Just remember that there are billions of devices constantly (re)JITing Javascript code...
- fluoridation 2y agoIt's unclear who you're criticizing. The developer who uses a compiled language (even though all things considered compiled languages are generally more efficient)? The compiler developer who doesn't optimize the compiler (even though it's unclear compilers could be much faster)? Also, why do you think upgrading a computer intrinsically leads to e-waste? I've kept or given away every computer I've bought that still works. Why wouldn't I, when it's still perfectly capable of doing useful work.
- hansvm 2y ago> who I'm criticizing Developers of wasteful software, such as unoptimized compilers. It's not an absolute criticism, just a call-out to keep performance in mind because of second-order effects. > even though it's unclear compilers could be much faster You've used languages with substantially faster compilers, right? The majority of the rust compiler's runtime isn't the borrow checker. Standard C++ compilers don't fundamentally do anything beyond what other systems languages do. > intrinsically leads to e-waste It's not _intrinsic_, but somewhere around 1/3 of computers are re-used or recycled. Most people, when upgrading, have done so because they perceive their previous computer as unsatisfactory for their normal tasks, and most people don't have background work or servers or whatnot to make use of old computers. Toss in the re-sale value of $100-$200, and it's not worth the time and effort for a lot of people to re-sell or recycle. Yes, they should do better, but with that reality in mind you can easily construct a _correct_ causal model of "if I write slow, popular software then I there will be much more e-waste than if I had not done so."
- fluoridation 2y agoSure, but developers, and especially C++ and Rust developers, make up a small minority of the total market. The general statement "most people will throw in the garbage their old computer when buying a new one" may not apply in general to such an unusual subset. Like I said, it doesn't apply to me, and I've upgraded specifically to get better build times.
- hansvm 2y agoSure. It might apply more though, with the cost/benefit analysis strongly favoring fast actions rather than good actions for high-paid professionals too. We have some data suggesting e-waste is a problem. Maybe it's 10% in that demographic. That's still a 10k computers in the dump, purely because of slow Rust and C++ compile times, even if only 1% of people upgraded because of compile times and 10% of that demographic aren't responsible with their devices. It's also (very roughly) 1.3 million kwh per year extra for rust and cpp developers to use those slower compilers once a month, relative to faster alternatives. A few core maintainers have the power to fix that and have chosen not to. And maybe that's fine. But it's a real cost, quite large relative to the other impact those individuals might have, and it's worth acknowledging rather than dismissing.