Skip to main content


CS5152 - Open-Source Software Engineering Each student will work in a team on an established code base from an active open-source project using the guidance of an industry mentor from that project.

Teams Teams and projects will be decided before the semester begins. Unlike previous years, teams will be made up of solely Cornell students.

Kickoff Hackathon The Kickoff Hackathon, sponsored by Facebook, will kick off the projects by putting students in face-to-face contact with their project mentors from industry. All students are required to attend. The Kickoff Hackathon will most likely be the weekend of January 31st and February 1st. Unlike previous years, the Kickoff Hackathon will be held here and will be only Cornell students and project mentors.

Projects Students will rank the available projects in order of interest, and a matching process will be run to determine which project a student is assigned to. Team rosters will be settled prior to the Kickoff Hackathon.

Grading 75% of a student's grade will be determined by contribution to the code base. The industry mentor will provide the majority of this evaluation. The remaining 25% of a student's grade will be determined by class participation and deliverables. There will be no final exam, but there will be final deliverables such as short papers and presentations to be done at the scheduled final time.

Weekly Meetings Every week students will video conference with their entire team, including their mentor, for 30 minutes hopefully during lab hours (some teams may need to meet outside of class due to external constraints). These meetings should quickly review what has been done, what problems people are hitting, and what should be accomplished in the next week. In order to keep meeting times flexible so that we may meet the constraints of others on the projects, students must be able to attend all lab times, at least until a meeting time has been decided.

Lecture W 11:15-12:05 in Olin 218
Lab MF 11:15-12:05 in Upson 261
Units 4

Application Process - CLOSED

By November 21st, students must e-mail the instructor a PDF with a short description (as in less than a page) of their qualifications and motivations for the class. For students newly admitted for Spring 2015, please send me an application as soon as possible. You are not expected to have any software-engineering experience, but it would be describe any programming experience you have from classes, internships, or personal projects. You may provide a Cornell faculty member and/or a mentor from a past internship as a reference. Senior and MEng students will be given priority, and juniors will be admitted if space permits. Undergraduates, please include your current (major) GPA. MEng students, please include your undergraduate (major) GPA.

You will not be able to enroll in this class directly, since enrollment is tentative on being admitted. Please enroll in classes as if this class were unavailable, since it is easier to drop classes than add them, and once admitted into CS 5152 your enrollment is guaranteed.

Instructor Ross Tate
Office 434 Gates Hall
Office Hours by appointment