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:
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.
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.
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?
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.
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).
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).
Android represents a different market breakdown than iOS. Because of this, you have a different opportunity to get to a different set of users.
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.
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.
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.