Attracting student contributions to your open source project

Leveraging the power of academia in your open source project

Subscribe now

Get the highlights in your inbox every week.

In my five years at Oregon State University, I've seen the challenges of interfacing academia with volunteer communities from all sides. I took a class on open source, taught Linux basics to computer science students as a teaching assistant, and founded a training program called DevOps Bootcamp to help new contributors bridge the gap between academic curriculum and open source involvement.

The most important thing these experiences have shown me is that open source communities are most accessible to people with a very specific set of traits. People who 'self-select' into open source are overwhelmingly:

self-directed learners

lucky enough to have the time and energy to surmount a project's initial learning curve

motivated by altruism, love of puzzles, or desire for peer recognition

However, there are myriad people on the fringes of the open source community who have the potential to make good contributions, but chose not to get involved. Many of them may have even made efforts to contribute in the past, but were deterred by lack of documentation, knowledge, or time.

Get involved through academia

Academia is a particularly promising area seeking such contributors because students are often drawn to engineering programs by desire to change the world, solve fascinating puzzles, or pursue lucrative careers. Those motivations match up excellently with the rewards that they can attain by getting involved with free and open source software!

The challenge to both academic and open source leaders, then, is to remove whatever obstacles are preventing those students from getting involved.

Open source communities already offer a variety of resources that can be valuable to new contributors. If you're a community member and want to help students get involved, make sure that your project offers some of the following:

An easy, introductory, or low-hanging fruit type tag in the project's issue tracker. It's especially helpful to list these on an aggregator such as OpenHatch to make them easier to find.

Documentation catering to different learning styles. To help those who learn better by listening, provide links to recordings of talks about your project in the relevant sections of the FAQ.

Clear communication about which project members are interested in mentoring new contributors. Even if the project isn't involved with Google Summer of Code or the Gnome Outreach Program, it can benefit from a Wiki page listing project ideas and who to contact about them.

Professional, helpful dialog and a clear code of conduct in your mailing list and IRC channels can create a welcoming atmosphere and avoid scaring new contributors away.

Professors, teaching assistants, and other academic leaders can help direct students into open source communities as well:

Educate students on the role of open source in research and industry as well as its relevance to their careers.

Leverage community resources to integrate open source tools into the curriculum, such as teaching Subversion or Git in software engineering classes.

Support student clubs and classes that encourage open source involvement.

Mentor students and teach them how to find and use the resources that the open source community provides.

When academia and open source collaborate, everybody wins. Open source projects get new contributors, professors get students with more knowledge and perspective about real-world software development, and—most importantly—students can get extra mentorship while gaining hands-on experience in their chosen fields.

Regardless of your role in academia or open source, you can help encourage this symbiosis between the two worlds. If you're a teacher, empower your students to approach the open source projects that interest them. If you're an open source contributor, make sure that your project is ready to guide new contributors with documentation, accurately tagged bugs, and a minimally scary culture.

Open Source in Education

A collection of articles from educators, students, advocates, parents, and more who are implementing open source in education and working toward a more open knowledge base for everyone.

Topics

About the author

E. Dunham - E. Dunham is an open source geek of many trades, currently working as a "DevOps" Engineer for Mozilla Research. This role has applied skills learned at the OSU Open Source Lab and a variety of other companies to improving the Rust programming language's tools and infrastructure. Other hobbies include writing, gardening, and enjoying Oregon's outdoors.

2 Comments

Emily,
Thanks for the great article.
You make very good points. The following two particularly resonate with my experience:
1) For students: The exposure and training that students get when participating in an open source community are excellent preparation for becoming professional DevOps, and it is done in a much lower pressure environment.
2) For projects: The energy, freshness and diversity that students bring to an open source project are essential to keep the liveliness and momentum of a project. They are also the very important source of "next generation" developers and maintainers who can assure the long-term sustainability of the project's community.
Thanks for raising awareness about these opportunities.

Footer

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat.

Opensource.com aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. Red Hat and the Red Hat logo are trademarks of Red Hat, Inc., registered in the United States and other countries.