CS294-35:
Cell Phones as a Computing Platform

Tu/Th 12:30-2 in 310 Soda
Spring 2010, CCN: 26809
3 Units

Prof. Eric Brewer


Cellphones are the most successful technology ever, with over 3B users worldwide.  Thanks to Moore's Law the modern cellphone is actually more powerful than early PCs and yet only recently have phones been taken seriously as computers.

The purpose of this class is to create a community of phone programmers at UC
Berkeley and to enable a new platform for a broad range of research. We will focus mostly on open-source phones, aim for a single code repository for the class, and promote not only code sharing but the creation of an infrastructure for new applications and future research. The first part of the class will focus on understanding the phones and developing or porting basic tools and libraries. The second part and most of the grade will be based on an extended group project on a real phone (or phones) with a demo at the end. A wide range of topics will be allowed, including networking, VoIP or video, sensor integration, camera projects, core
OS or DB, UI/HCI and developing region projects.

Students should have reasonable programming skills if they intend to take the class for a grade.  Non-programmers may be able to audit or possibly take the class pass/fail.

The format will be one lecture (Tuesdays) and one extended discussion each week (Thursdays).

The specific schedule will be posted on a wiki page, coming soon.

Intro lecture materials:
      WIRED article on the history of the iPhone
      random video of N800
      lecture notes (TBD)