DEV Community

Monty Harper
Monty Harper

Posted on

What Good Is a Mobile App?

Serious question...

What tasks are mobile apps uniquely good at accomplishing? Why would an organization turn to building a mobile app rather than using a desktop application, email, or web-based application? What can a mobile app do well that nothing else can?

This is an important question for anyone trying to sell a potential client on the need for a mobile app, or for anyone who wants to design an app people will download - an in-demand app should include features people can't get elsewhere.

So what needs can only be satisfied with the creation of a mobile app?

Please post your thoughts! Thanks!

Top comments (4)

danielrendox profile image
Daniel Rendox

When it comes to this question, one common point people usually bring up is utilizing native features. However, don't forget about UI/UX: achieving a smooth, fast, and edge-to-edge user interface isn't possible with a mobile version of a website. Another significant aspect is an offline-first mode. If you create a web to-do app, users will need constant internet access. In contrast, a mobile app allows storing data locally in a database and synchronizing it with the server once the app goes online again.

However when talking about native development for each platform, the situation is quite different. Cross-platform tools like Flutter and React Native enable most of those features. And if I'm not mistaken you actually can access camera or set up push notifications with those tools. I discovered that the only three main reasons to develop separate apps for each platform are:

  1. You need a completely native look across all platforms or want specific app functionality like controlling device theme settings, adding custom shortcuts to the notifications panel, closing/opening apps at specific times, and so on, then native development is necessary.
  2. You're a company with separate teams of iOS and Android developers. In this case, it doesn't make financial sense to hire new staff who specialize in different technologies. And then as a bonus, companies can also benefit from things like improved performance.
  3. Or you just need to support apps that are already written natively.

But the matter is in most other cases cross-platform development is quite popular among startups. As technology advances, the gap between native and cross-platform development is gradually narrowing.

I'm not one of those people who go panic about things like something will be gone or AI will replace developers but at the same time I acknowledge the facts and believe that native development skills will eventually become less relevant.

Thanks for an interesting topic, Monty! I suggest adding a #discuss tag to your post.

montyharper profile image
Monty Harper

Hi Daniel, thanks for your thoughtful reply, and for the tag suggestion - I'll do that!

montyharper profile image
Monty Harper

I'll kick off the comments with the obvious - allowing the user to utilize the hardware tools on their device. For example, only a mobile app could extend the functionality of the camera on your phone. Only a mobile app would allow you to take a photo on the go and drop it directly into a database record.

grault profile image

Honestly that's pretty much it. Offline availability is shared by web apps using local storage. I'm unfamiliar with the limitations on local storage, so maybe more space can be had on the phone itself.

Software stability. The web's technology is chaotic, particularly on the browser. As a developer, if you don't like JavaScript then the grass may look greener closer to the metal. As a customer, this situation may not be apparent because developers are paid to solve the problems that result.

Native look&feel? If nothing else, the browser UI makes a web page feel more foreign, but that could be due to me understanding the difference between the platforms.