Good news and bad news: Reflections on Using AppInventor to Teach First-year Programming | blog@CACM | Communications of the ACM.

MIT App Inventor is a graphical programming system that runs in the cloud via your Internet browser. Programs are developed in the browser and then offloaded to an Android phone or tablet, or emulator, to execution and testing. App Inventor is likely the fastest and easiest way to create Android apps, certainly for the novice developer.

Good news: Beginners really take to using App Inventor to create Android apps.

Bad news: Advanced students found App Inventor stifling and preferred using Android SDK and Eclipse once they reached that level of ability. App Inventor 1’s limitations hindered the advanced students development of the apps they wanted to produce.


  • Instructors found the training materials good but did not always work as expected: “Sometimes students told me that they worked through the exercises mechanically, without really absorbing the material“. Students learned better when they came up with their own project ideas. App Inventor 2, which is now available, is a significant advance over AI 1.
  • Students like the instructional materials but they were not challenging – in fact, the materials seem to me to geared to late elementary to middle school level.
  • They were using App Inventor 1 (version 2 is out now), which was known to have limitations and defects. Version 2 might yield different results.


They recommend that App Inventor be used for an initial introduction to programming for college students. Beyond that, App Inventor is good for teaching complete novices and non-computer science students, and younger students. Advanced students and computer science students will likely wish to migrate to Java programming in Eclipse and the Android SDK, relatively early on in their learning experience.

Enhanced by Zemanta

By EdwardM

2 thoughts on “Teaching 1st year programming using MIT App Inventor”

Comments are closed.