Teaching mobile computing and developing software to support computer science education

Many schools have introduced, or are considering, a programming course targeting mobile devices to satisfy student interest in programming smart phones. In addition, a new class of mobile devices are appearing that combine the functionality of an eBook reader with a web browser, and many of them are based on the same programming frameworks as the smart phones. We report on the successes of mobile device programming courses at two schools. In addition, we report on the accomplishments of students developing software to leverage these newer, multi-function devices in supporting broader computer science education initiatives. In particular, we have developed a service-oriented application that allows students to compile and test programs written in Java and C++ that can be invoked from these devices. We have developed other software allowing these devices to function like Tablet PCs. After describing these important tools, we discuss our current efforts to use these mobile devices in computer science education.