Massachusetts Institute of Technology
Dept. of Electrical Engineering and Computer Science
Spring Semester, 2015
Making mobile apps
Making Mobile Apps was an experimental course offered in
spring 2015 by the MIT Department of Electrical Engineering and
Computer Science. The course was taught by Prof. Hal Abelson with the
assistance of Franck Dernoncourt, Amin A Manna, Ashley M Smith, Aubrey
J Colter, Diana F Lamaute, Jason Hao Gao, and Mikael S Mengistu.
The goal of the course was to introduce students to mobile app design
and implementation, from a first introduction that assumed knowledge of
Java but no prior mobile development experience, to an
end-of-semester project producing a working app of near professional
quality.
The semester began with students
using MIT App Inventor, a
graphical development environment that lets beginners quickly
create apps for Android devices. The purpose of this introduction was
to enable students to being creating apps immediately and to emphasize
that good app design is a result of good ideas, rather than coding
sophistication. Starting the third week of the course, students
formed teams, and the teams used App Inventor to create working useful
apps by mid-semester.
The class resumed after mid-semester break with an introduction to
Android Studio, Google's preferred framework for professional app
development. After two weeks of introduction to Studio, students
again formed teams that each created a high-quality app using Android
Studio. Some teams built a second version of their App Inventor app,
others did something new. The premise of the course was that the App
Inventor work had given students a basic orientation to the Android
framework (e.g., activities, intents, event-driven programming) so
that the introduction to Android Studio could proceed quickly and
smoothly
One noteworthy feature of the course was its use of mentors who
volunteered to work with the teams, including engineers from Google
Cambridge, and professional application developers from the
Boston-area software developer community.
Following are brief descriptions of the Android Studio apps (click on
each image):