Skip to content

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