Ask HN: What do you look for in an open source project?
I've been looking to get into open source development for a while as a way to learn and gain a deeper knowledge of working on real projects.
However I have no experience of what to look for in a project before I dive into it, what should I look for?
7 comments
[ 3.1 ms ] story [ 31.8 ms ] thread1. Look for community ie: mailing list, irc, im, github, etc, etc
2. Look at commit frequency. How often do they commit. Is the project abandoned?
3. See if the developers are friendly. Feel free to email / im / chat with the developers. Ask what you can do to help.
Keep in mind contributing does not mean code code code. It can mean triaging bugs, updating documentation, herding other community members towards the right things, etc.
Hit me up with more questions if you want: jeffschroeder@computer.org
I use the Linux kernel constantly, GNU Project software an awful lot, and Perl now & then. Involvement in any of these strikes me as a bad idea. OTOH, CPython is quite different.
I'm involved in a Perl community and it is a wonderful testament to unconditional love and fun and to the productivity and persistence that's a characteristic of this sort of environment.
I haven't been involved at all with the three I gave as "bad idea" examples; I've only used their products.
The reason I listed them is that records of disputes or abuse of various kinds are often posted to HN (or to similar portions of Reddit, etc.). I have noticed that if, in some software project using an open development process, someone is (figuratively) screaming at someone else, calling them names, then that someone is virtually always (1) Linus Torvalds, (2) Richard M. Stallman, or (3) someone involved in a Perl project.
This has been consistently true for years (even before HN and Reddit existed). I'm sure there are plenty of good, kind, respectful people in each of these projects. However, it is also clear that these are places where there is an entrenched tradition that some kinds of abusive behavior are tolerated. I'm certainly glad that you have had good experiences. Nonetheless, if someone is a newbie who is looking to get involved in open development, then I would say that they should approach these projects with caution, and be prepared to develop a thick skin.
OTOH, I mention CPython because they have made a clear effort to be friendly to new people. Also, despite CPython being one of the larger open-development projects, I believe I have never run across a report of abusive behavior in CPython that was allowed to stand without being dealt with.