How to make your own apps

How to make your own apps
Illustration by Ronald Winberly
Date:21 September 2011 Tags:, , , , , , , ,

Creating software for smartphones and tablets isn’t just for professional coders any more. By John Herrman

Before ever suiting up, all fire-engine operators are taught about friction loss, in which water pressure is reduced by friction inside a fire hose. It’s a complicated calculation, dependent on hose diameter, type and length, as well as water velocity. Getting it right is vital. Many departments post cheat sheets for estimating pressure.

Firefighter Mike Raben found a more modern solution online: a custom-built calculator app for Google Android phones. He liked what he saw, and had a few ideas for improving it. So, after communicating with the app’s creator – a firefighter from northern Virginia named Emmet Carolan – he built his own version, tailored to his particular department’s hoses and nozzles, with an added feature for calculating pressure loss due to elevation change.

Here’s the twist: neither Raben nor Carolan is a programmer. Their apps were built with Google’s App Inventor, one of a wave of new tools designed to allow people without programming experience to create apps and games for their phones and tablets. “That thing caught on like wildfire in the forums,” says Jason Tyler, author of the recently released instructional book, Google App Inventor for Android. “This is not just for us nerds.”

GameSalad is a similar application for Mac OS, which streamlines the process of creating Web, iPad and, of course, iPhone games to a point where nonprogrammers have found success in the notoriously crowded App Store. Jennifer McGettigan, who uses GameSalad primarily to create children’s games (a typical title: Fairytale Preschool!), found the tool while employed as a nurse. “When I started using GameSalad,” she says, “I had never seen a line of code.” McGettigan now has more than 50 games in the App Store, and creating iPhone games has become her full-time job.

How it works

Smartphones may inspire countless “wouldn’t it be cool if… ” moments, but the gulf between those who can conceive of apps and those who can build them is expansive, and filled with code – cold, syntactical, inscrutable code. This barrier is nearly universal. IPhone developers should be familiar with a programming language called Objective-C. Android developers should be versed in Java. Anyone who wants to code an app for Microsoft Windows Phone had better know C#.

What App Inventor and GameSalad do is automate the creation of code, hiding it from view. Much the way Photoshop is an application for editing images, and iMovie is an application for creating videos, App Inventor and GameSalad are applications for creating… apps.

GameSalad’s jarringly stripped-down appearance belies its capabilities. It comes preloaded with sample apps, giving users the ability to tinker immediately. Basic but functional versions of common types of games – top-down racers, variations of the Angry Birds concept, and plenty of shooters – provide jumping-off points for a fairly wide range of projects.

Using GameSalad feels more like editing a PowerPoint presentation than developing a mobile application. Two hours after opening the program, I had my own side-scrolling space shooter in the can. It wasn’t quite ready for the App Store – my “space-ship” was a crude cutout of my head, and my “laser battles” took place against a photo background of my living room – but nonetheless, it was a game. A few more days of practice could have netted something presentable. It’s easy to let your imagination run away with GameSalad, which is probably the point.

Google’s App Inventor is a bit more intimidating. A Web-based tool, Google’s take on DIY app creation feels more like a simplified version of a traditional developer tool than a piece of consumer software. Although it doesn’t ask of its users any specific programming knowledge, it does require them to have – or be willing to develop – some understanding of the basics of app architecture, such as how the code interacts with the elements that end up onscreen. What keeps this sometime abstract experience grounded is one novel feature: App Inventor connects directly to your Android phone in real time, allowing you to test your app on your phone as you make changes.

Using App Inventor can feel like an academic exercise. While primarily intended to open up app creation to the greater public, App Inventor is also touted by Google as a teaching tool, bolstered by a tremendous collection of how-to guides, many of them geared toward absolute beginners. My entire time with App Inventor was spent with a tutorial open in a second window, and I also availed myself of guides produced by a large and sympathetic online community. In the end, I got a functional piece of software, but it was several steps shy of a polished app. What to expect

For non-programmers hoping to get into app development for mobile devices, GameSalad and App Inventor extend a welcome lifeline. The apps they produce, though, are inherently limited. In other words, established programmers and game designers have nothing to fear. Not yet.

GameSalad and, to a lesser extent, App Inventor trade certain capabilities for ease of use. For many types of projects, this isn’t an issue. A well-designed 2D shoot’em-up game made in GameSalad can be just as fun and rich as a similar app developed with more advanced tools.

But many of the most popular titles in the App Store and Android Market, such as 3D games and full-feature social-networking apps, are impossible to build with a modular, drag-and-drop creation tool. Even new developers might chafe against the constraints; GameSalad, for example, uses a single physics model for object movement and interaction. The physics engine may feel natural in a Pong-style game, but if you need to design, say, a complex suspension system for a car game, you’ll find your options are limited.

For Google, beginner-friendly app creation is still an experiment. App Inventor is offered for free, as is membership in Google’s Android Developer programme, but the company doesn’t yet officially endorse the uploading of App Inventor apps to the Android Market. There are various tutorials and services available to help prepare apps for publication, but this omission seems like a tacit acknowledgment that App Inventor isn’t quite ready for the big time.

GameSalad, on the other hand, is explicitly geared toward releasing titles in Apple’s mobile and desktop app stores. The free version of the app produces games ready to be submitted to the App Store. The paid version, which costs the equivalent of about R3 500 a year, lets you insert Apple iAds into applications, an important and increasingly common source of revenue. Then, of course, there’s Apple’s iOS developer fee – R700 a year – to distribute any apps through the App Store.

It’s possible to make real money using these tools – McGettigan says she is happy with the income from her apps, and that GameSalad enabled her to achieve a lifelong dream of working in the gaming industry – but such stories are the exception rather than the rule. And that’s unfortunately true for trained programmers, too.

In the end, the biggest drawback to DIYapp- creation software is the high expectations it inspires. App Inventor and Game- Salad may topple formidable entry barriers for newbies, but writing code is just one of a heap of challenges facing a new developer. These tools won’t guarantee an app is attractive, intuitively designed, enjoyable to use or marketable. They can help make sure good app concepts don’t get needlessly shelved; coming up with that winning idea, however, is still up to you.

PM app lab
Get into your game
Be the spark

Now that anyone can create his own iPad game, POPULAR MECHANICS wanted in on the action. When we mentioned our wish to make the perfect PM game to Mark Chuberka and Billy Garretsen of DIY-game-creation company GameSalad, they offered to do us one better: not only would they help us create an iPad game that was perfect for PM readers, they would also help get our readers involved.

Our game is called Be the Spark, and the idea is to let players explore the fundamentals of internal combustion engine dynamics through the simple task of igniting a spark plug at exactly the right time during the four-cycle process. But what seems simple in a one-cylinder, lawnmower-style engine becomes a maddening finger-frenzy by the time you get to a four-cylinder engine running at 70 to 100 r/min. We’ll be making the game’s assets public through GameSalad’s free app-building software. That means that anyone who uses GameSalad can tinker with our game. So we encourage you – wait, no, we challenge you – to improve upon our game. Add levels, add new engines (we’d love to see a six-, eight- or 12-cylinder, or even a Wankel, engine), or program in a turbocharger or supercharger mode.

And if you do invent a better (virtual) engine, we’d like to hear about it. – GLENN DERENE

Infinite playlists

Maybe you don’t buy new music, but that doesn’t mean you have to steal it. Audio streaming services grant unlimited access to millions of songs for a modest monthly payment. Sadly, South Africa’s licensing and copyright regime bars us from accessing some of the popular music-on-demand services that allow offline replay, like the ones below compared by our American colleagues to show us what we’re missing. Still, South Africans can get their fix online thanks to services such as Grooveshark and others listed below under “Radio revival”.

  Rdio Mog Rhapsody Napster Slacker
Monthly Cost $4,99 Web access; $9,99 Web, apps $4,99 Web access; $9,99 Web, apps $10 Web, 1 device;
$15 Web, 3 devices
$5 Web access;
$10 Web, apps
$9,99 Web, apps
Catalogue count 8,5 million 11 million 11 million 12 million 8 million
Quality Undefined “CD
quality” for Web,
mobile, downloads
and streaming
128–320-kbps MP3 downloads; 64-kbps 3G mobile streaming 128-kbps MP3/AAC
Web; 64-K AAC
mobile; downloads,
streaming for both
192-kbps WMA Web downloads and streaming; 64-kbps mobile 128-kbps MP3 Web, Wi-Fi, 4G; undefined AAC quality over 3G
mobile
Mobile
platforms
iOS , Android,
BlackBerry,
Windows Phone 7
iOS , Android iOS , Android iOS , Android,
BlackBerry
iOS , BlackBerry,
Android, Windows
Phone 7,WebOS
Offline Yes Yes Yes Yes Yes
Song check * 12 out of 15 12 out of 15 12 out of 15 10 out of 15 11 out of 15
Rundown From the minds
behind Skype and Kazaa. Strong iPhone and Android apps, but song selection and radio features are so-so. A vibrant blog lists music updates, and robust social networking shows what songs your friends like.
Streaming over 3G bogs down, but Mog’s high-quality
downloads make up for it. Editors write reviews, rate new music and compose
playlists on an
extensive blog
network. Nice mix of obscure and mainstream music.
The oldest of the
streaming services,
Rhapsody has aged well since 2001. Restructurings have resulted in odd pricing, and the app can be confusing.
Recommendations
focus more on Top
40 than hidden
gems.
Resurrected from the late-’90s
file-sharing service, Napster went legit – that is, paid up—in 2003. Its massive collection works with a clunky but usable app. Music-discovery
tools are simple
but shallow.
Initially a radio
service like Pandora, Slacker recently added on-demand streaming:
subscribers can search, play and save individual songs and albums. Anyone can listen to smart, free radio stations with preset playlists.

Radio Revival
On-demand music apps top the download charts, but smartphones and tablets are breathing new life into analogue radio. Here are three new ways to hear old-school broadcasts.

TuneIn
With thousands of live local radio station broadcasts worldwide – plus PVR-style recording and station schedules – this app out-radios the radio. Listen in on Georgia from Atlanta to Tbilisi.

WunderRadio
Hear a jazz station in Senegal tonight or tune in to historical broadcasts from the last century. Eavesdrop on the criminal underworld with countless police scanner streams. If it’s on the air, it’s probably here.

Stitcher
A massive podcast repository, this app trumps iTunes as a DIY way to compile online and analogue talkradio feeds. Pair Fox News and NPR, for instance, to build your own customised chatterbox.