First of all, feel free to comment below if you found a grammatical/semantical mistake in this post given that English is not my native language.
Second one, I will write one post per technology to avoid a large post
I have been working as a Mobile Developer for more than a year. Before that, I was working as a Web FrontEnd, so it was a new world to me develop for mobile.
In this road I found four main options to keep in mind when you build a product for mobile:
- Progressive Web Apps (PWA)
- Native Apps for iOS and Android
- “Hybrid” Apps with Ionic & Cordova
- React Native Apps
I’ll resume each one of these alternatives in this post, including the strengths and weaknesses of each platform based on my experiences and research that I made.
Progressive Web Apps aren’t mobile apps in the strict sense of the term, but in my opinion, it's a technology incoming for the Mobile App market.
A PWA is effectively a Web App that’s heavily optimized for mobile and has some very popular features like offline support and notifications. Also, they can be added to the home screen in a way that makes them look like a mobile app, this mean that you don’t have to deal with clunky app stores.
However, PWAs are web apps at their core and they are designed to run in a browser. This means that you don’t get access to most of the native technologies apart from notifications and offline support. And even those two features are limited to Android (though iOS support is expected to land sometime in 2018).
What makes them so enticing is the fact that you can build a single product for Desktop and Mobile with no app stores to deal with.
So, It can be a great option for shipping Minimum Viable Products (MVPs) or trying out a new market without having to invest a ton of time and money.
PWAs are web apps, so they’re easy to access from any device since all you need is a link and a browser. There are no app stores or complicated install processes to deal with.
Unlike mobile apps, properly built web apps are indexed on search engines (SEO) and can be shared on social media very easily. On news and media sites, Facebook and Twitter are essentially your entire user acquisition funnel, and this helps offer those users a better experience.
PWAs are quite friendly to low-end devices, which makes them a great option for emerging markets. Since they are extremely lightweight they can be added to the home screen instantly, and users don’t have to start deleting stuff from their phones to free up enough space for a new app. (cof cof, Android!, cof cof) 😆
PWAs are mostly intended for media products like news sites, lightweight social networks, or online stores-all products that work very well as a web app. For other use cases (complex apps in general) you’re going to hit the limits of the technology pretty much instantly.
The nicer features of PWAs (notifications and offline support) are only supported on Android devices and partial support for iOS.
While that’s far from being a deal breaker, you need to keep this in mind so as to not disappoint iOS users with features that don’t actually work.
I hope you enjoy this post, see you in the next part.
Cheers from 🇦🇷!