UAPPI: A Platform for Extending App Inventor Towards the Worlds of IoT and Machine Learning

UAPPI: A Platform for Extending App Inventor Towards the Worlds of IoT and Machine Learning

Antonio Rizzo (University of Siena, Italy), Francesco Montefoschi (University of Siena, Italy), Maurizio Caporali (University of Siena, Italy) and Giovanni Burresi (University of Siena, Italy)
DOI: 10.4018/978-1-5225-5969-6.ch003
OnDemand PDF Download:
No Current Special Offers


This chapter describes the opportunities offered by an extension of MIT App Inventor 2 named UDOO App Inventor (UAPPI). UAPPI aims to facilitate learning in programming the behavior of objects in the physical world (e.g., internet of things). In addition, UAPPI offers the opportunity to experiment with the emerging field of interactive machine learning. Two case studies devoted to different user groups are described to illustrate these opportunities. In the first, dedicated to middle school students, a door is made interactive; in the second, aimed at interaction designers, a light source is controlled by the blink of the eyes and the smile intensity.
Chapter Preview

App Inventor

App Inventor for Android is a visual programming platform for creating mobile applications (apps) for Android-based smartphones and tablets. It was developed at Google Labs by a team led by Hal Abelson on sabbatical from MIT (Abelson, 2009). Today, App Inventor runs as a web application administered by staff at MIT’s Center for Mobile Learning - a collaboration of MIT’s Computer Science and Artificial Intelligence Laboratory and the MIT Media Lab. The App Inventor source code is available under an open-source license, allowing anyone to deploy App Inventor servers. In 2014, MIT hosted the web IDE, servicing 87,000 users per week, with a total of over 2.2 million registered users who developed 5.5 million apps (Schiller et al, 2014). Today this free online app development environment serves more than 6 million registered users, who have created almost 22 million apps ( in that they revolve around block-based languages. Developing apps in App Inventor or these other languages does not require writing textual code. The look and behavior of the app is developed visually, using a series of building blocks for each intended component. Like its competitors, App Inventor aims to make programming enjoyable and accessible to novices.

Complete Chapter List

Search this Book: