Ever try teaching computer science to a group of teenagers right after they get out of a long day at school? I would expect it to be remarkably difficult and frustrating. But that’s just what I did last week, and it was great. When I enrolled at Youth Radio three years ago as a 16-year-old interested in journalism, I had no idea that pretty soon I’d be teaching fellow teenagers how to create mobile apps.
Lucky for us at the Youth Radio’s Mobile Action Lab, we have been able to use an amazing tool to get these students excited and focused. We host week-long App Inventor Workshops, to get hands-on experiences with mobile app development, and hopefully to spark an interest in computer science.
MIT App Inventor, now available to all, is web-based software that allows anyone--by anyone I mean non-computer scientists like me--to develop mobile applications. App Inventor uses pre-programmed blocks of code, so you don’t need to fully understand Java or Android SDK. You get to build fully functioning mobile apps that have images, links, use location-based services, and all those great features you use on your favorite apps every day.
We start our App Inventor Workshops by talking about what apps or mobile applications even are. Then we download and test some of the most popular and obscure apps on the market. App Inventor allows us to be hands-on and create apps using tutorials. After we are done following the tutorials, we develop an idea, and attempt to tackle the idea together using what we have learned from the tutorials and exploring the program.
There are three big steps in App Inventor. First you decide what you want your app to do, identify the needed components, and set the properties for each component. Second, you open the Blocks Editor, using blocks of codes connected like puzzle pieces, to make the components work. Third, test the app with your cell phone or an emulator. We prefer to use the cell phones, because it’s more fun that way, and it’s easier to test phone-specific functionality like shaking, tilting, or location-based services. Austin De Rubira, a member of the Mobile Action Lab, likens the process to trial and error: “You try something, and if it doesn't work, you fix it until it does work." De Rubira continues, “That was a really hands-on definition of the iterative development process. It definitely clicked in my mind and it really made a lot of sense to me. Iterative development is a very effective way to work on apps, and that's how I've been thinking about our entire process with the Mobile Action Lab."
Now several of us in the Mobile Action Lab have had enough hands-on time with App Inventor to start teaching it to the new students. It’s extraordinarily fulfilling to create an app that works. But when you can explain that process and help other members of our workshop successfully finish their apps, it is incredibly rewarding. Peer teaching is a major model here at Youth Radio: youth experts teaching youth. We in the Mobile Action Lab are becoming those Mobile App youth experts.
We have used MIT App Inventor to prototype the AllDayApp (You can down load it from the Android Market!), and we plan to continue to use App Inventor to develop and prototype our future mobile app ideas.