Rust 2021 – Ethical Development
This is my Rust 2021 post. I believe that Rust has shown that “bending the curve” is both possible and fruitful in programming language design. We also have a strong set of values as a community, enshrined both in the Code of Conduct and the example of various high-profile rustaceans.
For 2021 I really couldn’t care less what features go into the next edition. Don’t get me wrong, I want the next edition to be awesome, but I believe this is table stakes by now. I want us to take on the harder problems.
I want us to grow as a community, and I don’t mean that in a population count sense. This is what I meant when I snarkily wrote “Less doing the wrong thing, safely”. The keyword here is ethical development. Just like the Rust programming language has a set of vaues, a set of tradeoffs between them, and a set of bent curves where we found a place in the design space that lets us have our cake and eat it where this was a formerly accepted tradeoff, I want the Rust community to have a shared set of values, a shared set of tradeoffs between them, and as much bent curves as possible.
Now what I mean by ‘values’ obviously differs when I talk about programming language design or a programming language community. For language design, the values can contain execution speed, productivity, safety, learnability and so on. For software ethics values may be inclusion and diversity, welfare for all people, privacy, freedom, lawfulness, friendlyness and hospitality, integrity, humor, and a lot more. Some of them are by now well-known and have seen implementations, for example privacy. But how might we hope to encode e.g. hospitality?
There are a few hard questions to ask, and I won’t cover everything here, but I’ll give you a few examples of things the Rust community will have to face at some point:
- I have heard reports of companies treating their Rust developers badly. As if using Rust should make up for abuse by an employer. This is obviously unacceptable, and we should call out instances wherever we find them. Such employers should not be considered part of the community (Names withheld to protect the innocent)
- Rust is still hosted on github, a company that has a contract with ICE, a institution that has proven to act out genocide against immigrants in the US. For now, we act as if this doesn’t affect us and have the mod team quell all discussion. I’m having a hard time bringing this up after having personally removed discussion about it on /r/rust. But while we don’t want the drama to continue, and expressly wish this point not to debated in the replies, we as a community need to tackle this problem
- I’m still not writing that “why we shouldn’t write more blockchains in Rust” article just yet, but as I’ve written before, Blockchain tech hasn’t showed much benefit to society just yet while binding a lot of resources and burning through a lot of electricity (obviously proof of stake is better than proof of work in that regard, but being better than the worst thing doesn’t make something good), thus hastening the climate crisis
So here’s my suggestions: I want an Ethics WG, tasked with both researching and teaching Rustic Software Ethics. With the above examples, I hope to have given a useful set of initial work items for that group.