Once upon a time, a n00b found an open source project. The project was an ambitious one, one that wanted to change the world for the better. A lot of people had been working very hard on the project for a very long time.
The n00b saw the value of the project, saw that it was poised to make the world a better place, and thought: I should keep an eye on this.
Some time later, the n00b was getting frustrated. The project seemed to be gaining more users, and the n00b kept seeing more and more tweets and blog posts about it, and particularly about the primarily controller used by the app. “This thing is stupid. Why is this so complicated? I bet I can help make this project much more accessible to people who haven’t used it before,” thought the n00b, n00bily.
The n00b hadn’t actually read many of those blog posts, had only skimmed some of the tweets, and hadn’t read any of the documentation on the project, but surely, the n00b brought a new perspective that would be appreciated by the project maintainers. So the n00b opened a pull request to submit a change that would gut the primary controller and make it much easier to understand, even though the n00b didn’t fully grasp how each method worked, and there were no unit tests.
And oh, how the n00b was ripped a new one. The project maintainers and users of the project piled on the n00b, and the n00b became angry. “I was just trying to help!” shouted the n00b, to the rolling eyes of everyone who had seen this play out before. Because, you see, there were already scores of pull requests just like the n00b’s, and none had been merged. The documentation for the project, and many of those blog posts that the n00b skipped, started out by explaining exactly why the controller worked the way it did, and why a gutted version like the one offered by the n00b wouldn’t work. There were years of hard work backing up the architecture of the controller, and everyone was sick and tired of having to explain everything every time a helpful n00b wanted to join in.
And that’s how the n00b ragequit the issue queue, and tweeted angrily, and grumbled about how that project would change the world if only the maintainers would be willing to coddle every n00b who hadn’t bothered to RTFM.
Like open source projects, I think the feminism movement appreciates newcomers who want to help and make a difference. And, in both cases, I think they especially appreciate those who do a little research beforehand and have enough self-awareness to realize that their first contribution is unlikely to be so simple and straightforward that it simply hadn’t been considered before.