Hybrid app development: future or futile?
At first sight, hybrid app development seems like an obvious choice. A single codebase producing code for both platforms requires only half the code and coding expertise and therefore half the costs. Any executive worth their salt would deem this an interesting proposal at the very least.
In reality, this isn’t as obvious a choice as you would think. Here to explain the reasoning behind the questions you should be asking, is our very own managing partner: Mike Seghers.
Apps: what are they good for, anyway?
We have to admit, this first question certainly threw us for a loop. Let’s get back to basics for a second. As a company, you build an app because you want to offer a certain service to (potential) clients with a smartphone. However, the market is split in two between iOS and Android. Hybrid app development is often touted as a solution for reaching both audiences. But in doing so, an obvious alternative is often overlooked: a mobile website.
Here’s the thing: modern, well-built websites commonly support both mobile platforms and desktops. Financially, it’s even more efficient than hybrid development. The downside? Users can’t access your content directly from their home screens if there’s no app or widget.
There’s a solution to this though: Progressive Web Apps (PWAs). These web apps allow users to add a website to their home screens as if it were an actual, dedicated app. They look and behave like an app, but they’re actually a browser window running in the background in disguise. So why choose a dedicated app either way? There’s two major advantages:
- Making use of a smartphone’s hardware in your app. Features like location services, a camera with a QR reader or Bluetooth offer otherwise inaccessible possibilities.
- Aligning your service and content with a certain platform’s look and feel. This will ensure a continuity in experience for your users.
To hybrid or not to hybrid
If you decide to go with a dedicated app, the next choice is between hybrid and native development. Hybrid offers potentially halved costs, so what does native development bring to the table? There’s three reasons:
- An obvious first one: your app should only support a single platform. If all of your technicians use Android tablets, there’s little incentive to cater to iOS.
- Your app makes use of recent features and technologies that require a smartphone. Apps using machine learning, NFC payments or augmented reality may need to be developed specifically to take full advantage of these features.
- You already have sufficient in-house expertise and resources to develop for both platforms simultaneously.
Our second argument requires some nuance: most of these technologies are already available as hybrid components. In these cases, native development only makes sense if you want to be the first to use a certain feature. In all other cases, we recommend hybrid development because of its savings potential.
Framing the picture
The last consideration is which (hybrid) development framework to use. There are plenty of competitors to choose from, but Flutter, React Native, and Xamarin are most often used.
The differences are often rather granular, but chief among them is the technology they are built on, since they lead to a unique approach. Apps built in Xamarin, for example, are written in C# and still use frameworks provided by Apple and Google in the background. On the other hand, React Native is based on React, a JavaScript web framework. This means that instead of a direct connection, there is an indirect bridge to those underlying Apple and Google frameworks. Finally, Flutter makes use of Google’s proprietary Dart language and encompasses the UI design process.
Knowing what is running in the background is key to making a deliberate choice. Choosing a framework or technology that your organisation is already familiar with is obviously advisable to save some of those precious development resources.
Tough questions require a spicy solution
Numerous as these questions may be, they are ultimately of secondary importance. Avoiding additional development costs is advisable, yes, but a certain framework will not determine your app’s success. The deciding factor here is usability, not the underlying technology. Usability results from extensive requirements mapping. This in turn requires excellent communication with all stakeholders: not only developers and UX/UI designers, but end users as well.
This is the kind of advice you can expect here at Sweet Mustard. If you want to make a well-elaborated choice, reach out and include us in your search for the perfect app!