(This post is the first in the "Voices of POSSE" series, a collection of interviews conducted at this year's Professors' Open Source Summer Experience, held in Raleigh, NC, July 23-24.)
Dr. Heidi Ellis sighed when she made what for many academics is a difficult admission.
"I can't know everything," she said.
But Ellis does know that students in her software engineering courses need to understand software development from a perspective outside the narrow lenses their textbooks provide. Those students, she said, need to work not on decontextualized exercises, but on real-world projects. And to do that, they need to tap the wisdom of a group whose experience far outstrips her own: the open source community.
"Where else am I going to get the professional-level artifact and the professional environment, the professional community, to teach students professional-level software engineering?" said Ellis, Associate Professor and Chair of Computer Science and Information Technology at Western New England University in Springfield, MA.
Ellis is one of 16 professors who gathered in Raleigh, NC, last weekend to participate in POSSE, the Professors' Open Source Summer Experience, a two-day immersive workshop for instructors looking to integrate open source tools, principles, and activities into their classrooms. POSSE connects academics from throughout the country who can help one another transform education the open source way. For teachers who can't know everything, it's a chance to pool knowledge, share best practices, and learn from common experiences.
Ellis said she recognizes that putting her students to work on open source projects will yield valuable results, but she admits that she lacks the experience necessary for properly guiding her students through their engagement with these projects--each with its own organizational pattern, communication platforms, and cultural norms. At POSSE, she was hoping to learn how to mentor students and help them overcome some of the most common barriers to participating in open source projects.
"What do you do in the middle of the semester when the open source contact, or connection, falls apart?" she said, speaking, unfortunately, from experience.
These are the kinds of problems students just don't encounter when working solely from textbooks, Ellis said, but instead of sheltering students from them, she wants to teach tomorrow's software engineers to work through such common roadblocks. The only way to do that is to get them into the field as quickly as possible.
"Any academic exercise is usually oriented around some glass house," said Dr. Evelyn Brannock of Georgia Gwinnett College in Lawrencewille, GA, another member of this year's POSSE cohort. "But in software development, nothing is its own world. You have to integrate."
Brannock has found that introducing her students to open source projects not only motivates them to do more work than they otherwise would during a typical semester, but also forces them to be part of a community, an unavoidable aspect of modern software development.
"You have to work with many different people with different coding styles," she said.
But working with professional communities also makes inevitable criticisms easier for her students to swallow, Brannock has found.
"They're going to hear constructive criticism from a different viewpoint," she said. "It's less daunting to hear criticism for an open source community than from your teacher."
At POSSE, Brannock was searching for new exercises to make software development relevant and fun for her students, something whose value can be measured by standards other than grades--something that shatters the glass house.
So was Dr. Steven Huss-Lederman of Beloit College in Beloit, WI, where computer science students complete two-year capstone courses designed to "bring [them] outside the university into external projects."
Every time he teaches the course, Huss-Lederman targets a single open source project to which his entire class can contribute. Senior-level students act as project managers, organizing the rest of the class and committing code to the chosen project. Additional students write patches they hope open source project leaders will accept, while others update documentation and coordinate communications between the class and the wider project community.
In the past, his students have contributed to some high-profile projects, like GNOME Accessibility (to which Ellis' students have also contributed). At POSSE, Huss-Lederman was trying to target the next project in need of eager students. Such a project would "expand our students beyond our department," he said, because being a successful software developer "is ... about being a member of a team, of a community."
And this kind of work is a valuable resume-builder, said Dr. Wei Kian Chen, who teaches in and coordinates the Computer Science and Innovation program at Champlain College in Burlington, VT. Working on open source projects, he said, allows students to graduate with portfolios of material they can demonstrate to employers as evidence of their qualification for professional positions.
Participating in open source projects connects students to something bigger than themselves, he said, and energizes them.
"Students are invited to participate," Chen said. "Open source invites them."
Yet while many of his students are already using open source tools, Chen said he suspects most of them don't know it. In fact, these students may have never even heard the term "open source," which means that few realize they actually have the means and the ability to improve the tools they're using every day. This, he says, will be his biggest challenge in the coming school year: How to teach both programmers and non-programmers about the open source way?
Like Ellis, Chen admits he won't be able to do it without the help of the open source community. One professor just can't know everything.