Mobile programs may seem to magically appear on the App Store, but if you've ever been in the position of having to develop one for your company, you know that there's a lot more than magic involved. Putting a new app in the App Store requires not only programming expertise, but also learning the process of good app design and getting yourself involved in Apple's approval process. And that's an awful lot of knowledge to pick up in a short amount of time, particularly if you don't know your Xcode from your elbow.
Still, businesses have plenty of incentive to dive into the mobile apps game. Market research firm IDC expects the worldwide market for mobile apps to hit $35 billion by 2014, and with more items for sale than any of its competitors, Apple's iOS App Store figures to lead the way.
The potential for mobile app riches is helping to fuel the growth of a new industry--companies that can handle the heavy lifting of creating an app. Strolling the aisles of the Mobile App Showcase at last month's Macworld 2011 trade show, for example, you could find several exhibitors who weren't there to show off apps, but rather convince others that they're capable of taking on the technical parts of the app-making process. I spoke with a few of these third-party providers to get a picture of how this app outsourcing works.
Finding a developer
Your first step for getting an app off of your drawing pad and onto an App Store is to line up someone to build your program. Not sure where to turn? Then your first stop might be to a service such as AppMuse, which connects iOS developers with businesses seeking their skills.
AppMuse will send your project description and requirements to three iOS developers from their pool of available programmers, each selected by the service to match the needs of the requested work. AppMuse settled on three as the magic number, CEO Mark Stetler says because it's optimal for making the best connections between developers and businesses--more choices leads to gridlock, as it becomes more difficult for prospective clients to choose among conflicting proposals.
Unlike many online matchmakers, AppMuse drops out of the interaction after introducing clients to their would-be developers. All future agreements are directly between the business and the selected developer. AppMuse charges a fee to the developers for the referrals it makes; there is no charge to the businesses seeking to hire.
That approach contrasts with more general-purpose online marketplaces such as Guru and eLance, which also require you to make payments to your developers through their payment system, so they can take a cut of all proceeds. On the other hand, this middleman approach also provides an escrow system that you can use in the event of a dispute with your developers.
AppMuse also leverages its relationships with geographically-dispersed developers to make connections based in the country of the client. That is, U.S.-based businesses will be linked solely with U.S.-based developers. AppMuse currently works with developers in the U.S. and Canada, and is expanding to the UK, Australia, and other countries.
Working with a developer
While a company like AppMuse can help you connect with a developer, you might also be able to find one on your own. And once that happens, you move on to the development stage.
That's where a company like Mobile Pundits may enter the picture. Mobile Pundits is a development company which either provides programming services to companies that do not have their own in-house iOS development team, or provides support to companies that need additional help to meet a deadline or expand into new areas.
Mobile Pundits, which was on hand at last month's Macworld Expo, is a bit different from some iOS shops, in that it works on multiple platforms and can provide mobile application development on iOS, Android, BlackBerry, and Windows Phone 7. Many iOS programmers came directly out of Mac programming (and some of them date back to Cocoa-based programming techniques used on the NeXT Computers before Mac OS X). While these developers can offer a deep history working with Mac and iOS user interfaces, a broader development base is more useful if your business is seeking to deploy on mobile platforms beyond Apple's.
Ongoing application improvement
Once development work is done and the app is out the door, there are may be future enhancements you wish to add. You could turn to the same developers who built the original app to handle updates, but some enhancements may call for more specialized services.
Take localization, or rejiggering an app so that it reaches users in other countries. Tethras, based in Ireland, has an interesting approach to this work. You upload your completed application to the Tethras Web server, and its software will analyze the app for text that needs to be translated for international markets.
Independent translators working with Tethras are presented with the text in your app as it appears on the iPhone on iPad displays, within a Web application in their regular browser. This ensures that your translated text will be appropriate to the context of the app. Tethras provides an instant price quote for your application based upon the length of the text requiring translation; the company charges higher prices for specialized services, such as accurate translations of medical text. Most Tethras translations are completed in one to three days, but the company's clever internal outsourcing model keeps costs low; all languages supported by iOS are included in Tethras's translation pool.
What to look for
There are a few things to keep in mind when turning to a third-party provider for help in making your mobile app dreams a reality. Your initial phone call to a company such as AppMuse or Mobile Pundits should consist of an interview with them to determine if they suit your needs.
A key issue to figure out early on is whether the app work you need can fit in with what you're willing to pay. Quality programming is not cheap. Reputable developers will work with you in advance to make sure your work request matches your budget. Less-reputable developers may promise the world, then carefully frame your agreement so that additional fees are required before you get what you ask for. If you have several bids, and one seems far too good to be true, find out exactly why before signing any dotted lines.
Smart businesses will ask their consultants what information they should provide in advance to make the project move as rapidly as possible; a vague application description will require more consulting time (and a higher bill) than a request for proposals that has already specified what graphics should appear, how many screens and forms the application will have, and other areas of application design. Your consultants may suggest changes to your model that will improve the app's usability, reduce costs, or otherwise make you and your consultants happier working together--but the more detail you can provide in advance, the better off you are going to be.
If you have in-house resources or existing consulting relationships, determine what areas of your app can be worked out in advance. Then listen carefully to your iOS-specific developers if they have suggestions which will improve how your app will work on an iPad, iPhone, or iPod touch.
It's crucial to figure out whether you prefer to work with a consultant that charges by the project or the hour. A project bid sets up detailed requirements for the project and quotes a flat fee for the overall cost in advance. That means cost is a known quantity, but any changes made in the middle of the project will likely affect your fee--probably by adding more zeroes to the check you write.
Hourly consulting fees allow for much more flexibility on the part of the client, as any changes you introduce along the development path just add on to the hourly costs; the developers know that they will be suitably compensated regardless of how the project changes, and you can make changes at will. On the other hand, prepare yourself for sticker shock when you get the final invoice (and request frequent invoice updates during the project so you know what you're paying for and what you'll be getting for it). Reputable developers will be entirely candid about whether your management approach is efficient, or likely to cause Christmas in July for their team; less reputable developers will burn your relationship with the largest invoice they can muster, then move on to the next client.