Course Projects

This is primarily a project class. You should form project teams of four to five students over the first five weeks of the semester. The project will include the creation of a novel mobile application that leverages multiple technologies and integrates information from multiple sources. As a team, you will develop two separate front-end applications using two different platforms. For instance, you might do a mobile web application and another native application. You will also develop a back-end service with a RESTful API that supports your front-end applications.

The projects cover an extremely broad topic space. There is significant opportunity to bring your skills and interests to these projects. This is also a great opportunity to learn something completely new. The important thing is to work on a project that meets a real need, solving a real problem. Before your project proposal, your first assignment will be to interview potential users and identify real problems that need to be solved.

An important aspect of the projects in this class is that each project will become a unique and challenging "contribution to the platform". This means that you will document your project and make it available to your peers as a building block for future projects. For instance, you might decide to build an application using Android and the Facebook API. Through the project you will learn how to put these together and you will document it such that others can learn what you learned.

For each project you will create a video presentation. These will be used in class and the video will also become part of the project documentation. This requires some practice and should not be done in the final hours before the assignment is due. It is a lasting record of your work, and something you can use to promote yourself to potential employers and investors. You should take pride in it! We have lots of experience and help for you in making this work. We will give you guidelines and requirements for these videos as well as advice on tools and methods for producing the videos.