If you've not read Roads and Bridges: The Unseen Labor Behind Our Digital Infrastructure I highly recommend you do [1]. Her podcast is also great [2].
[1]: http://www.fordfoundation.org/library/reports-and-studies/ro... [2]: https://changelog.com/rfc
He just finished up the 2nd edition and made it freely available online: http://producingoss.com/
Corporates usually have their own open-source guidelines (we had one at my R&D jobs even before Github existed), and these docs are a bit overdone for the tiny projects that lone devs usually put online. You know what I mean, for the ones where a single-line guideline would have been enough: "Please, if you don't want to write a readme, at least add some in-line comments".
My understanding (you'll find some of my work quoted here, and I contributed a small amount before that this was public) is that this resource is for individuals who want to be involved in open source, either as contributors or maintainers, to learn about how it works. That is, a lot of open source development is sort of a shared, "oral" history; this resource spells out a lot of things that those of us who have been in the scene for a while just know, but you have to learn at some point.
Users have previously enquired about donations and I didn't know the best way to set up the project to accept them in a responsible manner. This guide points me in the right direction!
What additional features or functionality would you want github to add to make writing/hosting guides better?
Also, DigitalOcean has "contributing to open source" stuff like this https://www.digitalocean.com/community/tutorials/contributin... and this https://www.digitalocean.com/community/tutorials/maintaining...
Q: " Why do I need a code of conduct? "
A: " A code of conduct is a document that establishes expectations for behavior for your project’s participants. Adopting, and enforcing, a code of conduct can help create a positive social atmosphere for your community. "
That doesn't really, for me, explain what it is or why we need one. To be fair, it follows up with this: " Codes of conduct help protect not just your participants, but yourself. If you maintain a project, you may find that unproductive attitudes from other participants can make you feel drained or unhappy about your work over time.
A code of conduct empowers you to facilitate healthy, constructive community behavior. Being proactive reduces the likelihood that you, or others, will become fatigued with your project, and helps you take action when someone does something you don’t agree with. "
That to me doesn't make sense. I've never really seen an enviroment that would reasonably make someone "unhappy" or "drained" by my standards nor have I ever seen a reason why someone should want to "take action when someone does something you don't agree with".I feel that if you have an open source project it's a rag-tag bag of programmers, designers, and technical people who are working on something that they should all be interested in. The discussion on the modes provided by an open source project's forums or whatever should be purely technical. When you have a purely technical medium I don't see how anyone would be upset by a convorsation.
We all know what the COCs look like, I'm pretty sure we all know how they can be misued, but one thing we don't all know is why you'd need to use it in the first place (at least I don't).
If you're a BDFL and you have some opinion that disagrees with another person you can just act like a human: talk it out or ignore them. I don't see why we need to, or even should, codify that.
If I'm missing something please do correct me on this.
PS: I just noticed some people might not understand what I mean, so I'll try to explain it with an example. I belive in freedom of speech and press. So a common expression is "I may not agree with what you have to say but I entierly support your right to say it". In Django's COC you will find this section (I'll do my best to format it):
Be careful in the words that you choose. We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren't acceptable. This includes, but is not limited to:
Violent threats or language directed against another person.
Discriminatory jokes and language.
Posting sexually explicit or violent material.
Posting (or threatening to post) other people's personally identifying information ("doxing").
Personal insults, especially those using racist or sexist terms.
Unwelcome sexual attention.
Advocating for, or encouraging, any of the above behavior.
Repeated harassment of others. In general, if someone asks you to stop, then stop.
My concern is the vaugness that is nesessitated by such a controling document. Perticularly I'm afraid of the "Advocating for, or encouraging, any of the above behavior." clause. I completely belive people have the right to say all of those things. In effect I am "advocating" for the existance of speech from bad actors indirectly by saying "I may not agree with what you have to say but I entierly support your right to say it". If I advocate for ALL free speech then I must advocate for ALL free speech. Not "Free Speech*".This includes the vile behavior of bad actors whether or not I like it.
Can I be banned for saying "I may not agree with what you have to say but I entierly support your right to say it"? Well as the current COC for Django stands, certiantly a case can be made for my advocacy, to some degree, of these horrible things I don't like.
If you're unhappy that a community implements a code of conduct, you're free to not join it, and if you're someone who does any of these things I'd recommend you not join any open source community.
Really, seriously, the entire point of a code of conduct is to tell people they can't be shitty people and continue to be in the community and it shows people joining the community that it cares enough about shutting down trolls that they're willing to advertise that they're willing to shut down trolls.
That's not how morals work.
https://medium.com/rx3-magazine/why-hackers-must-welcome-soc...
ESR represented meritocracy instead in the post below. One was written to counter the other but don't remember what order. I link to an example Code of Merit as well to show how simple it is:
http://esr.ibiblio.org/?p=6918
https://medium.com/@jmaynard/a-contribution-policy-for-open-...
The manipulative tactics they use are often called SJW by critics. The combo of pushers aiming for political dominance and sophist tactics to achieve goals means anything like that CoC should be rejected totally and quickly. It will just be leverage later as it's intended to be. A good write-up on how that works where they act like their claims aren't controversial but argue with or censor each other all the time on it is below. So is an attack on Ruby community by non-contributors pushing the CoC & politics with Coraline herself dropping smears in support. Starts nice enough but they show true colors as resistance continues. ;)
http://slatestarcodex.com/2014/07/07/social-justice-and-word...
https://github.com/opal/opal/issues/941
Note to all: This is a draft of a reference reply on this issue since it comes up a lot. Many people new to CoC's don't know they're openly meant to be political. If any have a clearer set of links, I'm interested in them. If you like this set as an intro, tell me so I can turn it into a Pastebin or something.
Edit to add: Anyone wanting to discuss this further just email me or something so this topic doesn't get polluted with politics.
That's insane. Why would anyone want to force politics into a technical discussion. I can't think of a single place where the Red or Blue on my ballot would influence my software development prowess. Same for nationality or opinions on social matters.
Some of the things in this article make no sense.
> There are those who firmly believe that the politics of social justice have no place in the world of open source. They think that the injection of political ideologies is a corruption of the apolitical nature of free software.
> From the onset open source has been inherently a political movement, a reaction against the socially damaging, anti-competitive motivations of governments and corporations. It began as a campaign for social liberty and digital freedom, a celebration of the success of communal efforts in the face of rampant capitalism. What is this if not a political movement?
> All political movements start with an ideology. But when they are set in motion this ideology may become obscured. It is crucial that we constantly scrutinize the manifestation of our principles to ensure that the lofty goals of our ambitions are in line with our actions.
This is going to be a really really good read. Thanks for the share nick!