RAs and UROP Projects

Research Opportunities in Educational Technology and Mobile Computing (updated August 2014)

The MIT Center for Mobile Learning (a joint project of CSAIL and the Media Lab) has fall 2014 RAs and UROP positions for work in mobile computing and education. The research involves MIT App Inventor, a Web-based development environment for creating original apps for Android smartphones and tablets. The system is intended for people without programming experience, including high school and middle school students, college non-computer science students, and hobbyists.

Our group runs a large-scale public Web service, with 1.9 million users, that lets people all over the world create their own mobile applications, and lets schools all over the world include mobile computing in their middle and high school curriculum.

UROP projects can range anywhere from developing new curriculum and programming language features and trying these with kids and teachers, to doing critical systems development and design work on a global-scale Web service for tens of thousands of users.

We're looking for people who are interested in educational technology and who also have skills in Java and/or Javascript. Experience with the Android OS would be a definite plus.

If you're interested, you should

  1. Begin by going to the MIT App Inventor site at appinventor.mit.edu to learn about App Inventor. Look under "Explore" and read some of the "Stories" to learn about people do with App Inventor. Follow the instructions under Getting Started to play with the system and create a couple of apps, and do a couple of the tutorials.
  2. Talk to a student on the App Inventor team: for example Wei Li (wli17@mit.edu) or Vedha Sayapparaju (vedha@mit.edu)
  3. See the paper
    Student Reseach Opportunites with MIT App Inventor, and do the "qualifiers". Make sure to do the development work qualifier if you are interested in becoming part of the development team.
  4. After you've done this, send email to (all of) Hal Abelson (hal@mit.edu), Andrew McKinney (mckinney@mit.edu), and Marisol Diaz (marisol@csail.mit.edu) describing what projects you've built with App Inventor (above). Also describe your background -- especially any experience with Java, Javascript or Android -- and your interest and availability.

Here are some projects we're looking for help with:

Join the App Inventor development team
Become part of the core team that is providing an extensive web service to a community of two million users. Fix bugs, add features, moderate the community forums, set new development priorities.

Collect and Curate App Inventor curriculum
People around the work are creating App Inventor curriculum and running classes and workshops. We need help in collecting and curating this material and setting up a worldwide App Inventor curriculum resource.

Add new features to App Inventor
Extend App Inventor by adding new components, improving the programming language, and incorporating more capabilities of the Android platform, such as links to sensor, Web resources, and background services. This generally involves programming in Java and Javascript and learning about the Android operating system and SDK.

Create new learning activities and curriculum units
Explore new ideas for teaching science, math, and technology using App Inventor. Create preliminary
curriculum units and try them out with kids. Help run workshops for students and teachers.

Apply data analytics to investigate how people create mobile apps.
Because App Inventor is an online development environment, there are extensive logs and repositories of user work and projects available for analysis. Use "big data" and machine learning methods to explore this information and gain insight into how people learn to program and create mobile applications.

Support the App Inventor user community
Play an active role on the user forums, collect bugs and feature requests, and see that these are addressed. Become a leader and a moderator in a community to thousands to teachers, students, and hobbyists.