How behavior can influence your open source project aka Why you should always strive to be nice!
Disclaimer: Luckily I have never been on the receiving end of anything like I will talk about here. Also, I think that as a whole, the open source world is an amazing, welcoming place, but unfortunately all it takes is one bad cookie to ruin things for someone.
Do you remember your first pull request you submitted to an open source project? How was the experience? Were you welcomed and thanked for your contribution, even if your solution was not the best? And, if your solution was not the best, were you given constructive criticism and help? I sure hope so, but unfortunately I have seen devs who submitted a pull request, an issue, or just a suggestion, be talked down to, or not even given the time of day. Luckily, these kinds of negative experiences can give us good insight into how behavior can affect an open source project, and what we should think about when interacting with people in open source communities.
The key to open source is people. Without people interacting and working together to build great things, an open source project will never reach its full potential. One of the main advantages open source software has over closed source is the fact that anyone can freely contribute their ideas and experiences to your project. As a contributor, open source gives you the chance to help move your favorite piece of software forward and directly have a hand in making it work better for you. As a software maintainer, open source gives you the chance to hear directly from your users, get help and ideas that you would never get just working on something by yourself, and potentially have 1000’s of great minds working on your project, instead of just your great mind! This interaction of people is what rockets open source ahead of closed source, and is key to the open source community as a whole!
If you have ever been treated badly, talked down to, or just generally had a bad experience in an open source project, did this make you want to continue to contribute to it? The average person would say no. This means that project just lost what could have been an amazing opportunity to have a great mind contributing ideas, building out features, and fixing bugs, all because of something as simple as someone just not being nice. As an open source software maintainer, or even just a core team member on an open source project there may be times when you run into somebody that has contributed something that just does not make sense to you or to the project. They may open an issue that has barely any content, or a pull request that does not follow your style guide or fails tests, but this does not mean that person should be treated wrongly. Think about the amount of nervousness or anxiety you had when you first put your idea or code out there in an open source project for the world to see, think about the fact that everybody is at a different skill level in their programming journey and they may not realize that their pull request has issues, and most importantly, think about how you feel when someone treats you wrongly. Remember, people are the key to open source, and that frankly, if you piss everyone off that tries to contribute to your project, is it really even an open source project anymore?
PS: If you're thinking about contributing to an open source project come check out Ionic! Ionic has a great community that I would love for you to join!