This is a project-based course focusing on the design and implementation of practical software systems. Students will work in small teams to design and develop useful open-source software products that support our communities. Students will be paired with community partners and will aim to develop software that can be used after the course ends to solve real problems facing those partners today. Instructors will connect with the community partners and determine viable project areas prior to the course start. Students will meet with their community partners to analyze the challenges in their project area, agree on a concrete target project outcome, and gather requirements for their project. Based on these requirements, students will design and implement open-source software systems.
Projects for the Spring 2018 semester (pilot offering) focus on communities at four levels:
For more information about the course, see the Spring 2018 course syllabus: Syllabus
Academic Honesty and Ethical behavior are required in this course, as it is in all courses at Johns Hopkins University. This course will strictly enforce the Computer Science Department Academic Integrity policy which can be found at the department's web page.