Pros and cons of microservices – can your company benefit from them?
- June 25
- 6 min
Users do not have a particular interest in the technology behind their favourite pages, they care for the experience they get. Because of that, transparent UI and purposeful UX became more important than ever.
Combining web and native capabilities let users be closer to the products they like and often use. And although it sounds like a new concept, we were already aware of this evolution more than ten years ago.
Within a year after launching Apple’s flagship product – the mighty iPhone – Cupertino’s giant introduced the App Store. It was probably even a bigger step for the mobile experience than its hardware counterpart. The golden age of native apps begun, completely changing the way in which we interact with the Internet. We started almost immediately to exercise our right to experience fast, good looking and easy to use interfaces. As the revolution progressed it became clear that the native apps did not come without some significant drawbacks. Companies started to struggle with a complex, money-consuming development and discretionary app licensing processes.
What is interesting, a solution was presented six months later. During Apple’s Worldwide Developers Conference in June 2007 Steve Jobs addressed this topic:
We’ve got an innovative new way to create applications for mobile devices. It’s all based on a fact that iPhone has the full Safari engine inside it. And it gives us tremendous capabilities of writing web based apps that can integrate fully with an iPhone. […] And guess what? You don’t need an SDK to do it.
The concept was simple. Developers would be able to create websites that behaved like native apps and worked offline. The idea did not take as the tech behind it was still significantly flawed. A year later Apple launched the App Store and stopped the discussion for another few years. However, the challenge did not go away and we knew at some point we would have to face it again.
Native Apps are expensive to develop. I am aware of how subjective the word “expensive” sounds, so let me explain. Many companies base their business model primarily on an app. Furthermore, they plan to enhance its capabilities over time and expect to uphold a big amount of users traffic. In that case, there is no arguing – they need a native solution built separately for iOS and Android. On the other hand, for those businesses that aim to only enhance their main offer and give their customers richer service experience the cost of hiring three different dev teams can be overwhelming.
Another challenge that companies need to overcome is an approval process in the main app stores. If you are not familiar with this concept, I will explain. After you have developed an app for each platform you need, your app is still subjected to approval by the platform’s Apps Review team. It can be a long and difficult process which at the end is dependent on a subjective opinion of a reviewer.
Last but not least – the app market is getting tougher every year. Despite thousands of great apps, over 500 million visits every week in the App Store and almost 5 billion mobile users globally, people tend to use only a few apps on a daily basis. A study done in 2017 revealed that users spend 77% of their time on their top three apps. Comscore Mobile App Report showed that more than 50% of America’s smartphone users download no apps a month. On top of that, Facebook and Google dominate the mobile app ecosystem. In the same report in the top ten most popular apps in the UK, nine of them are owned by one of these companies.
As I see it when talking native vs Web, we are really talking about web reach versus native app engagement. It is much easier to reach new people on the web, user acquisition is a lot less expensive than in native apps, and conversion rate is also in many cases higher. On the other hand, in the native environment, you can store some content offline, send push notifications to users, and achieve a perfect level of performance. So, what would happen if we could take what is the best out of Web and the best out of native and combine that into one? In a nutshell – this is what we call a Progressive Web Application. But how do they deal with those three key challenges I mentioned?
First of all, for developing a PWA you need only one team of developers. You maintain one codebase for Web, iOS, and Android. Updates are done single-handedly on your server and are immediately available to all users. It is a crucial point. Without three different dev teams and three different environments not only your in-company communication is easier and faster, but the speed of implementing new features improves.
The licensing process and third party API usage restriction are directly related to your budget capabilities. Using external APIs is, generally speaking, cheaper than writing everything your app needs from scratch. Adjusting your app to the store guidelines may increase the overall costs too. You can avoid such an impact on your product if you develop a progressive Web app.
I mentioned at the beginning that users are mostly interested in their experience with the product, not in the tech behind it. It could not be more true. With the growing influence of UX on the Web, it was only a matter of time when we had to implement some of the native app’s functionalities. After all, these functionalities were always at the forefront of good user experience. So, it was more of a natural evolution enforced by many factors, rather than one market or one company decision. That is why I view the PWA technology as a natural evolution of web pages. In the words of Alex Russel:
These apps aren’t packaged and deployed through stores, they’re just websites that took all the right vitamins.
With PWA we can achieve the holy grail of websites: Reliable, Fast, and Engaging apps. Thanks to:
we can engage the users even more. It is one product that meets most of the users’ expectations, even those the most extravagant. One product that our team develops and can fully focus on. All this is enclosed in one product we are able to deliver to you.
A natural question would be: what’s next? How will the future of PWA unfold? Are we getting to a point where there will be no native apps or no regular websites? Personally, I do not think so, for now the status quo will be preserved as we are just not there yet. For a long time, this technological trinity will endure, but the present trend will only get stronger. The benefits of PWA are being discovered every day by more and more developers, businesses, markets, and industries. For sure, the revolution has just begun.