NPFI actively seeks to support new college-level classes to develop and customize open source software for local non-profits. Such a development process has the following elements:
- In a 1-semester course, students develop and customize a software product that serves a mission-critical activity of a local non-profit organization. Examples of past projects can be viewed here.
- Students interact with the non-profit on a regular basis (e.g., weekly) throughout the semester to show progress and get feedback. This agile approach is part of the CO-FOSS development model.
- Students use open source tools to develop the software. For example, past projects have used PHP, MySQL, Eclipse, Java, and GitHub.
- The instructor uploads the completed software into a public repository (e.g., GitHub) under an open source license, so that it can be reused and/or extended by a future student development team.
- Students gain a unique learning experience and a completed project to include in their resumes.
- Students develop critical communication and teamwork skills that prepare them for professional success.
- Student make important community service contributions.
- The non-profit gains new and useful software that will outlast the semester.
- The project provides good will and positive press for both the university and the non-profit community.
- Teaching Resources for Instructors: Detailed Syllabi, Assignments, Requirements Documents, Code Bases, Student Evaluations, Publications, etc.
- Project Roadmap for Instructors: 10 steps to implement an NPFI project
- Tips and Resources for Instructors: Practical details for implementing the Project Workflow
Look at the examples of past projects to help you envision developing a course to meet similar needs for a local non-profit. Consider applying for an NPFI grant to help support your work. Please contact us if you would like feedback on your ideas.