14. Interface and Application Programming: Amalia Bordoloi and Angel Fang¶
Group assignment:
- Compare as many tool options as possible.
- Document your work on the group work page and reflect on your individual page what you learned.
Overall Comparison: Processing vs. MIT App Inventor¶
Feature | Processing | MIT App Inventor |
---|---|---|
Type | Text-based IDE for creative coding | Block-based visual app builder |
Programming Style | Java-based code | Drag-and-drop blocks |
Best For | Visual/interactive prototypes, serial data (e.g., Arduino) | Mobile apps with simple UIs, Bluetooth/IoT interaction |
Hardware Integration | Strong with serial (e.g., Arduino, sensors) | Strong with Bluetooth/Wi-Fi devices (e.g., ESP32, Arduino) |
Ease of Use | Beginner-friendly code, but requires typing | Very beginner-friendly, no code required |
Offline Use | Yes (Processing IDE) | Yes with offline App Inventor version (optional) |
Processing¶
Pros¶
- Great for visual programming, drawing, and real-time data visualization
- Excellent for communicating with Arduino via serial port
- Supports external libraries (e.g., ControlP5 for GUI)
Cons¶
- Not for mobile or web apps
- GUI requires manual coding and is less modern
MIT App Inventor¶
Pros¶
- Easily create Android apps with Bluetooth, Wi-Fi, sensors
- Ideal for educational environments or rapid mobile app prototyping
- Built-in blocks for hardware like micro:bit, Arduino (via Bluetooth), ESP32 (via Wi-Fi)
Cons¶
- Limited customization compared to full code
- Only Android (iOS support is experimental)
It is better to use processing if you want a desktop interface with real-time visuals, you are reading or writing data to hardware over serial, or you are making an interactive art/tech display. It is better to use MIT APP Inventor if you want a mobile interface, your device communicates with Bluetooth or Wi-Fi, or you want a block-based, beginner-friendly workflow.
To see full conversation with ChatGPT about this week, visit Amalia’s Interface Week.
Last update:
May 16, 2025