Picking the Best Platform for Your App Idea

18.09.2017 |

Episode #4 of the course Bringing your app idea to life by Kara Ntumy

 

Hello again! I’m very glad you returned, as things are about to get even more interesting! In the last lesson, we started validating your app idea. Today, however, I will outline some of the considerations that come into play when deciding which platform to build on.

The term “native apps” is used to describe apps that have been built for either iOS or Android devices using the languages native to their respective platform. Typically, apps built for iOS (Apple’s mobile operating system) are programmed in a language called Objective C, whereas apps built for Android (Google’s mobile operating system) are developed using a language called Java. Since the introduction of apps, there has been a never-ending debate over which native platform—iOS or Android—is the better one to build on. A similar debate exists over which type of apps—native or web-based—are the better type to build! With all these ongoing debates, how can someone trying to create an app make the right decision? The answer is quite simple, actually: It depends on what your app does.

 

Native vs Web-Based Apps

Let’s talk native versus web-based apps. Now, because native apps are built for a specific type of device, they have the ability to utilize all the hardware features (e.g. bluetooth, inter-app communication, proximity sensors). It is widely accepted that native apps, although the most costly and time consuming to build, are the best option. Why, you ask? They have the best performance, as they are built specifically for the device they run on. They also guarantee the best user experience (something that keeps users happy). With 53% of users abandoning a site if it takes longer than three seconds to load or if it’s not user friendly, considering app loading speed and graphics is absolutely vital! Finally, native apps allow for seamless monetization implementation through the straightforward integration of payment services.

Web apps, which are more commonly known as Progressive Web Apps (PWAs), are built to look and feel like native apps, but they cannot access all hardware features (like the aforementioned examples)—even though they have the advantages of being installed on any device and being faster than the other types. This platform is better suited to apps that are light on graphics and don’t require any features that aren’t available on the Web Platform. The Twitter and Slack apps are examples of popular PWAs; these apps will offer the same user experience as a native app, without the complications or cost involved in developing and maintaining such an app.

There are also hybrid apps, which are essentially a combination of the two other types: a web app “wrapped” in a native shell. A hybrid app is a good option when targeting more than one platform and may have a lower development cost and time to build than native apps. However, if your app targets any unique capabilities of either platform, achieving this would bring about development complexities.

 

iOS vs Android

When it comes to the platform discussion, the users of each platform differ: iOS users are more likely to go for paid apps, whereas Android users prefer downloading free apps and spending on in-app purchases. Developers, however, tend to favor building iOS apps—even though Android owns a larger percentage of the market—because there are fewer device models to build and test on.

Therefore, there are many things to consider before picking a platform for your app. And there is no single solution: Everything will depend largely on the immediate aim of your app (e.g. users, revenue, etc.), budget, your target market, and even the skill level of your developer/development team.

Tomorrow, we enter the world of user experience design.

 

Recommended reading

A Beginners Guide to Progressive Web Apps

Progressive Web Apps: A New Way to Deliver Amazing User Experiences on the Web

 

Recommended book

Learning Web App Development: Build Quickly with Proven JavaScript Techniques by Semmy Purewal

 

Share with friends