Week 2: What we really care about in Open Source
Humans on the Internet Need Rules
When exploring different open source projects, I realized that some are less about strict rules and more about setting expectations for how people should treat each other. It’s interesting looking at how different communities decide what flies and what absolutely does not. Obviously, it’s not always as simple as how monkey see and monkey go.
When taking a look at the code of conduct for The Go project, we mainly see a few several lines of how to respect people and how conflicts should be handled. Having guidelines in place helps prevent small issues from turning into big conflicts especially when considering people contributing to these projects aren’t all from the same town. But yes, if everyone is from the same town, I’d say it’s ok to be rude.
What difference does it make?
The Go project’s code of conduct is based on the Contributor Covenant. There’s not much change you’ll notice when reading these documents but compared to the original template, Go’s version is easier to read and places more emphasis on open discussion, accessibility, and community values. These changes make the document feel more welcoming instead of overly formal. It feels like Go wanted a document that encourages conversation and learning rather than just listing punishments. Though, I’d much prefer it to list punishments.
Some other code of conducts, like Eclipse takes a more detailed and structured approach. Their code of conduct (Eclipse Community Code of Conduct) is longer and more specific about enforcement and procedures. This could be because Eclipse is a large and long-running project that has likely dealt with more complicated conflicts over time, so they need clearer processes in place. The Sugar Labs code of conduct is based on the Ubuntu Code of Conduct, which gives it a different feel from Go’s. It offers versions in multiple languages, such as Spanish, which shows an effort to be inclusive and accessible. However, it does not clearly list support contacts or reporting methods, which makes it feel more like a set of guiding values than a strict rulebook. It seems as if they’d rather us to fix our issues rather than you reporting to them about your issues.
Check this one out
Let’s take a look at iNaturalist: Basically “Don’t Be Weird” (iNaturalist Community Guidelines). While they are not called a “code of conduct,” they serve the same purpose. This might be the most specific code of conduct ever. Going through the examples, you can really tell they’re trying their best to dummy proof all the different possibilities of things that could go wrong. From minor inconvieniences to going out of their way to explain how to block a user but also at the same time suggest you really shouldn’t be blocking them. Listed on their site, they listed “Don’t write in all CAPS”. AND YOU DON’T HAVE TO HAVE THE LAST WORD. AND OF COURSE IF YOU DON’T LIKE SOMEONE JUST MUTE THEM. IF YOUR EMOTIONS ARE RUNNING HIGH, CALM DOWN. OVERALL, THE GUIDELINES FEEL PRACTICAL WHICH MAKES SENSE SINCE MANY PEOPLE CONTRIBUTE THOUGH INTERACTIONS RATHER THAN JUST THROUGH CODE.
SO IT’S NOT REALLY ABOUT CODE
LOOKING AT ALL THESE CODE OF CONDUCTS, YOU’D THINK PEOPLE FINALLY FOUND A WAY TO COLLABORATE WITHOUT THINGS EVER GOING WRONG. WELL NO. TRY FINDING A VIDEO ON THAT, YOU CAN’T. WELL YOU CAN WATCH “How to Drive Consensus and Transparency Within Open Source Communities”, WHICH TELLS YOU THAT THERE’S NO RIGHT RESOLUTION TO WORKING WELL TOGETHER. BUT THERE’S SOMETHING YOU CAN DO TO WORK WELL TOGETHER AND THAT IS TO, JUST BE NICE.
