Hybrid or native? The pros and cons debate wages on without an end in sight. The only consensus is that that there will be no winner, just options to fit different situations. Which makes sense really, because the only way to find an answer as to which mobile path is right for your business is to know what your customers want do with or gain from your mobile implementation. Are you simply making content accessible to people from many devices, or are you providing complex functionality that requires using a device’s hardware? Knowing which questions to ask and gaining an understanding of the strengths and weaknesses of each implementation are vital to creating a successful product and not wasting your investment of time and resources. Below are the options, and a some points to consider when choosing between them.
Understanding your mobile development options
Native App Development - What is a native app? If your app is written specifically for one OS, it is native. Lets take, for example, iOS for Apple devices. If you are an Apple user, there are certain iOS styles and functionalities that you expect, even if you don’t think about expecting them. The easiest way to realize how much we rely on these functionalities even after we come to take them for granted, is to sit down at a computer or use a phone that is from a rival OS. It is frustrating, it takes time to re-learn where things are, and often makes us reticent to switch to a different brand for our phone or computer. A native app only works on one OS, but can make the greatest use of all the tools and benefits baked into that OS, and users can pick up your app and use it very intuitively, as an extension of their phone.
Responsive Web Development - Responsive web design, it should be noted, is an entirely different animal than the hybrid and native options. Instead of being downloaded onto your phone, a responsive site is still viewed in a browser, like any other website. This means that it has no interaction with the phone itself, but can only interact with the user through the confines of web based elements. Responsive web development is all about making sure that your website is user friendly and entirely accessible no matter what size of screen or what device your user is on. It is useful to note that most web apps are paired with a responsive website, because only HTML is visible for SEO purposes, and apps without web based landing pages would never show up on web browser searches.
Hybrid App Development - Hybrid apps are the compromise. They are OS agnostic. They work on any OS, but operate from one code base, instead of having to be written from scratch each time. This is especially appealing if a company wants an app to seem native and be available for purchase through the Apple and Android app stores, but without having to deal with the hassle of multiple truly native apps. Because native apps, lets face it, are a huge hassle: a minimum of two completely separate code bases, in a minimum of two different languages that are written and maintained by at least two different teams of developers. It is a daunting task in the best of cases. So, we compromise some native functionality for the comparative ease of working with one code base and one dev team, with the ability to fix bugs in one place and release updates to both devices at the same time.
So, with those parameters set, we begin to see a spectrum emerge from our options. The cheapest, easiest, and least complicated option for mobile accessibility is responsive web development, which conversely offers almost no functionality, limited user interactivity, and no offline availability. On the far other end of the scale, we have native app development, the most expensive and complicated to create and maintain. In native, every possibility the device has is open to you. It is fast, secure, available offline, and has the best user experience and conversion rates. In the middle we have the hybrids. Offering most of the functionality of the native apps without requiring companies to re-create their app from scratch for each OS they want to support, they aren’t everything, but they are most of what most apps need.
Native App or Responsive Web App
There is a break in our spectrum between app and website that requires recognizing the difference between mobile accessibility and mobile functionality. What is the primary goal of your mobile service? Do you simply want to make content available to users (accessibility), or, do you want mobile users to interact with your content (functionality)? Also, if you ever want your product to be available for download on an app store, that also requires creating a full app.
If your primary goal was accessibility, you are probably offering text-based information to users, such as a blog or news site. Aside from navigating from page to page, users won’t interact with your content very much and will never be adding or storing their own content. They will be able to share content, but they will not be able to access any content without internet. Your content and brand will be very consistent, if a user goes to your site on a desktop they will immediately recognize it as the same site they used on their phone. Responsive web development is probably all you need. Carefully crafted for each phone and mobile device, your content will be accessible to everyone and require no specialized skills.
If your primary goal was functionality, you should turn your eyes to the app side of the spectrum and begin to consider between a hybrid and native application to meet your needs. We will cover these options next.
Native or Hybrid
OK, that first part was easy. Now you know you want an app. But this is where the question gets tricky, and the answers get more complicated. Whether you choose native or hybrid is a decision that will be determined by the combination of a variety of factors, such as your resources, dev team, the time you are able to commit to the project, the consumers you want to reach, and your long term plans for your app.
It is also worth mentioning the importance of this decision. It might not seem like a big difference, you get an app that functions or an app that functions better. However, with users, this will be a big issue. Most people who use smartphones do not know and cannot explain the difference between native and hybrid, but if their experience is anything other than native, they will know. It is exactly the same way in which a casual user has no idea what the technical differences are between a mac and PC, but all of them know the difference when they go to use the rival machine. You might say, so what — it takes them a few minutes to learn to use my app, but my content is be good enough to make it worth their while. In truth though, however amazing your content is, it probably doesn’t matter. If your UX is confusing or even simply not what the user was expecting the user might never give your app a second chance, or even a first. Consider this:
While 79 percent of consumers would retry a mobile app only once or twice if it failed to work the first time, only 16 percent would give it more than two attempts. Poor mobile app experience is likely to discourage users from using an app again.
You cannot underestimate the power of the first impression of your app when that is more than likely the only impression it will ever give. It is this one truth that has the ability to make going native worth your while. With one code base, it is impossible for even the best of hybrids to feel native on multiple operating systems. And yes, your users will notice and it will absolutely affect your success rate.
While you chew on that, we have broken down two possible deciding factors, time frame and performance, to show some of the thought process that goes into a final decision.
How much time do you have to get this app out to the wild?
If you have an employer or client breathing down your neck to get this out ASAP, the native app is not a realistic option for you. One code base and the simplicity it offers allow you to get a quality app out quick. The thing to consider with this option is that, as more and more companies and products have a mobile presence, the comparative advantage of simple “getting something out there” lessens, and the benefit of having the better UX edge grows. Any traffic is better than none and that is absolutely true, but if your customer base is already smartphone savvy and there competitors in the same mobile space, you might consider the advantages of giving yourself the time to go native and get something out there that has an immediate advantage.
If you have the time (and resources, of course) to invest in a native app, it is likely the best way to go. Your app will be faster, easier to use, and more secure going the native route. One thing to remember when getting started is that just because you went native does not mean you must immediately release a version of your app for every OS. In fact, your best option is likely is honing in on the OS that your customers use and releasing only a native app for that OS, and add another if it becomes beneficial. Instagram waited two full years before releasing a native Android app, and many other large companies have done the same without any harm to their business. In fact, focusing on one will allow you to put out a higher quality product off the bat, which might be a bigger factor in overall success than simply wider availability.
Is speed vital to the usability of your app? If so, you probably want to go native. It will be more performant, and depending on the function, may not need to rely on an internet connection. If your app would not benefit from better performance times, then investing in a native app might be beyond what you need.
There are many other areas and factors to consider when deciding which method for mobile to implement. Hopefully these considerations can give a start to that conversation. All three options have their benefits and costs, but there is a best option for every situation, and the right use of each method can be successful. Responsive Web Development is a fantastic answer for basic web sites that prepares you for new devices and changes in screen size before they even happen. There have recently been powerful advances in hybrid methods, and in the future they might be able to offer near native functionality. Native development will continue to offer new and more advanced functionality as devices progress. In short, the world of mobile development is rapidly evolving to meet the huge mobile need, and we will all have to watch to see what comes of it.