Which Mobile App Development Process Should You Choose?
Softjourn

Which Mobile App Development Process Should You Choose?

Between native, cross-platform, and progressive web applications, there are many development paths to choose from; make an informed decision by knowing the benefits and challenges of each

August 04, 2020 by Softjourn

First published: July 15, 2019

It’s estimated that there are over 5 billion mobile devices worldwide,1 2.7 billion of those being smart phones.2 In studies, the average American checks their phone every 12 minutes, and opens apps 11+ times per day.3 Ninety percent of mobile time is spent in applications!4 

To make the best business use of these statistics, you need to start at square one: choosing the most suitable mobile app development path to create an app that will reach your target users and supply the UX they demand. 

While various mobile dev camps argue about which approach is better, the reality is that businesses simply need mobile applications that work for their customers, employees, and business partners. In this article, we’ll discuss three different kinds of mobile app development, their pros and cons, and which Softjourn recommends.

Understanding Your Audience

Knowing where your audience is, what devices they use, and what OS they prefer can tell you what mobile app development process to choose. Once you have an application ready for download in either the Apple App Store or Google Play Store, you want users to download it. That means taking a few areas into consideration.

Free vs. Paid

There isn’t one right way to monetize an application. However, most downloaded applications are free: 98% of the apps that make it onto phones are considered “freemium.”5 

Even though users that pay for apps are in the minority, they typically have a higher engagement rate. They’re not just going to download the app and then delete it a few days later. 

free bs paid apps

And this doesn’t mean that you have to give your app away for free, period! You can provide a free download of your application, and then offer a premium version with more features. Other options include in-app purchases or a subscription service. 

Users want to try before they buy; you can give them this choice by offering a free download of your application. This way, they can decide if the app is the right fit for them. As you grow your audience, be sure to collect feedback!

Google Play vs. App Store

There were 204 billion app downloads in 2019 for both mobile operating systems, an increase of 45% since 2016.6  However, depending on the audience you want to reach, it can be smarter to choose one OS and develop an app for it. 

There are 2.6 million apps available in the Google Play Store, the app store for the Android operating system.7 Compare this with 2.2 million apps available in the Apple App Store, which is for iOS. That’s a lot of competition. However, Android holds a greater global market share when it comes to the number of users that own one of its devices. 

app download statistic

The Android operating system is popular in up-and-coming markets like Asia and Africa. Android devices are low cost to create compared to iPhones. On the flipside, iPhones and other Apple products have a stronger hold, and thus popularity in North America and the U.S. Apple users are often more willing to pay for an application.

Think about the geographical location of your users. Where in the world do they fall? With that information, you can think on which operating system might be better to chase after in the beginning development phase. Of course, there are mobile app development approaches that help you to target both operating systems, and we’ll get into that.

Keep Users Engaged

Getting users to download your application is just the first step. You also want users to use the application, or they’ll just remove it to make space for the next app. Fifty-seven percent of users uninstall an application within the first month of a download, and that attrition rate only grows over time.8 
app retention rate

Track retention and churn rates to better understand user pain points. Be responsive to customer complaints in the app stores you make your app available in, because that information is valuable. It can shine a light on glitches and bugs that need to be repaired. Feedback can also tell you if your app is missing an important feature that users want.

Most users uninstall applications because they haven’t used them enough.9 As stated above, others remove apps that take up too much memory. The third most cited reason for uninstalling an application is that the ad sends too many advertisements, leaving users feeling spammed.

According to research, users prefer applications that use less space, load fast, and are stable.10 Of course, apps that take up a lot of memory are kept around if they’re used often enough. 

With the number of apps available, though, it’s paramount to make sure your app meets users’ expectations because there are dozens of alternatives. 

Which Mobile App Development Process is Right for You?

Once you know the who, what, where, and why of your audience, it’s time to choose a mobile app development process. We’ll discuss three different mobile app development approaches, and their benefits and challenges. 

If you’ve got questions about any of the following, reach out! We excel in helping our clients define their final product, which is a huge help in understanding both the overall process of developing an application and the resources needed for it. 

progressive web apps vs native

What is Native Mobile Application Development?

A native application is an executable program coded in the machine language of the hardware platform it is running in. For example, Android apps are written in Java and iOS apps are written in Swift. Native apps need to be downloaded from a platform-specific app store and run directly on a mobile device. 

Native app development isn’t concerned with browser compatibility or behavior; focus should be on the devices that will run the application. With native development, you can tap into features like geolocation, biometrics, and other inherent operating system functionality with an app.

Popular examples of native applications are social media sites like Facebook and Twitter, and the mobile game Pokemon Go.

Benefits

  • Better performance and security: Because native apps are created specifically for the OS they work on, they’re fast and secure. A native app is ideal for performance-centric and graphic-heavy applications.
  • Consistent look and feel: Native apps are created with native SDKs, which means they offer a consistent UI. This design creates a seamless experience for the user, regardless of device.
  • Immediate access to new features: Because native apps interact directly with native APIs, they can access the latest OS features. 

Challenges

  • No flexibility: Native applications can only be written with specific code. If you want to target both iOS and Android, you’ll likely be hiring two teams of developers. The code cannot be reused between platforms. 
  • Expensive and lengthy development: Because native applications need specific expertise, it can be difficult to find knowledgeable developers. This means fewer workers, which can lengthen development time. 
  • Require frequent updates: Users will need to download new versions of an app to make sure they receive any new fixes pushed to the app store by developers.

native app vs cross platform

What is Cross-platform Mobile Application Development?

Cross-platform applications are mobile apps that can be deployed on multiple platforms using a single codebase. They are written in an intermediate language, such as Javascript, allowing the code to be shared across platforms. 

Cross-platform applications resolve the issue of being unable to share code between apps. With frameworks like Xamarin, Ionic, and AngularJS, it’s easier than ever for developers to create this kind of application quickly. 

{f22c1065}

Popular examples of cross-platform applications are Alibaba, Slack, and Facebook Ads Manager.

Benefits

  • Reusable code: Developers can create one codebase and share it across platforms. Delivering updates and changes is also simplified because new versions of the app can be synced across devices and platforms.
  • Reduced cost and development time: Since code is reusable, development time is shortened. Cross-platform apps can be supported by all platforms, saving time, resource use, and, in the long run, money.
  • Plug-in availability: Developers can access plug-ins and extensions to add functionalities to an app. This means they don’t have to always write new features from scratch, and the app’s versatility can be extended without much effort. 
  • Greater market reach: By not being pigeon-holed into having to choose one operating system, both iOS and Android users can download the application.

Challenges

  • Performance limitations: Because a cross-platform application is not native and is written in a language other than the OS’s native language, this type of app can run into performance and speed issues. 
  • Tool limitations: Developers may need to use native IDEs to complete specific additions to the app, as a cross-platform framework may not be supported by the platform’s conventions.
  • UX challenge: Cross-platform apps are often described as “near native” in terms of user experience. However, because of the variables across different OS, devices, displays, and other aspects of the platforms, it is challenging to make sure that UX is seamless across all devices.

progressive web app vs native app

What is Progressive Web Application Development?

A progressive web application, or PWA, is delivered through the web, using technologies like HTML, CSS, and Javascript. PWAs are intended to work on any platform that uses a standards-compliant browser. 

A PWA does not need a separate download, but it does mean a user needs to be connected to the internet in order to access your application. On the other hand, it works regardless of the device it’s accessed on, whether it’s iOS or Android. 

Popular examples of PWAs are AliExpress, Pinterest, and Uber. 

Benefits

  • Shorter development time: Because they work across different devices without needing different codebases, a PWA can be developed in a much shorter timeframe than a native application. This also means PWAs are more cost efficient. 
  • Easier to maintain: Developers don’t have to rely on users to download every new update that’s pushed to an app store. When the PWA is updated, it’s updated for all users accessing it. 
  • Saves space on user devices: Traditional apps live on a user’s device, taking up memory. PWAs are accessed through the internet, which means they aren’t as demanding. 

Challenges

  • Limited access to OS: Because PWAs are essentially advanced websites, they can’t harness inherent OS features like proximity sensors, geofencing capabilities, and advanced camera features. 
  • No app integration: PWAs cannot access other applications, such as a user’s contact list, since the PWA does not live on the user’s device. 
  • Functionality dependent on OS: Some operating systems limit the functionality of PWAs. For example, iOS restricts push notifications from PWAs, unlike Android. iOS also limits PWAs’ Bluetooth capabilities. 

What does Softjourn Recommend?

Our Clients (and Devs!) Prefer Cross-platform

So which approach has Softjourn been recommending?

After analyzing requests we’ve worked on over the last few months, it looks like cross-platform apps are a favorite among clients. Our devs enjoy cross-platform tools as Xamarin and React Native, too. 

Our clients prefer a cross-platform approach because it saves development time and cost, while still giving the look, feel, and functionality of a native app.

And our tech people recommend using cross-platform technologies:

I like working with React Native because it’s a fast-growing framework with a very big community. It’s efficiency has been proved by Facebook. With this technology, it’s possible to share up to 99% of code between iOS and Android platforms, and Flexbox is the best tool to develop scalable and flexible layouts on different devices. In addition, React Native has many other features that make development faster and easier: hot reloading, where you instantly see changes to the app without rebuilding; usage of all new features that are present in JS and React; declarative views; easy management of application states, and more.
Dariy D., iOS/React Native developer

Xamarin is a powerful tool for cross-platform app development, one that has both proponents and opponents. It could soon become a better alternative to native development—but not for all apps.
Volodymyr Kimak, .Net/Xamarin developer

While native apps offer a great user experience, cross-platform reduces the cost and time of development. As a cross between both approaches, progressive web app development might just combine the best of all features.

Progressive Web Apps as an Alternative

Even though PWAs might lack some functionalities when compared to cross-platform and native apps, they’re still the right fit for some customers. 

PWAs offer a better way to use the internet on a mobile platform, without using a native application. Think of it as a website that looks like an app and provides the same functionality. Users don’t have to install anything, but they get the same experience as if you had an actual application.

In 2017, Pinterest converted their application into a PWA in three months.11 With this transformation, they increased time spent in their app, user-generated ad revenue, and ad click throughs. 

Other popular examples of PWAs are Twitter and AliExpress. Twitter rolled out its Twitter Lite in 2017, offering an alternative experience that was fast and responsive.12 AliExpress saw an 104% increase in new user conversion rates with a PWA.13 

It’s clear that PWAs offer great benefits, depending on the application an organization wants to offer their audience. PWAs are an especially good fit for the ecommerce industry.

A progressive web application combines the best of both worlds: web and mobile. It also has some advantages over native apps: the low friction of distribution, discoverability, linkability and easy updates.
Taras Romaniv, Web developer

When Should You Outsource Mobile App Development?

Sometimes it also makes sense to partner with someone who knows more — whether it’s because of a programming language, architecture, or other segment of development, a professional can not only help you build something faster due to insight, but also create something intertwined with your brand so that the end product is truly representative of your business.

A professional can take the hassle out of developing a mobile application, which is beneficial especially if you’re a small business or startup with limited resources. With a consultant, they can help you define your product so you can fully understand what resources are needed to complete your app as envisioned, or make recommendations about what’s in reach with your current resources.

Outsourcing your development project can net you the following benefits:

  1. Cost-effective approach: By not having to hire and staff your own development team, you don’t have to worry about paying individual salaries, benefits, and other costs. Instead, you just pay for your project.
  2. Increased efficiency: A company that’s devoted wholly to software development already has the teams, tools, and systems in place to immediately get started on your project.
  3. Seamless team management: Again, a consultant for software development has processes and workflows in place to keep projects on track and created within scope and budget.
  4. Flexible schedule: A consultant company, especially one like Softjourn whose development centers are based in different time zones, can work around your schedule.
  5. Consistent support: A good outsourcing company takes care of their clients, and this means ongoing support and service even after a project has wrapped.

Companies both large and small can benefit from consultant services; entrepreneurs with new ideas and startups who might be working with a tight budget can get personalized services that fit just right, and larger companies can get specific services to augment their in-house teams.

Of course, no decision should be made without due diligence. Next, we’ll talk about some questions and topics to consider when evaluating different consultants so you know how to choose the right one for your next project.

5 Considerations When Outsourcing Web Development

If you’ve decided to hire a consultant to build your application, here are some general things to think about in order to pick the right contractor for your project:

  1. Experience: It goes without saying that the more experience a developer has, the more likely they’ll deliver quality work. Aside from the number of years a developer has been operating, you should also consider what technical areas they have experience in, especially as it relates to your project. Ask for samples of work, and if possible, contact previous clients to back up someone’s claim that they built a particular application.
  2. Communication: It can be nerve wracking to hand something off to someone and hope for the best. You’ll want to choose a developer that has good communication skills, including ensuring that they fully understand the scope of the project, can explain obstacles and issues that arise, propose solutions, and keep you up to date on how everything is going. Scope creep, misunderstandings, and miscommunications can hurt your wallet, so transparency is important in choosing a developer.
  3. Additional support: Also ask about after-sale/ongoing support; not necessarily to keep your application updated (unless you need that) but to maintain a good relationship with the developer should more questions or issues arise down the road.
  4. Technological aptitude: Most might think that the important aspect of a developer is what they can do, and how well they can do it. These people aren’t wrong; it’s just not the most important thing. Choose someone who has a good capability for learning new technical skills. Technical skills become outdated about every two years, so the ability to learn how to do something new is very important.
  5. Cost: All businesses have a budget to work with. Development costs will differ depending on each project and its needs, and different contractors will operate with different payment systems: hourly rates vs. set costs vs. monthly subscriptions. Comparing different developers will give you a better idea of what’s out there and what will fit your business best.

Outsourcing a mobile app development project doesn’t have to be a headache. With today’s technology and the internet, there are many companies offering services to help build applications.

It just takes some time to evaluate what’s out there and find a good fit for you and your company. Use the above guidelines to get a feel for different consultancy services and what they can offer your specific project!

Pick the Right Development Process for You

Which mobile app development process your company chooses will largely depend on the app and business requirements. 

If UI and animation are the key to success for your app, we recommend taking the native development approach. If time-to-market is more critical, cross-platform may be your best choice. 

If your in-house core dev team are .Net gurus, then you may like using Xamarin for your native apps to make maintenance easier and more cost effective. And if you’re running an ecommerce business, you may want a PWA to offer a mobile friendly look and feel for your customers.

Want to discuss your specific mobile app development situation? We’re always here at Softjourn to help you make the right choice. Contact us today and tell us about the cool app you’re thinking about!

 

1Silver, L. (2020, May 30). Smartphone Ownership Is Growing Rapidly Around the World, but Not Always Equally.
2O'Dea, P. B., & 28, F. (2020, February 28). Smartphone users worldwide 2020
3Swns. (2017, November 08). Americans check their phones 80 times a day: Study.
4Llewellyn, G., & Commentator, E. (2020, January 10). Mobile marketing statistics compilation.
5Savov, V. (2014, June 24). Freemium apps account for 98 percent of worldwide Google Play revenue.
6The State of Mobile in 2020: The Key Stats You Need to Know. (n.d.).
7App Download and Usage Statistics (2019). (2020, June 23).
8Mobile Apps: What's A Good Retention Rate? (n.d.).
9Why Users Uninstall Apps: 28% of People Feel Spammed.
10Chengappa, S. (2020, March 18). 56% of users uninstall apps within 7 days of installation.
11Osmani, A. (2017, December 01). A Pinterest Progressive Web App Performance Case Study
12How we built Twitter Lite. (n.d.). 
13AliExpress  |  Web  |  Google Developers. (n.d.).

 

Softjourn is a global technology services provider that finds custom solutions for our clients’ toughest challenges. We leverage our domain expertise in Fintech, Cards & Payments, and Media & Entertainment (with a special emphasis on ticketing), to apply new technology that brings our clients' growing needs to life. Contact us to discuss how we can make your idea a reality!