attempt to be an ethical developer
Act of Programming is Creation. To be a Creator is to be a bit like a God. And it's hard to be a God. To help myself and others I'm (we're) writing these lines in which I (we) (chaotically) attempt to find the ethos of a developer. Pull requests are welcome as are discussions.
I will
- write software both to keep the basic needs (shelter, food) fulfilled and for betterment of self and community
- write software that will decrease the amount of suffering in the world, even if ever so slightly
- write software that does what it says in the description, nothing more, nothing less
- write software that supports freedom, equality and openness
- consider the consequences of all of my actions
- make knowledge available for those who seek it
- defend my truths and ideals
- accept reasonable argumentation and change my truths and ideals according to them
- perceive the world as it is, not as it should be
- do as I say, think as I do - my thoughts and actions shall be in line with each other and reality
I will not
- write software to satisfy my ego (e.g. for fame, recognition and power)
- write software that increases the suffering in the world
- write software which primary purpose is to end or maim life without human intervention (e.g. automated weapons systems)
- write software that will be used to opress, discriminate and exploit other human beings
- shy away from the thoughts of what makes me ethical
- let emotions cloud my judgement
- force my truths upon others
- gatekeep or otherwise prevent others from obtaining knowledge
- give in to delusions about the world (e.g. earth is flat!)
- let myself lie to myself and others.