Hacker News new | ask | show | jobs
by misterman101 2515 days ago
The difference is that the company is not paying (and therefore not tracking costs) for client code, so it has less incentive to fix things.

The extra engineers needed to make a Java/C++ backend need to eat/sleep/consume and have their own environmental cost.

$$$ is a good first-order proxy of environmental cost, and lower server costs probably don't make up for engineering salaries.

3 comments

> The extra engineers needed to make a Java/C++ backend need to eat/sleep/consume and have their own environmental cost.

Engineers are not VMs in the cloud, you don't provision them on demand. They exist as human beings, and eat, sleep and consume anyway.

> $$$ is a good first-order proxy of environmental cost, and lower server costs probably don't make up for engineering salaries.

If you run it through a heavy low-pass filter to remove all the sales-related price shenanigans. And discount salaries, because taking on an engineer at $X doesn't mean you've just increased your carbon footprint by $X.

You could actually see how taking into account salaries might be a cause of the problem. Say you can hire an engineer who'll get you a basic backend working in Python or Ruby for $100k, or an engineer who'll get you that backend in a more efficient stack - say C++ or Java, or even a more polyglot solution with hotspots optimized - for $150k. In the first case, your yearly costs of cloud servers are $20k, in the latter $5k, reflecting the 5x efficiency difference.

From the monetary point of view, you should take the less efficient option - after all, you're getting $35k ahead. From the environmental point of view, your service uses 5x the energy it should. And you're not the only company with this dilemma. If everyone chooses the cheaper option, then the whole segment of industry becomes 5x less efficient than it should be.

Yeah, this is a good analysis, there are a handful of companies where performance savings in critical services will cross those thresholds, but for everyone else it's simply theoretical.

Unfortunately there are a lot of those "everyone else" services out there so it becomes a death through a thousand cuts concern.

Obviously from an environmental perspective (if that is the ethical concern in question) there are probably higher priorities

> The difference is that the company is not paying (and therefore not tracking costs) for client code, so it has less incentive to fix things.

The incentive is there whether the company recognizes it or not. A price your customers pay matters to your business.