This is a course in practical, collaborative software engineering.
Students will gain experience in many practical areas, including the following:
|Source Control||Project Estimation||Prototyping||Capturing user
|User driven feature
mentors and teammates,
both local and remote
to different audiences
in an established
|Open source software
While most universities have project course curricula, this one differs in a few important ways. Specifically, it combines the following characteristics:
- Student teams will work within an established code base
- The code base will be from an established and ongoing open source project that is highly relevant to the current software ecosystem
- Student teams will span universities
This is different than most project courses that have the students begin their projects from scratch; learning how to get a handle on a code base and build understanding of it to the point where one can make coding contributions is a valuable skill that will be called upon repeatedly in a professional software engineering role.
Student teams will be associated with a select group of open source software projects. These projects are characterized by being active in both development and utilization as well as being open to new and relatively inexperienced committers. They are also projects that are deemed to be relevant in today's software ecosystem. We also believe there is value in seeding awareness of how to contribute to open source projects like these among future technology leaders. Ideally there will also be some value from the development work student teams contribute back to the project as well.
Student teams will span universities; this will produce better learning outcomes by promoting shared lessons and experiences and by forcing a greater investment in team communication and coordination.
Facebook will fly and put up in hotels all students, open source mentors and faculty to Menlo Park, CA for a Facebook Faculty Thought Leader Council (FFTLC) and course project Kickoff Hackathon on January 18th, 19th and 20th (Fri/Sat/Sun morning), 2013. The internationally flavored Hackathon is a terrific way to kick off the project collaboration as it both connects the teams, mentors and faculty in person, but also helps shortcut a lot of up front work for the students; i.e, setting up development environments, getting comfortable using a particular source control protocol, knowing where to look in the code base for certain types of functionality, etc.