Skip to content

14. Interface and Application Programming - Ryan Zhou and Kabir Nawaz

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.

Tool 1: Processing

Processing is a simple application which we used this week to send signals to electronics programmed with code through Arduino IDE. Speficially, Processing makes it easy for users to create interfaces, such as a button, on the screen; we made it so that, when this button is clicked, it sends a message to electronics connected to a usb port on the device. When a microcontroller receives this message, LEDs light up.

A link to download Processing can be found here.

Processing: Pros and Cons

Pros

  • Easy to use with a user-friendly UI
  • Effective for simple functionalities (ex: lighting up LEDs based on user input)
  • Open-source
  • Great for beginners

Cons

  • Isn’t very advanced, hard to implement more complex functionalities
  • Low-level, can’t have a message/input box or draw a GUI
  • Not as effective for experienced programmers

Matlab Simulink is, according to their website (found here), a versatile tool that can be used for model-based design, simulations, model-based systems engineering, and more. Furthermore, it is described as “a block diagram environment used to design systems with multidomain models, simulate before moving to hardware, and deploy without writing code” on its website. All of these features make it suitabnle for a variety of purposes when it comes to interface and application programming.

Pros

  • Very versatile with detailed tools for many different purposes
  • Made for users to test their systems with virtual/physical models, making prototyping easier
  • Makes it easy to write and export code in C, C++, and many more languages

Cons

  • Designed for larger scale projects, might not be as effective for smaller hobby projects
  • Not very beginner-friendly because of its wide variety of tools

How were these comparisons created?

In order to get a grasp of the pros and cons of Processing, we used what Ryan learned from his individual assignment to create a list of things that felt easy to do with Processing vs. things that were more difficult. Because Processing is a rather simple application to create GUIs in, we felt it was more beginner friendly. On the other hand, in order to actually test Matlab Simulink, we first signed up for 30 day free trials of Matlab Simulink before reading the information included in this link to learn how to create GUIs in Matlab Simulink. From this link and other links on the page that it links to, we found that Matlab Simulink is quite advanced, and when we first tried to create an app/GUI programmatically, by writing the code ourselves in the language that Matlab uses, we ran into many difficulties. So, instead of doing this, we ended up using the App Designer, a tool in Matlab Simulink that allows users to build a user interface using a drag-and-drop environment. Although this was simpler than our first approach, it still felt much more difficult and advanced than anything we did in Processing, which is how we came to our conclusions regarding the pros and cons of Matlab Simulink.


Last update: July 5, 2024