SoftwareBY RabIT Solutions

Mobile application technology is still heavily on the rise. According to Statista, there were 3.2 billion smartphone users in the world in 2019. This number is expected to reach 3.5 billion in 2020, and 3.8 billion by 2021. Most of the world’s population can be reached through mobile applications.

Edit 07/02/2020: Updated data and research results in the article for 2020

Choosing the right technologies is one of the most crucial decisions you have to make when entering the mobile app market. There are new solutions appearing constantly which make this decision more difficult.

This is why we decided to focus this article on helping you find out which platforms, frameworks and languages will work the best for your business in 2020.

 

If you are still on the fence about building digital solutions for your business, I recommend you read one of our earlier articles:

7 Reasons Why You Need to Start Business Digitization Right Now

 

When choosing your tech stack, first you have to consider your overall business strategy. Do you want to reach potential users on the Android or iOS platform? Perhaps you want to reach both with a single application. Once you have this figured out, you have to decide whether to build a native, hybrid or progressive web application.

 

Here is a quick breakdown to help you choose the mobile application technology that fits your business the most:

 

Native Apps

Native applications are developed specifically for a single mobile platform. Today, the only relevant platforms to choose from are Android and iOS. Depending on which one you choose to focus on, you will need to compile your tech stack accordingly.

 

Android – Java and Kotlin

Most Android applications are built using Java. After all, it is still the most widely used language on the planet. The classic way of writing native Android apps is to use Java and the Android SDK.

Java’s popularity for Android is mainly a result of its rich set of core features, redundancy, high security, speed and scalability. However, since mid-2017, there seems to be a trend that shows Kotlin finally replacing Java as the go-to language for Android app development.

Since Google endorsed Kotlin as an official language for building Android apps, it has been rapidly gaining in popularity. According to GitHub’s Octoverse, Kotlin was the fastest growing language in 2018. Its number of contributors has more than doubled since the year before.

 

Source: octoverse.github.com

 

According to the 2019 Octoverse, Kotlin is still the 4th fastets growing technology.

 

kotlin mobile application technology growth

Source: octoverse.github.com

 

Kotlin is wildly popular mainly because it makes coding much more concise, and is 100% interoperable with Java and Android. Writing code in Kotlin requires approximately 40% less lines of code compared to Java.

The language is big, complex and new, so it might take time for people to learn. Although, it is reportedly much easier for developers who already know Java, and there is also a rapidly growing support community today. You definitely won’t have any trouble finding Kotlin experts in the years to come.

 

iOS – Objective-C and Swift

Objective-C is a superset of the C programming language, and is utilized by a high number of mobile developers building apps for OS X and iOS. It is a very mature and tested mobile application technology that survived many generations of developers since its first release in the early 1980s.

Thanks to its stability and maturity, Objective-C manages to stay relevant today. There are a lot of well-documented third party frameworks out there, and very strong community support. It is also highly compatible with C and C++ programming languages.

There was obviously room for innovation, though. In 2014, Apple released Swift to provide new developers with an alternative that is easier to learn and to understand. The code length in Swift is significantly reduced, which makes development with it much faster compared to its older counterpart.

Apps developed in Swift are also considered to be safer and less prone to bugs and crashes than the ones developed in Objective-C. While Objective-C is still in the lead when it comes to community support and documentation, Swift is rapidly gaining in popularity.

Stack Overflow conducts a survey with its developer community each year. This is how the popularity of Objective-C and Swift changed with the community over the past 6 years:

 

ios mobile application technology trends

Source: https://insights.stackoverflow.com

 

We can see that the number of Objective-C developers started to stagnate after 2016 with only a minor increase this year compared to 2017. On the other hand, it is expected that the Swift community will continue to grow over the coming years.

Here is how native mobile technologies cluster together according to over 100,000 developers surveyed by Stack Overflow this year:

 

Source: https://insights.stackoverflow.com/survey/2018/

 

Advantages of Native Apps

  • Native apps are faster and more responsive than hybrid apps
  • They can run offline depending on functionality
  • Developers can better utilize device functionality like camera, microphone, swipe gestures, etc.
  • They are more interactive and run much smoother, creating a better overall user experience

Some Disadvantages

  • More expensive and slower development compared to hybrid apps
  • Harder to scale and maintain on each platform separately

 

Subscribe to the RabIT Newsletter

What you get if you join our email list:

  • Actionable insights about software development topics
  • Interesting case studies and news about IT innovation
  • No marketing spam

You can unsubscribe at any time

 

Hybrid & Cross-platform Apps

We are talking about a hybrid app, when it includes both native and web elements. Creating a hybrid application is similar as building a web app. They are built using web technologies like HTML, CSS and JavaScript.

More and more people are also choosing to build cross-platform mobile apps over native ones. The growing demand resulted in the evolution of a number of cross-platform frameworks like Ionic, Cordova, Xamarin or React Native.

The Ionic framework and Cordova both use HTML, CSS and JavaScript. Ionic builds on top of Cordova. This mobile application technology basically provides a set of front-end components that allow you to write HTML5 apps that look like native apps. Ionic also allows for up to 98% code reuse. These technologies already have a large community following.

Xamarin uses C# and .NET. Xamarin.Android and Xamarin.iOS are used for providing platform-specific behaviour, while Xamarin.Forms is responsible for code sharing. It allows for the reuse of 96% of the written code. Xamarin also has a large community following.

React Native uses JavaScript and React.JS, and has a rapidly growing community. React Native heavily builds on JavaScript, and is backed by Facebook. A huge benefit is that it allows for writing modules in Objective-C, Swift or Java languages if needed. Up to 70% of React Native code is reusable, which helps speed up development for multiple platforms.

React is a great choice if your app needs to handle heavy operations like image editing or video processing. High accessibility and its ability to build high-performance UI solutions fast helped it become the most sought-after cross-platform mobile application technology of 2019.

 

popularity of mobile app technology

Source: Google Trends

 

Advantages of Hybrid & Cross-platform Apps

  • More cost-efficient than native app development
  • Shorter time-to-market
  • Most of the code is reusable for multiple platforms (write once, use anywhere)
  • Because there is only one code base, it is much easier to scale and maintain a hybrid or cross-platform app

Some Disadvantages

  • Hybrid and cross-platform apps can have stability issues across different devices
  • Inconsistent performance on different platforms, which can negatively impact user experience
  • Mobile OS updates take a bit longer to integrate into cross-platform frameworks than native ones.
  • No access to certain mobile hardware-related features that are only available in native apps

 

Progressive Web Apps

Progressive web apps (or PWA) are the perfect cross between native mobile apps and websites. PWAs are web applications that load like websites, but can offer functionalities traditionally available only to native apps. They can be loaded with the push of a button from the user’s mobile home page, without having to go through the whole app installation process beforehand.

Service workers are used to provide the best of both web and mobile native worlds. These service workers lie between the network and device to supply the content. Among many other properties, they are capable of utilizing cache mechanisms efficiently. This allows PWAs to work in offline mode as well.

This relatively new mobile technology allows you to provide a swift and smooth mobile native experience to your customers without intrusive app installation pop-ups. Your team can build them using a basic web stack (JavaScript, HTML & CSS).

World-leading companies from all industries are reportedly already experiencing higher web traffic, customer engagement, and conversion rates thanks to PWAs.

We wrote about 8 famous PWA success stories in a recent article.

 

Source: https://www.pwastats.com/

 

Advantages of Progressive Web Apps

  • PWAs provide a smooth experience at high performance, without relying on web connectivity.
  • They are also able to deliver real-time updates and push notifications, which was a feature reserved only for native apps in the past
  • They use 10-1000x less storage space compared to native apps
  • Fast and cost-efficient development

Some Disadvantages

  • PWAs don’t have access to all mobile hardware functions such as fingerprint scanning, advanced camera controls, Bluethooth, etc.
  • Running robust web apps on a smartphone uses up battery charge fast

 

Final Summary

Thanks to the popularity of mobile platforms, today there is a mobile  application technology for everyone.

It is up to you to assess the needs of your organization and make your choice according to your strategic vision and goals. If done correctly, your new mobile application can become as important of an asset to your business as a brick-and-mortar store.

We hope this article helped you figure out which technologies will be the best fit for your business.

 

If you need additional information to help you select your ideal mobile technology, feel free to ask your questions through our website, or ask for a free consultation.

RabIT Solutions

RabIT is an innovative software engineering company from Hungary. Our goal is to help startups and enterprises drive growth through technology innovation and make a real impact in their industries.

Code quality and transparency are our main priorities throughout each project.

What is a PWA?

Progressive web apps (or PWA) are the perfect cross between native mobile apps and websites. PWAs are web applications that load like websites, but can offer functionalities traditionally available only to native apps. They can be loaded with the push of a button from the user’s mobile home page, without having to go through the whole app installation process beforehand.

Service workers are used to provide the best of both web and mobile native worlds. These service workers lie between the network and device to supply the content. Among many other properties, they are capable of utilizing cache mechanisms efficiently. This allows PWAs to work in offline mode as well.

 

Why are PWAs gaining in popularity?

This relatively new mobile technology allows you to provide a swift and smooth mobile native experience to your customers without intrusive app installation pop-ups. Your team can build them using a basic web stack (JavaScript, HTML & CSS).

World-leading companies from all industries are reportedly already experiencing higher web traffic, customer engagement, and conversion rates thanks to PWAs.

PWA has the highest reach with companies like Flipkart, Twitter Lite and Starbucks reporting increased user retention rate.

Here is a closer look at some of these successful progressive web apps.

 

Examples of PWA development projects in practice

 

Twitter

With close to 330 million active monthly users around the world who consume, create and share content, it is no wonder that Twitter wants to keep their mobile web experience as fast, reliable and engaging as possible. This was the main objective when they decided to upgrade their web application to a PWA.

 

examples of PWA development - Twitter

 

It’s safe to say that they’ve succeeded. Twitter Lite helped deliver a more robust experience and helped:
• increase number of pages per second by 65%
• increase number of Tweets sent by 75%
• decrease bounce rate by 20%

All this while requiring less than 3% of device storage space compared to Twitter’s native Android app. Instead of installing the app through the App or Play Store, web application visitors can choose the “Add to Homescreen” option directly from their mobile browser.

 

Instagram

Instagram was one of the first major companies to adapt PWA technology. If you somehow haven’t heard of it yet, it’s a social network service for sharing photos and videos. Following in Twitter’s footsteps, they upgraded their web application, giving web app users access to functionalities that previously were only available to native app users.

 

examples of PWA development - Instagram

 

The Instagram PWA now supports push notifications, has a web manifest and can be installed on both iOS and Android devices, using up much less storage space.

There are still some noticable navigation issues, but the pros outweigh the cons overall in terms of user experience thanks to the increased speed and lightness of the app. According to recent news, Instagram will expand the compatibility of the PWA to Windows Mobile OS as well.

 

Alibaba

Alibaba.com is the world’s largest wholesale trading platform, serving 200+ countries and regions. After upgrading their site to a progressive web app, they saw a:
• 76% increase in conversions across browsers
• 14% increase in monthly active users on iOS; 30% on Android
• 4X higher interaction rate from the “Add to Homescreen” prompt

 

Alibaba's progressive web application

 

Alibaba released its PWA in 2016, and they closed that year with $15,69 billion in annual revenues. Such a significant rise in mobile web conversions contributed a healthy amount to increasing this number to over $60 billion by the end of 2019.

By understanding how mobile web users interact with their business, they were able to deliver an excellent user experience to both first-time visitors and repeat visitors. Their PWA is also able to deliver push notifications the same way the native app does, achieving the same open rate on both platforms.

 

 

Subscribe to the RabIT Newsletter

What you get if you join our email list:

  • Actionable insights about software development topics
  • Interesting case studies and news about IT innovation
  • No marketing spam

You can unsubscribe at any time

 

Trivago

Trivago is one of the world’s most popular hotel search engines. The travel industry has been heavily disrupted by internet technology over the past two decades. Ever since their founding, they have been fully aware that they need to utilize emerging technologies in order to stay ahead of the competition.

 

examples of PWA development - Trivago

 

Because the majority of users access their service through mobile phones, succeeding on mobile platforms quickly became the company’s number one priority. They finally decided to design a progressive web application to improve their user experience.

Since then, more than half a million people added the Trivago site to their mobile home screen. Engagement for users who use this functionality increased by 150% thanks to push notifications. This increased engagement also lead to a 97% increase in clickouts to hotel offers for PWA users.

 

Starbucks

The reasons behind decision at Starbuck to develop a PWA were twofold: The company wanted to introduce ordering functionality to their website, while also making it more accessible for emerging markets. This way the service would be available in locations where internet connections are less reliable, like rural communities.

 

examples of PWA development - Starbucks

 

Because PWAs are built around the concept of “offline-first”, they are great for cases like this. Much of the application is available without an internet connection. Customers can modify the product in their order, and the information gets sent directly to the POS.

Starbucks now has a fast, performant, easy-to-use PWA that is 99% smaller than the 148MB native iOS app. By utilizing React, the development team was even able to include content-specific animations which are common in native apps, but rarely achieved for web apps.

 

Tinder

Tinder was also among the early adopters of PWA technology. They had noticed that session times are typically longer on web than their native apps. Users typically chose web more often to send messages and edit their profiles, so the company decided to focus on improving performance and user experience primarily on this platform.

 

examples of PWA development - Tinder

 

They chose React and Redux as main technologies. JavaScript performance optimization was used for improved load times, service workers for network resilience and push notifications for chat engagement.

Tinder is still iterating the progressive web app, but has already experienced great benefits. With the PWA they were able to cut their load times by 61% from 11.91 to 4.69 seconds. It’s able to deliver the core Tinder experience for only 10% data investment. The PWA is also 90% smaller than their native Android app.

 

Pinterest

Low engagement rates were the driving force behind the development of Pinterest’s PWA. The company realized that their mobile website only converted 1% of users into sign-ups, logins and native iOS and Android app installs.

 

Pinterest's progressive web application

 

Of course, this was far from ideal, and something needed to be done to increase web engagement. It took only 3 months, and the resulting improvement in business metrics really speaks for itself. People started spending 40% more time on the new PWA compared to the old mobile site. This lead to an increase in user-generated ad revenue by 44%, and core engagements also rose by 60%.

Performance also improved significantly. Due to its monolithic build and some CPU-heavy JavaScript, it took 23 seconds for the old mobile web site to become fully interactive on load. This wait time got reduced to only 5.6 seconds for to the new PWA.

 

Telegram

Telegram’s PWA was already available when its rival, WhatsApp Web got released to the market. It offers almost the exact same features as the mobile version, while being much lighter and faster than a conventional application.

 

Telegram's progressive web app

 

Beside the usual perks, this PWA has a small downside too. To start using it for the web, users must signed up on a native Telegram app first, and verify their details. This is necessary due to the company’s high security standards. All messages get encrypted on the cloud, and there is also a secret chat feature that doesn’t get stored on the company’s servers.

These examples of PWA development demonstrate that these new type of apps provide real value that is measurable in both user engagement and increases in profitability.

 

When should you consider PWAs?

Instances when PWAs can be especially beneficial:

  • If you want to make an e-commerce website together with an app – PWAs provide an easy way to increase user activity by allowing them to “save” your web shop on their home screen, and serve receive push notifications anywhere.
  • If you and your team are comfortable with web technologies and want to build apps in a limited time. You can write it with classic web technologies like HTML, CSS and JS.
  • If you are going “everywhere first” instead of mobile first – PWAs reach the widest range of users and devices via the browser.
  • If you want the lowest cost option for your development team – PWAs only have to be written once.
  • If you care about low-end devices, or users with poor internet connections – PWAs provide a smooth experience on slower devices too, and even work offline.

Some other benefits of PWAs:

  • PWAs load directly from the browser without having to download an app
  • They are also able to deliver real-time updates and push notifications, which was a feature reserved only for native apps in the past
  • PWAs use 10-1000X less storage space compared to native apps, and they require much less mobile data to load pages

 

What are the downsides of PWAs?

  • Your app won’t reach users who are searching in the App or Play Store
  • Somewhat lower UI responsiveness and performance compared to native apps.
  • PWAs don’t have access to all mobile hardware functions such as fingerprint scanning, advanced camera controls, Bluethooth, etc.
  • Running robust web apps on a smartphone uses up battery charge fast

 

Hopefully we were able to inspire you with these examples of PWA solutions. The tech provides many opportunities for businesses of all shapes and sizes to engage more with their mobile site users, and reach real benefits in terms of bran loyalty and online profits.

Now it’s up to you to review the possibilities to increase mobile web user experience for your customers and take action before your competition does.

RabIT Solutions

RabIT is an innovative software engineering company from Hungary. Our goal is to help startups and enterprises drive growth through technology innovation and make a real impact in their industries.

Code quality and transparency are our main priorities throughout each project.