Open source software (OSS) is generally defined as computer software that you or I can download, use, modify, and distribute. Although some OSS projects do receive support from corporations, any given product, in order to thrive, must nurture and grow a community of contributors and followers—people who write the source code, fix bugs, train users, argue about next steps, and spread the word.
This necessity of survival has at least two important consequences for high school teachers like me (and perhaps you): 1) OSS communities organize and host open, ongoing, and frequently free or low-cost interactive events and trainings; and 2) existing community members tend to be kind, generous, and welcoming to newcomers of all ages.
In what follows, I will explain how a recent project of mine benefitted from working with OSS and OSS professionals in the hope that other teachers can use the project as a springboard or framework for helping students develop professional connections and tackle complex problems.
Let me summarize the project as quickly as I can: in January 2012, my team of 17 high school seniors at High Tech High Chula Vista (HTHCV) set out to address the parking and congestion problem on their campus. Three months later, after investigating the scope and source of the problem, attending an OSS training camp, learning Drupal (open source website building software), and spending many hours designing, building, refining, testing, and marketing, the team launched a community rideshare website at the school’s Festival del Sol Exhibition. With over 100 current users, the site has helped reduce congestion and facilitate ridesharing.
The expertise and generosity of Drupal community professionals played a large role in helping the students succeed. Our first intersection with this community occurred at Sand Camp, an annual multi-day festival at which Drupal aficionados gather in San Diego to learn, train, network, and socialize. My entire team of high school students attended the camp for free, and they attended beginner track classes on working with the software.
At camp, they also gained exposure to the Drupal community and completed an assignment to make three personal contacts and reflect on their camp experience. Most students walked away surprised at how open the community is to helping and welcoming newcomers. Here’s a representative excerpt from a student reflection:
One thing that struck me was the people. They were good people who all shared a common interest that was not only positive, but also something they could make a living off of.
Soon after Sand Camp, three members of local Drupal community, eager to share their excitement about OSS, visited our school to provide guidance and feedback on our project. All three professionals worked for Achieve Internet, a San Diego-based company that provides enterprise website consulting services.
Achieve President Ron Huber’s visit helped students understand, in a more profound way than a teacher could hope to communicate, that the limitation of our project’s scope came from real world contingencies as opposed to arbitrary teacher-imposed limits.
It happened like this: the student team presented their dreams for the carpool website—which included a mobile app, real-time rideshares, carpool driver rankings, and carpool contests. Ron’s diplomatic response to the presentation was that the team should narrow their focus—select one key piece of functionality and make it work great. Ron also pointed the team to a TED talk by Simon Sinek that echoed the message of laser focus and also explained the importance of knowing why you are doing things. This video, and Huber’s visit, inspired the project leaders to craft a succinct “why” statement:
We think every student deserves a safe and reliable ride to school and we believe that our community can work together to make this a reality.
With this new rallying cry and a dedication to delivering a simple and high-quality solution, the team crafted a new and simpler vision for the site, which would allow parents to input their address, view other potential carpoolers on a map, and use private messaging to contact other carpoolers. Ultimately, such a site turned out to be achievable in our timeframe.
On the same day Ron visited, developers Dagoberto Aceves and German Licon provided technical guidance and shared their passion for computer science and OSS. With the students, Dago and German discussed the the ins and outs of Drupal, as well as issues related to the site’s look-and-feel, multi-lingual capabilities (many HTHCV parents are Spanish speakers), and user experience. The students also worked with Dago and German to develop plans for software development, as well as a timeline for testing and launching the site.
A week prior to launch, Dago returned to school to help upgrade the Drupal version, move the site onto the production server, and address several other small issues. While working with Dago that day, the students observed first-hand how a professional addresses a problem by reading documentation, browsing issue queues, and debugging. It became evident to the students that the ability to be productive with Drupal requires a knowledge of available resources, and Dago showed students how to look, how to borrow, and how to ask for help.
The wider Drupal community also contributed to the students’ project in several ways. Students regularly posted and answered questions on drupal.org, a site where thousands of developers exchange ideas every day around the clock. If you’re unfamiliar with OSS, it may seem incredible that professionals respond to questions from people they don’t know for free, but trust me, it’s true. By participating in these online discussions, students not only received answers to their technical questions about their carpool site, but they also learned the ins and outs of a discourse community, gaining confidence in their ability to ask for help and manage their online rhetorical posture.
When the time came for beta testing, students posted a note to the San Diego Drupal User Group forum, asking the group to test the carpool site. Again, local professionals stepped up to offer critique through the forum, sharing ideas and expertise.
In the end, Drupal the software worked well for our site, and the Drupal community helped students get a peek at the world outside school, work with professionals, and participate in a shared-interest community. What excites me, after reflecting on the project, is the great potential for student involvement in OSS. There are hundreds of OSS projects across the world and they host countless camps, user groups, and meetups that students can attend, typically for free or close to free. OSS professionals have both the interest and obligation to welcome and help newcomers, and these live-person connections help students address immediate project tasks and also discover their own passions, strengths, weaknesses, and interests.
If you believe, as I do, that students deserve to tackle complex, real-world problems, you also probably understand that addressing such problems requires vision, planning, contacts, expertise, and risk-taking. During our project, working within an OSS community provided a way for students to engage in all those aspects of problem solving. Drupal enabled our high school project team to pursue the guiding vision that every student deserves a safe and reliable ride to school.
One final note: joining the Drupal community, even if some never return to it, will have influenced students beyond their work in the carpool project. High school students, including the seniors I teach, approach their coming adulthood with some trepidation. But because the “open” ethos of the OSS community removes age restrictions and encourages participation by all those who are capable and willing, OSS provides a vision for a welcoming world, as evidenced by this student reflection, written the day after she attended Sand Camp with our team:
What struck me most about the camp was the diversity of people that were in attendance. I honestly thought I was going to be walking into a lecture hall full of computer nerds. When I first walked in, the first thing that I noticed was that there were people of all different ages. Our class was the youngest group of people here, but there were a good number of people who looked like they were in their early 20’s. I think the age group that surprised me the most were the people who looks like they were older than sixty. I thought this was really awesome because my grandparents barely know how to call someone on their cellphones, imagine if they could create websites!