If a fortune teller could reveal what the next blockbuster mobile app would be, there'd be a line outside her door a few miles long. What programmer wouldn't want to create the follow-up to Angry Birds or Instagram? Of course, there's no real way to predict what app is going to next catch on big with consumers in today's hugely crowded market of games, productivity tools and other fun stuff. It's a bit easier to hone in on mobile apps to meet business needs, but even there developers have their work cut out to get their offerings noticed.
What can be foretold is that a mobile app that isn't built on solid ground--both in its underlying components and in its design--won't have any hope of success. A fundamental understanding of programming is de rigueur, but there also are important differences to account for when developers apply their skills to the mobile app world rather than to "traditional" software development.
As you contemplate your opportunities in the mobile app development world, have the following tips in mind to help you realize your vision:
Keep it simple. When a user downloads a mobile app, he must intuitively understand how he is going to do what he wants to do, whether it's racking up points in a game, recording a to-do list or using the smart phone as an ECG. The design of the app and the experience it delivers every single moment the user interacts with it, then, must focus on making those things obvious to him. Strive for simplicity.
Simplicity also should be the watchword you live by as you write the code. Mobile devices have limited processing power, and if you are not writing good, efficient code, you are going to be slowing down your user. And he won't like it.
Rethink what you know. If something can be accomplished with gestures on a tablet's touch screen rather than by scrolling through menu choices, it should be. Generally speaking, when it comes to the mobile world, you've got to stop thinking the keyboard and mouse and start thinking gestures and taps.
Perhaps most importantly, you've got to consider the screen size and what your GUI is going to look like on it. You no longer have the luxury of playing to a big-screen monitor, so you've got to build an app that works within new borders. And, if you're building the app to run on multiple types of devices, don't expect to be able to simply translate the interface for the smartphone version to the tablet version. They are two different beasts and must be treated as such.
Have a care for the cloud. There's a growing trend for mobile applications to store data in the cloud. Apple's iCloud is setting expectations for entertainment and information to be available to users anytime, anywhere, and regardless of the device used or its own limitations. It's important to make sure the app you're developing will be compatible with the cloud world, via whatever service your users may choose for storing their files to and downloading them from.
Maximize mobile's special features. If you've got GPS at your disposal, why not make use of it? Even a simple grocery list app can become a sophisticated personal shopper when it combines its knowledge of a consumer's past purchases to pop up an onscreen alert about a sale on her favorite peanut butter just as she hits that aisle. Or, think of a multi-player game where users know where their fellow gamers are, and where that information can be used to enhance the experience. Of course, you've got to make sure such things are opt-in choices, as you don't want to tread on people's privacy.
You can't stop looking forward to what's coming next at the device-level, either, and to what you can do with it: near-field communications (NFC), built-in cameras on tablets, and the list goes on. Device manufacturers are going to be looking to add variety, and you've got to be looking to exploit it.
Put security first. Literally. For all applications, and especially for those involving personal or sensitive data, or that are affected by regulations or compliance requirements, security cannot be an afterthought. It has to be built into the development lifecycle, and that means thinking about potential risks and ramifications starting at the requirements stage. Unfortunately, that's not something that happens regularly today even for traditional software application development projects.
So, if you're not used to having a checkbox for security and educating a development team on best practices, it's something to get used to, fast.
Mobile app users can be a tough audience. Many of them are tech toy lovers, and casual users have come to have high expectations thanks to what they've seen so far. These users can become your audience, though, if you take the time to do mobile app development right.
Mary Dobransky is the Dean for the College of Information Technology at Bellevue University. Dobransky's responsibilities as Dean include reviewing and improving academic standards, courses and programs, and curriculum. She joined Bellevue University in 2006, serving as the Director of the Learning Assessment Center.