Whether you're a recent college grad or a midcareer professional, you may have what it takes to be a good mobile app developer if you possess certain specific qualities, according to Dunn and other industry watchers.
The need for strong Java, HTML and general technical skills goes without saying. Developers who are steeped in the tenets of modern object-oriented programming and understand user interface and design patterns will have a leg up.
Expertise in the specific APIs and user interface toolkits of major mobile platforms like Google's Android and Apple's iOS is a plus -- though a lack of such experience wouldn't necessarily mean you have no chance of becoming a successful mobile app developer, experts say. A skilled programmer should be able to move between languages fairly easily, since mobile development essentially just involves learning a new syntax.
A potentially more difficult transition is coming to terms with the new design paradigm that mobile platforms represent: In addition to recognizing that you'll be designing apps for the smaller real estate of smartphone screens, you have to understand how users interact with their devices and grasp the need to deliver highly targeted functionality.
"The way people interact with a laptop or a desktop is different than the way they interact with a smart device," says Hap Aziz, director of the Rasmussen College School of Technology and Design, which was among the first universities to launch a curriculum with a specific focus on mobile application design and programming. (See "Higher Ed Adds Mobile App Dev to the Mix" for details.)
"People using a smart device don't think of themselves as 'computer users,' therefore you can't use the same conventions you'd use in developing desktop software. Drop-down menus and elaborate help screens just don't work on a smart device -- it's more like working an ATM machine at the bank."
Still, it doesn't take a rocket scientist to make the transition -- just someone with the commitment to do what it takes to learn new technologies and to master the new conventions.
Going back to school is one option, and in addition to full-time programs like the one Rasmussen offers, there are countless undergraduate, continuing ed and certificate courses on hot subjects such as HTML5, object-oriented programming, Java and iOS and Android programming.
Learning by doing is the next best approach, and one likely favored by the bulk of existing IT professionals, according to Nick Dalton, owner of 360mind, an application development consultancy specializing in mobile apps.
Would-be mobile app developers need to immerse themselves in the platform -- and that means swearing off the PC for a while, he explains.
They need to make a full commitment to doing as much as possible in the mobile environment to experience firsthand both the constraints and the new opportunities.
"On a smaller device that doesn't have much memory and has a weaker processor, you have to be more conscious of how you're programming," says Dalton. "Those things can't come from theory, they can only come from experience."
Dalton, a 25-year veteran in the IT profession, spent much of his career as an enterprise Java architect designing back-end systems and customer-facing applications at companies like Nissan and Toyota.
When the iPhone was first released, Dalton published an e-book called 101 iPhone Tips and Tricks and took a self-directed crash course -- using the SDK, e-books and other online resources -- to master the iOS SDK once it was released.
That early training and exposure established him as a go-to resource once the Apple App Store was announced and the market for mobile app developers took off, enabling him to leave corporate IT and start 360mind.