5 Pitfalls to avoid when developing mobile applications
1. The “Ideal App” Syndrome
Everyone loves an app that’s ten on ten and bug free. Developers often get obsessed to nail it right on the first 1.0 release. They aim to do this by loading the apps with every imagined functionalities, content &/or bloat the app with features that are not needed.
Wanting to ship a perfectly crafted app is the number 1 on our list of pitfalls. Developers are bound to get carried away when trying to build a great application right on the first release, or worst, the market may move on or a competitor may release a version sooner.
The solution to avoiding this pitfall is to build a MVP (Minimum Viable Product) as soon as possible and then aim to release a public beta version that can be tested in real world.
Guy Kawasaki’s quote ‘dont worry, be crappy’ is something we all agree on. Calculator for India, an app from our own garage, is already in version 3.3.1 and we did this under 5 months since original public release. Are we happy with current build? Maybe, but had we waited to release a perfect version, we would have lost five months. So get out there and release your app as soon as possible.
2. Falling for “Have it all”
It would always be awesome to have your application running on all available mobile platforms be it Android, IOS or Blackberry. Native apps can look pretty, drive craze for a brand or make a statement. But as much as we love building beautiful native applications, multi-platform roll-outs of an application often result in over budget and increased complexity scenarios.
Opportunities for better discoverability and earning capabilities, performance and responsiveness of the application, local storage of devices, better use of libraries, more access to the phone’s different hardware functions are some reasons why a native application might be a better choice to make. But there’s also a downside associated with making of multi-platform native apps such as higher development and maintenance costs, multiple codebases, higher programming skills, and risks associated with platform’s changing guidelines, just to name a few.
Therefore, app developers must carefully weigh the need for a native application for each platform or perhaps consider PWAs (Progressive Web Apps), that will serve a broader audience on web and eliminates the need to building for each platform natively.
3. Building an mobile app is “small scale”:
A classic rookie mistake made by most first timers, that they believe building mobile apps is a child’s play and easy, and this leads to lack of meticulous planning for time and resources.The reality is starkly different, mobile app development projects are no different from any other software development projects, and warrants identifying the right tech stack, specifications, schedules/timelines, bug tracking, and a release and maintenance plan.
4. Build for the end user:
Design manuals and guidelines are plenty, each one of them look great on the eye and developer have endless choice to pick any of them. But the pitfall is that, it is impossible to catch up to every design trends and changes.The best design is the one that makes the end user feel that app is ‘just right’ and not scrambling for a user manual for every operation within the app. Getting the right UX is more important than a merely beautiful UI. If your app is, by nature, complex and a bit difficult to use, consider adding a welcome screen or a guide with some tips and “How To’s” for your product. Give your user a first time run experience. However, these tutorials should stop manually or automatically when user get used to your application.
5. Dragging down the user & their phones.
App that are smart enough to do all the tasks in the background have results ready sounds amazing in theory, but in practice, people appreciate apps that do not slow them down or their phones. Apps that consume too much battery or show ads that disrupts user experience are strictly no no.App that are light on memory and storage, have clear indications or solid reasons to run on background, transparent permission requests and so on are some of that differentiate a good app from a mediocre one. Most of this may sound obvious, but developers try to do all of them without much planning and reduce their chance of succeeding.
We hope you’ll build better product for India!