From Teaching Open Source
Beyond the scope of the Google Summer of Code program, there are many Free and Open Source Software projects who would welcome the opportunity to mentor students interested in working on their projects. These projects may also be willing to mentor local professors who are interested in teaching FOSS in their classrooms. This page contains a list of FOSS projects who would like to mentor students and educators, along with resources for learning more about each project. There is additional information for those who would like to get involved in the overall project and help connect students and educators to FOSS projects.
If you are interested in mentoring students and educators who are interested in your project, please list your information below using the provided template. The template is based on the information requested from FOSS projects applying to Google Summer of Code, so feel free to improve upon it.
If you are interested in getting involved in the overall project and help connect students and educators to FOSS projects, see the getting involved information below.
FOSS Projects Interested in Mentoring Students/Educators
- Rehearsal Assistant: an Android application intended for annotation of rehearsals in the performing arts, sound and voice recording, as well as other uses. A project of urbanSTEW.
- Xapian Search Library: a highly adaptable toolkit which allows developers to easily add advanced indexing and search facilities to their own applications.
- EiffelStudio: a complete development environment for Eiffel available on numerous platforms for serious software engineering practice.
- OpenNebula: a virtual infrastructure management system (a piece of software that manages the deployment, monitoring and control of virtual machines (VMs) on a pool of distributed physical resources).
- RTEMS: a standards compliant real-time operating system for embedded systems.
- TimeFinder: an automated timetabling application.
- CLAM Project: a full-fledged framework for developing audio, music, and multimedia applications.
- FreedroidRPG: a mature isometric role playing game with a penguin-shaped character
- Metalink: is a way to make downloads more reliable and error free, along with other useful features.
- NeL: NeL is a game development framework engineered specifically for the creation of open-source MMORPGs. It contains all of the essential modules (3D, sound, networking, etc.) as well as essential services for running an MMORPG shard and a reference implementation called Snowballs. NeL's crowning achievement is the commercial MMORPG Ryzom
- Mozilla: The Mozilla project creates software and tools for the open web, from the Firefox web browser to Thunderbird messaging to the Songbird media player, etc. Mozilla is a large and diverse project, in terms of technology and community, with a successful history of student and academic involvement and contribution.
- Ecere: The Ecere SDK is a cross-platform toolkit for building software applications. It introduces eC, an object oriented language derived from and fully compatible with C, compromising neither runtime performance nor ease of use. A built-in 3D engine is fully integrated.
- ASCEND: ASCEND is an free open-source software program for solving small to very large mathematical models. ASCEND can solve systems of non-linear equations, linear and nonlinear optimisation problems, and dynamic systems expressed in the form of differential/algebraic equations. Originally a project at Carnegie Mellon University, ASCEND is now developed by an international group of university-based volunteers. We participated for the first time in GSOC in 2009, and now would be interested in mentoring students independently as well.
- Freecell Solver: Freecell Solver is an open-source (MIT/X11 Licensed) and portable C library for automatically solving several types of single-player card games. Freecell Solver sports many features, a good speed, and practically infinite configurability, and has been integrated into several larger open-source and proprietary products.
If you are interested in getting involved in the overall project and helping connect students and educators to FOSS projects, list your name in the roll call, review past meetings or schedule new ones, or start reaching out to students and educators and connecting them to FOSS projects.
- Leslie Hawthorn
- Benjamin Kerensa
- Clif Kussmaul
- Ross Gardler
- Tim Cook
- Olly Betts
- Stjepan Rajko
- Luis Ibanez
- Patrick Hautrive
- Aaron Luna
Please feel free to review the Agendas.
You can connect students and educators to FOSS projects in several ways (feel free to expand this content with your own ideas):
- You can send outreach messages to students, educators and FOSS projects to inform them about the FOSS Mentor Projects
- You can coordinate with students, educators, and FOSS projects to form structured programs within which the students and educators can connect to FOSS projects. For example, you can help a university professor organize a computer programming class in which the students can work on open source for their class projects, or offer independent studies in which students work with FOSS projects.
To get the word out to teachers and students, we have developed two templates for letting them know about our FOSS Mentor Projects:
If you would like to help organize a structured program that in some way connects students, educators and FOSS projects, here are some tips:
- Find students and/or educators that would be interested (the outreach messages could be helpful). For example, talk to a professor whose class you've taken in the past, and see how she would feel about allowing her students to work on improving existing open source software for their class programming projects.
- Find FOSS projects that would be interested in mentoring students. The list above is a good starting point. Projects that have participated in Google Summer of Code could also be good candidates.
- Help develop the structure of the program, in terms of guidelines, resources, and expectations for all parties involved. The following resources might be helpful:
- The GSoC Mentoring Guide describes the role of a FOSS mentor, and offers guidelines on effective fulfillment of that role.
- Melange is a framework for representing Open Source contribution workflows, such as Google Summer of Code. Using this framework, it will be possible to host similar programs on the Google App Engine.
- The Individual Projects instructions for the Open Source Software Practice course at RPI are example guidelines for choosing and contributing to an open source project in the context of a class.
- The Apache Mentor Programme has instructions specific to those participating as part of a formal education course.
- The Humanitarian FOSS summer institute offers summer internships for undergraduate computing students, currently enrolled in American (US) academic institutions, who want to get involved in building free and open source software for use by humanitarian organizations.
- Ask around your school to see if past students have done open source related work for independent studies, co-ops, research, class projects, or similar credit-granting activities. See if you can talk with them or their advisor, read their proposals or look at their work (which should be publicly available if it's open source), and learn about how they made this happen at your particular institution. If no students from your institution have done such a thing in the past, try asking on the TeachingOpenSource Mailing List for stories of how other professors and students at other schools have done it.
GNOME Women's Summer Outreach Program
The Women's Summer Outreach Program was run in 2006 by Hannah Wallach and Chris Ball, who are writing up their experiences for Marina Zhurakhinskaya who plans to run it again in the summer of 2010.
- introductory post on Chris's blog, 2006
- Chris's notes on how it was advertised and what he learned from running the program
- minutes from an IRC meeting on 2010 WSOP plans and what takeaways there were from the 2006 WSOP