What Should Be The First Platform For My App

This discussion is more about prioritizing the first platform that you choose, as each platform brings its own challenges and benefits.


12 December 2020

In a previous post we just got done talking about knowing why it is you want to make an app. That information is key to this discussion. So if you haven't already read that post, jump on over to it and then be sure to come back.

This discussion is more about prioritizing the first platform that you choose, as each platform brings its own challenges and benefits.

As a road map to this discussion, let's just lay down a few thoughts here:

  1. Let's discuss software ecosystem
  2. There are 3 main platforms for consumer apps
    1. Web
    2. iOS
    3. Android
  3. Why are these platforms so important (hint: they are easy for consumers to access/install)
  4. Desktop apps for internal software
  5. Which platform to pick first (based upon your priorities)

Software Ecosystem

In the grand scheme of things, computers are still very new. However, they've been around, in some form or another, longer than a lot of people think. This is a discussion of some of the earliest computer like devices, that most of us would recognize as computers, used during World War 2.

But when you look at us today, the majority of us are walking around with powerful computers in our backpacks.

What once was as a company employing a group of programmers to feed programs on punch cards into a mainframe computer, has now become an industry full of developers and devices to target.

It is your challenge then, to understand how to navigate the industry and make the best choice possible for the app that you want to develop. There isn't a one size fits all to this problem. Like many things in life it is all about priorities and trade-offs. Lets get started on some things to consider when it comes to those trade-offs.

The big 3 platforms

Now days there are the 3 big platforms that you should consider in your application development journey. I understand that you'd like to have your app on all 3 of the platforms, which is the ideal situation for any app. However, developer time and money can both be scarce at the start of any project.

Web Applications

The familiar web application, most of us have used them and multiple times per day. If you're familiar with Facebook or Netflix (in your browser of course), then you've used web applications. These are characterized by rich UIs (User Interfaces), with a lot of complex work going on behind the scenes, to bring you a clean user experience. These are so much more than simple static web pages. Data can be collected, information computed, user interaction, all of these things and more can be done with a web application.

These are popular for early stage and/or bootstrapped startups. They are so popular because they give you a lot of reach for one application being built.

When built correctly, with responsive design foremost in the design process, you get a user interface that works nicely on mobile devices all the way up to 4K monitors. You then, get the benefit of one codebase and development effort to expand to so many different devices.

Developers are abundant for web applications. Depending on how much of your project you understand an can direct, the developers can be quite affordable. However, to find a developer that is well versed in programming custom functionality, and skilled enough to drive the project, can become more costly.

With the ease at which users can access your application on the web, as well as your ability to control the versions of software made available the web platform makes a fantastic choice for first platform.

But, are there some things about going web first that might not be so great?

iOS and Android

For now, I'm going to group iOS and Android together, as they represent the other two big platforms to target. They have so many similarities in how they work, but one big difference is the technologies used to develop for them, so they are two distinct platforms in the end.

There are a couple main instances in my mind that would make it better to target a mobile platform instead of the web.

  1. You need to integrate more fully with the environment and hardware.
  2. You have limited network connectivity with where you're taking the application.

I don't know about you, but I always look for a native application when I really want to use an app. I want a nice launcher in my app drawer, with a quick and battery efficient experience while using the application.

Native applications do provide those things and more to your users. The design language of the application will help them feel more at home while they're using your app. Because, you will ensure during the development process, that common design practices will be followed.

System resources can be more fine tuned, and used more carefully to help your users batteries and data plans last longer. This will give you a better reputation in the reviews.

Users are already familiar with how to find and install your application (as compared to desktop software, which will be in another section bellow).

So far, the story for mobile apps has been the same. But the time has come to diverge a little bit. Although there are platforms out there for writing apps that work on both iOS and android all of my developer friends that I've talked with that have worked on them, have all migrated away from them. They just don't provide enough of the native benefits from above to make them much better than a web application (for those purposes of course).

iOS

Here are a couple of good reasons that I could think of to target iOS first. Truth be told I'm not an iOS user, so I'd always recommend an android app first (but that is just me, I'm not sure what your needs are right now).

  • Target audience is generally on iOS
    • Hard to say more about this. If your users are iOS users, better get your app to them.
  • Paid apps almost always do better on iOS.
    • If you're looking to make a consumer app, and you want it to generate revenue for you, iOS is the best target. Historically, for some reason the android users just don't pay for apps as much as iOS users.
  • Looking for market cachet
    • There seems to be much more prestige or gravitas that comes when you release an iOS app.

Android

Android represents a different market breakdown than iOS. Because of this, you have a different opportunity to get to a different set of users.

  • Target audience is generally on android
    • Again, hard to say much more about this. If your users are android users, better get your app to them.
  • Reach large groups of varied geography/demographics
    • Android, due to its nature, is able to reach a more diverse demographic. So if you need to get our app out and in front of a more diverse crowd, then android is your option.
  • Make for an easier method of deployments (perhaps only for now)
    • Android makes it much easier to develop apps for internal groups. The developer builds the apk (we'll go over this in the jargon section later, but it is the file that gets distributed to android devices to be installed) and sends it to the user, and they install it. Easy peasy. But this might be changing with Google's behest; hard to say for now.

Desktop Software

I know what you're thinking, desktop software is a relic of the past. With the benefits of web and mobile applications, specifically with regards to getting the software into users hands, there really isn't a need to be making desktop software any more.

And you know what, I'd probably say that you're right, at least for general consumer software. But what if the reason you're needing an app built is to help your business run more efficiently? Then just maybe, desktop software is the right fit.

The desktop challenge

Just like mobile has two platforms to target, desktop software is plagued by the same problem. How about windows, apple, and to through my daily driver OS into the mix Linux. This is one of the reasons it doesn't really make sense to target desktop for you consumer app. But, if you're making an app to help with business, you'll know what platforms you can and will support.

Not all decisions are 100%

Hopefully you've got an idea of the platforms out there. But, not all decisions are 100%. Generally speaking, I'd recommend a web app for your M.V.P. (jargon alert, we'll talk about this later too, but it is your first attempt at building your app).

You may find yourself in the situation where you really need the main 3 platforms targeted, if so, be prepared for a bigger development budget.

So, stay tuned for some case studies on different reasons to make an app.

Author


Kendell Fabricius

I've been developing apps in one form or another for over 10 years now. From web to mobile apps, small agencies to large enterprises. I have the experience to help you in your journey.