Extending the DDM modules in Liferay with custom field types isn’t that easy. This blog post is the result of our attempts...
6 mistakes in mobile app development you’ll never make againYakup Kalin
People often believe that developing a mobile app is an easy task. The truth is that the development of an effective and interactive mobile app can be tough and an expensive affair. It requires experienced mobile developers to understand the unique challenges mobile app development brings. That’s also why the success rate of any mobile application is dependent on its unique development process, containing pitfalls and hurdles.
But good things do not come easy, just like Desi Arnaz once said: “good things do not come easy. The road is lined with pitfalls.” That’s why mistakes will be inevitable and something you’ll have to deal with. The key thing here is to admit (quickly), learn and try to avoid, and anticipate them the next time. To help you anticipate, we’ve listed 6 of the most common mistakes in mobile app development for you.
1. Choosing the easy route
Typically, when you want to create a native mobile application for multiple platforms, such as Android and iOS, you need to consider developing for 2 separate operating systems. This requires experienced developers knowing the ropes of those specific platforms along with its development languages and tools. You also need to develop and test features twice. This is why this native approach, for some use cases, is not only time-consuming but also costly.
The advantages of mobile app development frameworks
Sounds appealing, right? Unfortunately this is where most companies and developers make this first crucial mistake: choosing the easy route without any considerations.
The disadvantages of mobile development frameworks
Besides the advantages listed above, there are also considerable disadvantages to mobile app development frameworks. Some of them are:
- Poor app performance on specific devices (e.g. old or exotic devices) for specific cases (e.g. advanced animations and graphics).
- Limitations of the webview that visualizes (renders) the web pages (e.g. limited hardware access).
- (Higher) chance of getting an App Store rejection due to possible avoidance of the crucial OS guidelines (by the developer). These can be easily introduced because of the flexibility and freedom that the web page approach provides.
That’s why you typically start and go like a rocket with a mobile app development framework. At least, until you want that one specific feature the framework can’t cover or that smooth performance it can’t provide.
It’s clear that for simple apps frameworks like Cordova can be a suitable solution. But if you want to create complex mobile apps where performance is key, you need to decide carefully. If not, the chance is high that you end up like Mark Zuckerberg, calling Facebook’s over-reliance on HTML5 one of its biggest mistakes.
At ACA we use Appcelerator Titanium (Axway) for creating cross-platform native applications. Just like Cordova, we’re developing in web technology, but without the disadvantages of those frameworks. At the end, we get full native mobile applications without any compromises, and they feel great – see our portfolio!
2. Designing for yourself
One other popular mistake people often make is the fact they’re designing for themselves. “I think we need this feature!”, “I think we should go for a hamburger menu, that’s so cool!” and “We should make that block just like they do it within the Facebook app, that works for me!” are some of the sentences that should ring alarm bells.
It’s understandable that you want to provide input but it’s crucial to know that you’re not designing (only) for yourself but for your end users. That’s why it’s important to involve your end users in an early stage to get valuable and correct feedback from them. Also seeing yourself as part of the target group isn’t a great idea since the chance is high you’ll be biased.
To capture valuable feedback you can organize end user interviews and create prototypes for feedback in an early stage. Even during the development process you can keep getting end user feedback by doing e.g. A/B testing. Just keep in mind: you’re designing for your end users, not (only) for yourself.
3. Picking a large number of features
Another common mistake you should definitely avoid is to think that more features deliver more value for users. If you create an app with a lot of features to do everything for everyone, you’ll end up with an app that’s overly complicated and completely unusable. Besides increasing your time-to-market, you’ll also be investing in features nobody probably wants. To avoid this, you should always validate features and concepts with end users.
You can do this by setting up a User Story Mapping or doing a more advanced Product Design Sprint (we call this a S.T.O.R.M.). In this last workshop you go from a (business) idea to end user validation in merely 5 days. If this sounds interesting to you, you can learn how to do that here.
4. Considering web page patterns as a reference
The Web is great. It served us for many years and still serves us by connecting us with valuable content. To make this content more approachable and user-friendly, web pages are optimized for different devices such as desktops, notebooks and mobile devices, making them ‘responsive’. When we take a closer look at responsive websites on mobile devices, we will likely see well-optimized pages for mobile browsing to elevate the mobile browsing experience.
This is where it gets interesting for many companies. When creating mobile apps, many developers and companies take mobile web pages as a reference. They consider a mobile app as an extended version of a web page and reuse patterns. This makes it one of the biggest mistakes leading to failed apps. A mobile app should create specific value for the user. This value should not be and is not the same as the one that websites offer.
Also, the user experience needs to be optimized for the native mobile interface (of the device) and not for mobile browsing. This is why using web pages as a point of reference for mobile app design and development is a big mistake you definitely should avoid.
5. Overlooking the Mobile Application Testing Process
It’s not a myth that testing is an important part of the mobile development process. Sometimes, unfortunately, due to haunting deadlines and/or budget constraints, developers and companies tend to cut corners and skip the testing process (partially). The effect on this isn’t typically tangible at first. Once the app is out there, though, it will be the main thing haunting you in your dreams:
- You’ll deal with more bugs and bugfixes will be hard(er) to solve due to untested code.
- The chance of introducing regression by adding new features is high, since there is no or missing validation and assurance of existing code.
- You won’t have any clue on the devices that are supported because of the missing device validation.
It’s the same as building a car. Some engineers might cut corners to keep the price low and build you a car that does the job in the short term. But after a while, you’ll notice and experience (severe) issues. The biggest problem here is that you’re relying your life on that car by driving it. This is the same with apps. Would you rely or drive your company on an app with (severe) issues?
6. Forgetting the analytics
Analytics, by its other name “we-will-add-it-later” represents the last item of our list. Just like testing, analytics are often (unconsciously) kept out due to focus on features or budget constraints. The effect of keeping analytics out gets really tangible after the app is out there, within the hands of your end users. With no insights concerning their in-app behavior, feature adoption and crash reporting, you won’t be able to engage with them.
To engage with users and keep your app relevant, you must gather feedback and insights. If you don’t do that and finetune your app to your users’ needs, they will abandon or even delete your app. According to data from analytics firm Localytics nearly 1 in 4 people abandon mobile apps after only one use. Besides that, 77% of users never use an app again 72 hours after installing. This proves how crucial it is to stay in touch with your audience and gather usage and valuable insights.
There are, no doubt, other mistakes worth mentioning that companies and developers make in mobile app development we didn’t cover here. Some examples are having no update plan and thinking that your app is going to sell itself. We believe the 6 mistakes listed above, however, are the most common and fatal ones that every developer and company should avoid and anticipate.
Let’s go through these 6 mistakes one more time:
- Choosing the easy route should be avoided since it can require a full rewrite of your app, making it a very costly mistake.
- Designing for yourself is a tricky one since people have this reflex of giving personal opinions. But it’s just as simple as understanding that you’re not (only) designing for yourself but for your end users.
- Picking a large number of features can be deceiving. Keep your focus on the core value you want to deliver with your mobile app. Less is more.
- Considering web page patterns as a reference is evil, since they serve another purpose compared to (native) mobile apps.
- Overlooking the mobile application testing process will only give you nightmares. Don’t skip this crucial part of the mobile development process, because it’ll save you time and money in the long run.
- Forgetting the analytics is like a drone without sensors. A drone without sensors won’t be able to gather useful metrics to adjust its course properly to perform better.
Did you experience one of these mistakes yourself or do you have any questions regarding one? Please don’t hesitate to leave a comment or send an email to email@example.com, we’ll be glad to answer them!