how to write non violent creative code
a WIP introduction
During the 2019 p5.js Contributors' Conference, a group formed to discuss how radical inclusion, decolonization, and a de-centering of dominant communities could be further integrated and emphasized in p5.js as a toolkit and a community. We acknowledged and discussed the ways in which p5.js is built upon (and benefits from) colonial projects like the English language, the Internet, and their related infrastructures.
It’s always an option to throw our laptops into the ocean and bow out, but we have chosen not to.
We agreed to strategize how we as practitioners and toolmakers can reindigize creative coding, starting in the areas where we have the most agency—ourselves and our works.
"Reindigenization is not a repeat of the past, it is the revolutionary/evolutionary RETURN to ways of life with and for the land."
Drawing from a collective list of references, we've drafted a set of guidelines, questions, and prompts to help us and others reflect and refine our work in this spirit.
The term "nonviolent creative code" was proposed to guide this work. In this context, we use the term violence to include actions that keep us from the earth, from ourselves, and from each other.
honor the land
Who is the community who lives here? Who is the audience of your work? Are those two populations different or the same? Why?
Are you living or working on occupied land? Who is the indigenous population where you are?
Is this art taking up material space? How have you considered managing the waste generated by this project?
Consider the materiality of the server, the data center, the cable, the rare-earth mineral mine, the factory, the oil field, the air conditioner, and the other things that are holding up this practice. Where can you decouple those links?
What is lost when reduced to data? What is there about your place that is not saved in the online database or archive? How does it feel here?
honor the body
There is an assumption that writing and coding are leisurely because you’re sitting, but there’s also posture issues, carpal tunnel, etc. Take breaks, drink water, protect your eyes, etc. Honor your body cues as data.
Whose bodies have contributed to your work? Who answered that question on Stack Overflow, who made this font, who assembled your computer? How are those bodies visible or invisible?
Does your work respect all participants’ body sovereignty? Some participants may not wish to be photographed, recorded, scanned, or touched. How are you honoring these sacred boundaries?
honor the small
Does your project need to scale? What would your project gain from specificity? De-emphasize growth as a goal of a project. Instead, think of growth as one of many design principles.
Can you produce or share work on a large platform (Twitter, Instagram, etc), without doing work for that platform? How can you decouple your online practice from tech giants?
honor the people
How do you prioritize consent in online space? Does engaging with your work require the participant to sign a terms of service? Do you control that terms of service, or is it in the control of a company or organization?
How do you protect your community? If you are making work that uses or stores information about the data, interactions, or bodies of others, how do you keep that safe?
Pay attention to when you use language like “mining” data. How can you maintain an explorative, rather than exploitative, relationship with the data collection process?
Does the code you’re writing/using support structures of violence? Do the toolkits you use align with the values of consent and dignity?
What is the offboarding process for someone who would like to stop interacting with your work? What can they take with them? What do you do with the things they have left behind (data, feedback, etc.)? Can people take breaks with the option of returning without penalty?
Does your project use design patterns that mirror cycles of addiction (e.g copying the slot-machine)? How can it promote healthy, balanced relationships with technology?
honor the exchange
How can your work prioritize community and relation?
Dissolve hierarchy in your teaching/learning by respecting wisdom in all its forms. New participants always have another expertise.
Is the code you’re writing intentionally or unintentionally so hard to read or obscure that others cannot learn from or contribute to it? Why?
special thanks to the members of global + access tracks including but not exclusive to:
qianqian ye
guillermo montecinos
lauren mccarthy
yasheng she
xin xin
kate hollenbach
olivia ross
evelyn masso
american artist
luisa pereira
everest pipkin
dorothy santos
luca damasco
cassie tarakajian
allison parrish
aarón montoya-moraga