0

As a software engineer and advocate for sustainability I'd love to take my discipline and make a positive impact e.g. monitoring sun levels and raising blinds to tune the interior temperature etc.

However I'm struggling to find initiatives with a wider impact to get involved in e.g. open source. I think because I'm uncertain of the communities and search terms to discover them. And more broadly what the wider issues are that can be impacted with software, that aren't private.

Do people have any good resources? P

0

1 Answer 1

1

I think as a software engineer by far the best you can do for the environment is working with compiled languages. That's languages that use pre-compiled code like C, C++, Go or Rust, or languages that are compiled to bytecode and the JIT'd to machine code like Java, or languages that are directly JIT'd like many JavaScript implementations similar to NodeJS/V8 do or like LuaJIT does (although there are implementation of JavaScript and Lua that are not JIT'd).

If you find C, C++, Go, Rust, Java, NodeJS or LuaJIT isn't good for some use, such as due to lack of libraries, you can implement the missing library and share it on Github.

The reason this is important is that interpreted languages are 30 times slower than compiled languages. This matters due to two reasons. Firstly, computers that run programs made in interpreted languages use 30x more dynamic energy (although there's always a small constant idle energy use) and secondly, if many computer programs are inoptimally implemented in interpreted languages, this means more powerful computers need to be purchased more often, and more of these computers are needed. Electronics manufacturing creates a surprisingly large amount of CO2, especially if it's happening in China like it's nowadays.

If you are really ambitious and willing to become a guru, perhaps you could start working on LuaJIT. The sole author, Mike Pall, has abandoned the project and nobody has stepped in to become the new maintainer. However, I have to warn that becoming the new LuaJIT maintainer is not for amateur developers, it requires so much expertise that for example I would be unfit for the job.

1
  • Thanks juhist for the considered answer, but sorry I should have clarified, I more meant around what projects could a developer get involved in creating software that supports environmental initiatives rather than performance of languages themselves - but interesting none the less. Commented May 14, 2022 at 20:23

Not the answer you're looking for? Browse other questions tagged or ask your own question.