App Inventor

YWiC has hosted AppInventor competitions over the last 2 years, with local high school students. This is a strong component for many students to learn, and is easily adapted to beginner or advanced participants.
YWiC has fun teaching the program, but has discovered that the best way to learn it, is to simply DO IT! Surveys are conducted to research the best ways to interest students.

app1.jpg

Competitions start with the pre-survey, followed by participants forming teams and brainstorming ideas for socially beneficial apps, ultimately filling out the App Creation Outline. The term “socially beneficial” is purposefully vague; if the student can convince the audience/instructors that their app will benefit society in some way, it qualifies. It is up to the instructors on whether or not they need to get their idea approved before moving ahead.
At the competition’s halfway point, participants fill out the mid-survey so that the research has a measurement of progress. Around this same time, participants should begin working on the Commercial Creation Outline. Choosing an approach to convince people how useful the app is can be an incredibly fun experience!

To end the competition, judges should be brought in that are not connected to the competition, to provide unbiased opinions (typically graduate students at YWiC competitions). Participants will also need to fill out the post-survey.
The Camp 2012 competition was peer-judged, with every participant voting on each app’s originality, marketability, how socially beneficial it was, and how user-friendly it was, then finally choosing one app as their overall favorite. There was a main prize for the winner, then other prizes for the winners of each category (runner-up if not different from the overall winner).

app2.jpg


Resources Outside of YWiC:
The best online learning environment for AppInventor is located at http://www.appinventor.org/projects or www.appinventor.org. You will likely be asked to login using your Gmail account information. If you do not have a Gmail account, it is free and easy to establish one via www.gmail.com.
“App Inventor: Create your own Android Apps, published by O’Reilly in 2011, is now available in PDF form at www.appinventor.org. The links below get you to PDF versions of each chapter, or to a page with the PDF and accompanying video lessons. The book was written by USF Professor David Wolber along with App Inventor creator and MIT Professor Hal Abelson and Google engineers Ellen Spertus and Liz Looney.The book is designed for absolute beginners but also useful as a reference to programmers looking to add App Inventor to their arsenal.

app3.jpg

The book is organized in a way to motivate learning. The first section walks you through the creation of twelve successively more complex apps that you can build and customize. Find something you’d similar to what you’d like to build and go for it. The apps section is followed by a separate “Inventor’s Manual” section which explains programming and computer science concepts in layperson’s terms. This section is organized by programming topic as in a traditional text.

Interested in building apps but don’t have a year to learn Java? Teaching an introductory (CS0) computer science course to K-12 or university students? This book is for you!

The paperback version is a great companion to app building– you can use the book to read the tutorial and save your screen for all of the App Inventor windows. Buy it cheap at Amazon!

Introduction

  • Foreword and Preface
  • Setup


Tutorials

  1. Hello Purr
  2. PaintPot
  3. MoleMash
  4. No Texting While Driving
  5. Ladybug Chase
  6. Map Tour
  7. Android, Where’s My Car?’
  8. QuizMe
  9. Xylophone
  10. MakeQuiz and TakeQuiz
  11. Broadcaster Hub
  12. Robot Remote
  13. Amazon At The Bookstore


Inventor’s Manual

  1. Understanding an App’s Architecture
  2. Engineering and Debugging an App
  3. Programming Your App’s Memory
  4. Creating Animated Apps
  5. Programming Your App to Make Decisions
  6. Programming Lists of Data
  7. Repeating Blocks
  8. Defining Procedures
  9. Databases
  10. Sensors
  11. Communicating with the Web