MIT App Inventor

Last updated
MIT App Inventor
Original author(s) Hal Abelson, Marky Freddy
Developer(s) Google, MIT Media Lab, MIT Computer Science and Artificial Intelligence Laboratory
Initial releaseDecember 15, 2010;13 years ago (2010-12-15)
Stable release
nb194c / September 14, 2023;6 months ago (2023-09-14)
Repository github.com/mit-cml/appinventor-sources
Written in Java, Swift, Objective-C, Kawa, Scheme, JavaScript, HTML
Operating system Android, iOS
Available in19 languages
List of languages
English, Spanish, French, Italian, Korean, Dutch, Portuguese, Brazilian Portuguese, Russian, Swedish, Simplified Chinese, Traditional Chinese, Polish
Type Application software development IDE
License Creative Commons Attribution ShareAlike 4.0 Unported, Apache 2.0
Website appinventor.mit.edu

MIT App Inventor (App Inventor or MIT AI2) is a high-level block-based visual programming language, originally built by Google and now maintained by the Massachusetts Institute of Technology. It allows newcomers to create computer applications for two operating systems: Android and iOS, which, as of 25 September 2023, is in beta testing. It is free and open-source released under dual licensing: a Creative Commons Attribution ShareAlike 3.0 Unported license and an Apache License 2.0 for the source code. Its target is primarily children and students studying computer programming, similar to Scratch.

Contents

The web interface consists of a graphical user interface (GUI) very similar to Scratch and StarLogo, allowing users to drag-and-drop visual objects to create an application that can be tested on Android and iOS devices and compiled to run as an Android app. It uses a companion mobile app named MIT AI2 Companion providing live testing and debugging.

App Inventor provides integration with different online services, such as Google Sheets and Firebase.

When creating App Inventor, Google drew upon significant prior research in educational computing, and work done within Google on online development environments. [1]

History

The application was made available through request on July 12, 2010, and released publicly on December 15, 2010. The App Inventor team was led by Hal Abelson [1] and Mark Friedman. [2] In the second half of 2011, Google released the source code, terminated its server, and provided funding to create The MIT Center for Mobile Learning, led by App Inventor creator Hal Abelson and fellow MIT professors Eric Klopfer and Mitchel Resnick. [3] The MIT version was launched in March 2012. [4]

On December 6, 2013 (the start of the Hour of Code), [4] MIT released App Inventor 2, renaming the original version "App Inventor Classic" [5] Major differences are:

App Inventor Classic Blocks Editor App Inventor Block Editor.png
App Inventor Classic Blocks Editor

Open Blocks is distributed by MIT's Scheller Teacher Education Program (STEP) and is derived from master's thesis research by Ricarose Roque. Professor Eric Klopfer and Daniel Wendel of the Scheller Program supported the distribution of Open Blocks under an MIT License. [6] Open Blocks visual programming is closely related to StarLogo TNG, a project of STEP, and Scratch, a project of the MIT Media Lab's Lifelong Kindergarten Group led by Mitchel Resnick. App Inventor 2 [5] replaced Open Blocks with Blockly, a blocks editor that runs within a web browser.

The MIT AI2 Companion app [7] enables real-time debugging on connected devices via Wi-Fi, or Universal Serial Bus (USB). In addition to this the user may use an "on computer" emulator available for Windows, MacOS, and Linux.

Spin-offs

In June 2018, a baked version of App Inventor 2 called Kodular was launched. [8] It is promoted as an 'improved' and more modern version of App Inventor 2. [9]

See also

Related Research Articles

<span class="mw-page-title-main">Logo (programming language)</span> Computer programming language

Logo is an educational programming language, designed in 1967 by Wally Feurzeig, Seymour Papert, and Cynthia Solomon. Logo is not an acronym: the name was coined by Feurzeig while he was at Bolt, Beranek and Newman, and derives from the Greek logos, meaning word or thought.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

A software development kit (SDK) is a collection of software development tools in one installable package. They facilitate the creation of applications by having a compiler, debugger and sometimes a software framework. They are normally specific to a hardware platform and operating system combination. To create applications with advanced functionalities such as advertisements, push notifications, etc; most application software developers use specific software development kits.

<span class="mw-page-title-main">Hal Abelson</span> American mathematician

Harold Abelson is an American mathematician and computer scientist. He is a professor of computer science and engineering in the Department of Electrical Engineering and Computer Science at the Massachusetts Institute of Technology (MIT), a founding director of both Creative Commons and the Free Software Foundation, creator of the MIT App Inventor platform, and co-author of the widely-used textbook Structure and Interpretation of Computer Programs, sometimes also referred to as "the wizard book."

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language, also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations. VPLs are generally the basis of Low-code development platforms.

StarLogo is an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at the Massachusetts Institute of Technology (MIT) Media Lab and Scheller Teacher Education Program in Massachusetts. It is an extension of the Logo programming language, a dialect of Lisp. Designed for education, StarLogo can be used by students to model or simulate the behavior of decentralized systems.

<span class="mw-page-title-main">Ellen Spertus</span> American computer scientist

Ellen R. Spertus is an American computer scientist who is currently the Elinor Kilgore Snyder Professor of computer science at Mills College, Oakland, California, and a former senior research scientist at Google.

<span class="mw-page-title-main">Mitchel Resnick</span> American academic and programmer

Mitchel Resnick is an American computer scientist. He is the LEGO Papert Professor of Learning Research at the Massachusetts Institute of Technology (MIT) Media Lab. As of 2019, Resnick serves as head of the Media Arts and Sciences academic program, which grants master's degrees and Ph.D.s at the MIT Media Lab.

<span class="mw-page-title-main">Crash reporter</span> System software that identify and report crash details

A crash reporter is usually a system software whose function is to identify reporting crash details and to alert when there are crashes, in production or on development / testing environments. Crash reports often include data such as stack traces, type of crash, trends and version of software. These reports help software developers- Web, SAAS, mobile apps and more, to diagnose and fix the underlying problem causing the crashes. Crash reports may contain sensitive information such as passwords, email addresses, and contact information, and so have become objects of interest for researchers in the field of computer security.

<span class="mw-page-title-main">Scratch (programming language)</span> Programming language learning environment

Scratch is a high-level, block-based visual programming language and website aimed primarily at children as an educational tool, with a target audience of ages 8 to 16. Users on the site can create projects on the website using a block-like interface. Scratch was conceived and designed through collaborative National Science Foundation grants awarded to Mitchel Resnick and Yasmin Kafai. Scratch is developed by the MIT Media Lab and has been translated into 70+ languages, being used in most parts of the world. Scratch is taught and used in after-school centers, schools, and colleges, as well as other public knowledge institutions. As of 15 February 2023, community statistics on the language's official website show more than 123 million projects shared by over 103 million users, over 804 million total projects ever created, and more than 95 million monthly website visits.

<span class="mw-page-title-main">Xamarin</span> American software company

Xamarin is a Microsoft-owned San Francisco-based software company founded in May 2011 by the engineers that created Mono, Xamarin.Android and Xamarin.iOS, which are cross-platform implementations of the Common Language Infrastructure (CLI) and Common Language Specifications.

<span class="mw-page-title-main">Mono (software)</span> Computer software project

Mono is a free and open-source .NET Framework-compatible software framework. Originally by Ximian, it was later acquired by Novell, and is now being led by Xamarin, a subsidiary of Microsoft and the .NET Foundation. Mono can be run on many software systems.

<span class="mw-page-title-main">OsmAnd</span> Offline maps & navigation Android and iOS app

OsmAnd is a map and navigation app for Android and iOS. It uses the OpenStreetMap (OSM) map database for its primary displays, but is an independent app not endorsed by the OpenStreetMap Foundation. It is available in both free and paid versions; the latter unlocks the download limit for offline maps and provides access to Wikipedia points of interest (POIs) and their descriptions from within the app. Map data can be stored on the device for offline use. Using the device's GPS capabilities, OsmAnd offers routing, with visual and voice guidance, for car, bike, and pedestrian. All of the main functionalities work both online and offline.

<span class="mw-page-title-main">ScratchJr</span> Visual programming language

ScratchJr is a visual programming language designed to introduce programming skills to children ages 5–7. The app is considered an introductory programming language. It is available as a free app for iOS, Android and Chromebook.

<span class="mw-page-title-main">Blockly</span> JavaScript library

Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0. It typically runs in a web browser, and visually resembles the language Scratch.

Eric Klopfer is a professor and director of the Scheller Teacher Education Program and the education arcade at MIT. Klopfer's research explores how educational technology, games, and computer simulations can be tools for teaching complex systems and developing cognitive and computational thinking skills. Klopfer and his research group developed StarLogo and App Inventor for Android and other visual programming language platforms that build on the work of Seymour Papert and constructionism in education. He is also the principal investigator in the research and development of award-winning games designed for building understanding in science and math, connecting game play with scientific practice, problem-solving, and real-world issues.

<span class="mw-page-title-main">Catrobat</span> Open source block-based programming language

Catrobat is a block-based visual programming language and Open Source Software non-profit project. First released in 2010 by Wolfgang Slany from the Technical University Graz in Austria. The multidisciplinary team develops the programming language and free apps for teenagers to create their own games, animations, music videos, or all other kinds of apps directly on a smartphone based on the Catrobat framework.

<span class="mw-page-title-main">Turtlestitch</span> Embroidery platform

Turtlestitch is a free and open source platform for generating and sharing patterns for embroidery machines. Turtlestitch is derived from educational programming languages such as Logo, Scratch and Snap! using the same jigsaw style programming paradigm which offers simplicity suitable for novices but has powerful features, described as ‘low threshold, high ceiling’ by Seymour Papert. Its microworld is a turtle representing the needle of a programmable embroidery machine. Turtlestitch can be used for creating novel patterns for embroidery, combining the abstract logic of computing and the physical materiality of textiles. Its primary use is educational, as it offers a way of introducing programming to audiences with diverse interests. A growing gallery of open source embroidery designs enables community-based collaboration and shared learning. In 2017, Turtlestitch received the award for the best Open Educational Resource in the German-speaking countries.

References

  1. 1 2 Hardesty, Larry (August 19, 2010). "The MIT roots of Google's new software". MIT News Office.
  2. Wolber, David; Abelson, Hal; Spertus, Ellen; Looney, Liz (May 2011), App Inventor for Android: Create Your Own Android Apps , O'Reilly, ISBN   978-1-4493-9748-7
  3. "App Inventor @ MIT".
  4. 1 2 Clark, Andrew (December 30, 2013), "App Inventor launches second iteration", MIT News, retrieved 7 July 2019
  5. 1 2 App Inventor Classic, December 3, 2013
  6. "On the Shoulders of Giants!". Archived from the original on August 11, 2010. Retrieved August 10, 2010.
  7. "MIT AI2 Companion". May 25, 2019. Retrieved 8 July 2019.
  8. "Kodular". Kodular. Retrieved 2022-06-22.
  9. Barreiro, Diego (2018-12-31). "Thank you 2018!". The Kodular Korner. Retrieved 2022-06-22.