Software is eating your smartphone. Or something along those lines. So it is not surprising there is a lot to be said about mobile app development and especially about all the non-native frameworks that are around these days. We know it’s hard to find your way in all these voices so we have made a neat overview of our experience and findings for your convenience. But before we dive into it, let’s start with some clichés:
Cliché #1: The world of mobile app development is ever changing.
Face ID, ARCore, Jetpack, Swift 4: There is no shortage of ‘new’ things for mobile app users or developers and keeping track of everything can easily become a day-job. Thankfully there is a large community of writers (like me) that will help you navigate the landscape. But your hands are on the wheel and it’s your car when you crash it into a tree. In other words, you have to make the tough choices. The best thing we can do is guide you along the way.
Cliché #2: Software development is about balancing trade-offs.
A lot of frameworks and technologies for software development are selling their product or service like it’s the best thing since sliced bread. Especially the last couple of years I see more and more of their websites turned into a polished and well-tuned commercial website. With marketing slogans, customer blurbs, and video commercials.
But every practiced software developer knows there is no such thing as a holy grail. Context is everything and when searching for the best tool for the job, it’s always good to look at both. Otherwise, you will be lured into a solution that has too many trade-offs because of clever, superficial marketing campaigns.
Cliché #3: Android is better/worse than iOS.
The usefulness of this discussion is zero. When you’re building a serious mobile app there is no “or” between Android and iOS. Sure, they have different market shares but you can’t neglect one over the other because of personal preference. Any serious app developer should target both.
The hybrid: Toaster or skinjob?
I think the Battlestar Galactica analogy is somewhat apt. Android as the sturdy and rough metal robots. iOS as the most human-like but still artificial machine. Whatever your point of view, supporting competing platforms for your app can be a bit frustrating. Writing and maintaining the same set of features multiple times has a real impact on development costs and time to market. It feels like waste so it’s not surprising a lot of hybrid app frameworks are available to mitigate these deficiencies. When you’re willing to leave the native ecosystem behind, another set of choices become available accompanied with their own pros and cons.
At Luminis, we have developed a lot of mobile apps with native and various hybrid frameworks. We understand the difficulties, especially when you want to put things into context. To help you out we have summarized our insights in this high-level rundown. It’s especially useful when you have some functional requirements available and a rough idea of the user experience you seek. At the very least you will get some foreknowledge of the impact on user experience and development costs of these frameworks.