Week 17 : INTERFACE AND APPLICATION PROGRAMMING

Assignment

. Create an application that interfaces with an input &/or output device.

An application program is any program designed to perform a specific function directly for the user or, in some cases, for another application program. Examples of application programs include word processors; database programs; Web browsers; development tools; drawing, paint, and image editing programs and communication programs. Application programs use the services of the computer's operating system and other supporting programs. The formal requests for services and means of communicating with other programs that a programmer uses in writing an application program is called the application program interface (API).

Learning outcomes

Interpret & implement design and programming protocols to create a Graphic User Interface (GUI).
Explained the the GUI that you made and how you did it
Explain the problems and how you fixed them
Included original design files

Interface Tools

Scratch

With Scratch, you can program your own interactive stories, games, and animations — and share your creations with others in the online community. Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century. Scratch is a project of the Lifelong Kindergarten Group at the MIT Media Lab. It is provided free of charge.
App Inventor
MIT App Inventor is an innovative beginner's introduction to programming and app creation that transforms the complex language of text-based coding into visual, drag-and-drop building blocks. The simple graphical interface grants even an inexperienced novice the ability to create a basic, fully functional app within an hour or less.
Processing
Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping.

Creating the application


I don't have any coding/programming background. During Fab-academy - is the first time I'm coming atleast close to programming. :-D I decided to use my Hall-effect sensor board from the input week. I decided to try out processing after reading about the above three. My friend in the lab - Tanvir - shared a tutorial.

This gave me a rough idea how to start.

I downloaded processing the command -

sudo pacman -S psudo pacman -S processing
The structure of Processing is somewhat similar to Arduino IDE, and in such a way that it is divided into "Setup" and "Draw". All the parameters including the port from which the data is read is defined in the "Setup" function.
For this, I made a couple of images in GIMP by adding 2 images and making the text as shown below.


The idea is that, the initial screen would be the first image and once a magnet is brought near the HALL SENSOR in the board, it should show the second image with a certain delay that will be defined in the program.

Testing the interface

Remarks

This week gave me an idea on how to create interfaces and applications and gave an insight on how to communicate through serial and use it as an input/output.

File/s to download.

The Processing file can be here.