User:Ndelaney9295/ENES100/Apps

Back to Creators team page.

Give instructor top 3 project choice list
I submitted three project choices and was assigned Apps.

Write problem statement
My goal is to use Google's App Inventor to create an Android application that could be useful to the college.

Assign Task1
During the first week, I will experiment with App Inventor and learn how it functions. My first specific goal will be to program an app that changes the color of a phone's screen.

Compare actual work done to Task1
I successfully created a program that conforms to the above-stated parameters, and created two more with the assistance of the App Inventor's tutorial.

Week1 Narrative
Using the App Inventor, I learned that there are three primary windows: Viewer, Editor, and Phone. The "Phone" is the actual Android Phone itself, but can be substituted with an Android Emulator which, for simplicity's sake, will comprise the bulk of the images on this page.

The Viewer is the screen in which the components of the app are arranged on the screen. In addition, any media used in the app is added in the Viewer. The Editor tells each component how to behave, and the Phone/Emulator visualizes and allows for the testing of the app.

I attempted, without looking up any instructions, to create an app to change the background color of the screen. I managed to do this with a button labeled "Red," and the screen changed accordingly. Try as I might, though, I couldn't get the screen to change back to its original color. Because of this I decided to start going through the apps in the App Inventor's tutorial.

The first app tutorial was called HelloPurr and is designed to show a picture of a cat and play a meowing sound when the picture it touched by the user. While I used the provided meowing sound, I decided to use a picture of my own cat, which came out slightly blurry, as it's difficult to get a cat to look at a camera at all, much less hold that position for more than a nanosecond. I named the app MonkeySound, as the cat's name is Monkey. When I had one of my friends test the app, the instructions ("Pet the Monkey") were not only slightly risque-sounding, but led him to believe that the app functioned by dragging his finger across the picture rather than tapping it. I changed the text to say "Touch the Cat." and it can now be downloaded here.

The next app in the tutorial was called PaintPot and was designed to have the user "paint" over the previous picture of the cat. I changed the picture to one of my own face that I took in the Engineering classroom and changed the title of the program to DeFace. Despite no instructions being present, the app is much more self-explanatory, and both friends from whom I requisitioned testing help had no trouble understanding the app. The app does have a small program, which is that if the user does not select a color with which to draw, the default color is black, but once a color is selected the user can't go back to black. I eventually plan to fix this, as well as modify the app so that the user can use a picture from their own phone. The app can be found here.

It should be noted that to use the above apps (and likely any subsequent ones), it will be necessary to modify your phone to accept apps from unknown sources. The instructions for doing so can be found here. While this option is active, it cannot be stressed enough that you should ONLY accept apps from sources that you trust. I hope to eventually learn to sign my apps, but until that happens, my apps will be from an "unknown source."

Assign Task2
For Week 2 I will continue building more complex apps from the tutorial and eventually design an app which can benefit the school in some manner.

Compare actual work done to Task2
I built a "Whac-A-Mole"-esque app called "Whack Weyoun."

Week2 Narrative
Armed with my knowledge of how the three components of the App Inventor work, I set to work on the next tutorial, MoleMash. Instead of a picture of a mole I used a picture of the face of Weyoun from the TV show Star Trek: Deep Space Nine.

The main concepts from this tutorial were Sprites, Procedures, Clocks, and Noises. A Sprite is essentially an image that is smaller than another image on which the Sprite lays. Sprites are often used for characters, enemies, and NPCs which move on a screen. I used MS Paint to change the areas surrounding Weyoun's face to white, so that it would blend into the background better. Procedures are a series of commands that happen in sequence. They're useful in that instead of typing (or in the case of App Inventor, "connecting") a series of commands repeatedly you can simply recall the Procedure name and all of the associated commands will play out in sequence. Clocks and Noises were not explored in-depth in this tutorial. The Clock was used to make Weyoun's face move every .5 seconds and the Noise was used to make the phone vibrate whenever Weyoun's face was successfully touched.

For the most part I followed the instructions laid out in the MoleMash tutorial with a couple differences:
 * The picture I used for Weyoun's face was square, and as such I couldn't get it to fit the original diameters of the mole graphic, which was 36x42 pixels. I made Weyoun's face 42x42 pixels. This ended up not being an issue since the formula to choose a random location for the face involved subtracting the Sprite's height and width from the Canvas' height and width multiplied by a random fraction between 0 and 1.
 * The names I used for the various components and commands were changed so that the word "Mole" was always replaced with "Weyoun."

I made a video of myself using WhackWeyoun on the Emulator with the Editor displayed and a clip of Weyoun that makes you want to hit him here.

Assign Task3
I will complete at least one of the Advanced Tutorials and figure out what app I will build to help out the college.

Compare actual work done to Task3
This project sucks

Week3 Narrative
Upload photos to wikimedia. Upload video to youtube. Convert all spreadsheets, documents, and presentations to wiki format and create wiki subpage of your page for each of them. Link to them here in a narrative that tells a story. High light the problems (engineering problems) you had and how you solved them.

Week3 Peer Review
Go to each team mates weekly summary wiki page. Read their activities and narrative. Then go the associated discussion page. Say something positive on this page. Try some constructive criticism. Add your name and a signature ~ by entering four tildes in a row to create a time and date stamp. Create a new category if another team mate has already commented here.

Assign Task4
Record what you are planning on doing for the team during the weekend between week3 and week4 of the project here.

Compare actual work done to Task4
Rationalize differences

Week4 Narrative
Upload photos to wikimedia. Upload video to youtube. Convert all spreadsheets, documents, and presentations to wiki format and create wiki subpage of your page for each of them. Link to them here in a narrative that tells a story. High light the problems (engineering problems) you had and how you solved them.

Week4 Peer Review
Go to each team mates weekly summary wiki page. Read their activities and narrative. Then go the associated discussion page. Say something positive on this page. Try some constructive criticism. Add your name and a signature ~ by entering four tildes in a row to create a time and date stamp. Create a new category if another team mate has already commented here.

Complete Project Page
Follow the "project done" format.

Start Next Project Week0 activities
During this week you will perform the week0 activities of the next project.