Here's how the conversation usually starts with my small business customers: "Can you make me an app?" or maybe, "You can build an iPhone app?" and sometimes the big one, "What would it cost to make an app?"
First, let's get some terminology out of the way. An "app" is just a piece of software that's installed on an operating system. The same way you have Microsoft Word installed on your computer, all of the apps on your phone are just native applications that get installed on that tiny computer you carry around in your pocket. The term we use these days to sum up this particular genre of software engineering is "mobile application development."
To be fair, any decent software engineer should be able to make the transition to building mobile apps without too much trouble, so if you know one that you trust that's confident they can do it for you, go for it. Be sure I use the term "software engineer" purposefully here. I come across plenty of people, particularly in the web design space, that present themselves as "web developers" when in reality all they've done is learned how to deploy WordPress, search for some plugins, and copy and paste a few things off the internet if necessary. Fine if you need a three-page website for your brother-in-law's tax prep business, but not ideal for mobile app development. On the other hand, a software engineer could build you your own version of WordPress (given enough time).
Mobile app development, like any other product or service, comes with varying degrees of functionality and performance. When shopping for mobile app development, there are a few key questions to ask and some things you should know.
1. What platforms/devices do you need to support?
Most people seem to go immediately to the iPhone and that's it, but did you know Android dominates at approximately 80% of the mobile phone operating system market? Granted, this statistic may be useless to you if you only plan to target US consumers where the split is much closer to 50/50 (according to Nielsen it's 51.7% Android, 43.4% iOS as of Q4 2014), but if you want to branch out to the global market, Android is definitely the place to start.
Either way, these days it's very hard to justify focusing on one platform over the other, but if you MUST deploy on one platform first, aside from the geographic distribution above, here's a good general rule of thumb. Men and younger users (millenials) tend to prefer Android while older users and women prefer iOS.
2. Do you need to go native?
There are some tremendous tools available (Apache Cordova, Xamarin) that have made cross-platform mobile app development an option. While developing applications native to the device requires two (or more) completely different languages and architectures to be used to create two completely separate pieces of software, cross-platform tools allow your mobile app developer to build a single application and package it for whichever platform(s) you choose.
This is great news for some. The downside is that these technologies, while getting much better every day, still have their limitations. There's no substitute for native development when it comes to performance and functionality, but if you can live with a bit of performance degradation and a potentially (though only slightly) more limited feature-set, this can be a great option. What usually happens is that this is step one - or a proof of concept - at which point you'll upgrade to native if the project is a success. Realize this means likely cutting out 30-40% of the costs of developing an app for multiple platforms.
3. Don't forget about maintenance!
Like any software application, your mobile app(s) need to be maintained regularly. New devices, new operating systems, legacy gear still in use, etc., all cause problems for developers and mean cost outlays for you to keep your mobile application functioning for your users. Plan on regular maintenance activities and a certain amount of bugs that will be unavoidable. Ongoing expenses can easily run more than your upfront application development costs.
4. Start Small
This is applicable to much more than just the mobile application you want to develop and is my recommendation for just about every piece of software we build. By limiting your feature-set and your costs, you can keep your development effort nimble and respond to your users faster and with greater accuracy. Think David vs Goliath. It's easy to build out a feature and see what users like and don't like about that one feature, and make changes accordingly. It's difficult to build out 20 features and do the same thing. Limit your initial feature-set to mission-critical functions and see what the response is. Make small decisions, small tweaks, add small features, and pivot when necessary.
All-to-often I see people make the mistake of thinking "if I build it, they will come." Sorry, it doesn't work that way. This is just as true in web design and it is in mobile app development. You can build the greatest app the world has ever known, but if you don't have a strategy or a plan on how you're going to get people to install it, you're dead in the water. A true partner is one that can help you navigate the world of digital marketing to make sure you have a solid go-to-market strategy for your mobile app.
Photo: Flickr | Blake Patterson
This article originally appeared on Chris Searles Blog
Last updated on