Moral + Code = Code Your Morals
We live our lives according to a moral code. The time has come to code our morals.
Decentralization was (and still is) the hope of many of us early builders of the first generation of online weirdos, the first children to grow up with the internet and the last generation to remember life before it existed. In those early days, we saw the internet as a real promise, that it would make information free, democratize media, and grant new forms of economic self-sufficiency. Many of us believed we could change the way the world works from behind our glowing screens.
Some of us actually did that, and many things have changed,
But not exactly in the ways we imagined.
The promise was information would be free — what we got was, we got to be the free information as third parties harvested our data.
The promise was democratized media — what we got was media that threatens democracy.
The promise was a new economy — what we got was the gig economy, with more precarity and higher inequality.
The promise of the early internet lost nearly all its idealistic moral gravitas. Now when we talk about promises and the internet we’re just talking about a Javascript concept, another best practice in a software engineer’s development stack.
In any other field whose name has the word engineering in it, outcomes like this wouldn’t fly.
imagine a civil engineer or a structural engineer who is tasked with building the Brooklyn Bridge. A trucking company asked the engineers, “Ok we need to plan our routes across this new bridge, how many trucks with how many loads can safely go across and maintain the safety of the bridge.” The structural engineer says “Hey look, technology is neutral, I build the bridge but I don’t tell people how to use it. If someone wants to break the bridge and it all falls down, it is what it is, I mean that is not my fault.”
But with software, especially social networks and the digital media ecosystem, we are perfectly ok with tech companies telling us that the systems they have designed are neutral even as they break safety, democracy, privacy, fraud, make our children unsafe or are abusive or cause deep harm to our country.
There is not a responsibility to know its limits, its load, or what could happen to the lives involved should it break.
If we start to believe that it’s not our responsibility as the builders of these systems, then we are really building systems of harm. We are building bridges and not caring for those who trusted us to drive across them.
I created Wampum.codes to address exactly this issue.
Wampum.codes is an ethical framework for software development based on the principles of co-creation as understood by my people (Seneca-Cayuga Nation of Oklahoma.)
Like all members of the Iroquois Confederacy, we made wampum. A lot of people have a misconception about what wampum is — they think it was a form of currency. It was not currency — we used it as a tool for recording and regulating the different political and economic agreements that governed daily life. It was a decentralized means of recording contracts, something like a pre-Colombian blockchain, that encoded not just financial transactions, but also ethical values.
The project of Wampum.codes is to try and imagine how we can weave ethics back into 21st-century technologies.
The core concepts are to put an extra step in every step of the software development pipeline (for the development of all work on computers, yes including AI), take a few hours a quarter to align your goals and look at risk mitigation. Often times you will find your developers, UX designers, leadership all believe they all have the same values and just need to articulate them, build some rules and logic into their systems, imagine a better future and really listen to one another around fears, joy and possibilities for the things they want to see in the world.
We can embed these values as dependencies in code the same way we do in the rest of our package.json
CEOs, founders and employees who work in tech are eager for change, they WANT new systems to encode values and ethics into the source code for new decentralized projects and systems.
While waiting for experts and policymakers to make these decisions for us we need to be developing systems of harm mitigation and threat modeling so that our products designed to help the world do not harm it. We need robust regulation, testing methods, and guidelines and it is up to us to start developing these side by side with every line of code we write. This is our field, we know how to do it, and we are the ones who need to step up. By implementing a decentralized protocol around ethics in software, we can step in the right direction.
We live our lives according to a moral code. The time has come to code our morals.
A version of this piece was published in the Processing 20th Anniversary Community Catalog and will be available to download at the end of January 2022 you may view the video essay NFT series on Foundation as it unfolds.