A sensible tech stack for apps

When what makes sense where and why :-)

The first cut: games

There’s many kinds of types of apps. The type of app makes the first big cut.

Applications

Now that we have the game argument out of the way, let’s focus on applications. Let’s focus from the perspective of ‘who you are’, rather than ‘what or why you make something’.

I am an Android or IOS developer

Cool! You are probably able to quickly develop on your platform knowing the ins and outs of that platform very well! I assume you’ll stick to that platform and try to make it there. That’s awesome! It makes sense you stick with what you know here. Build your app natively!

I am an owner of a startup

Hard spot to be at to make a decision! I’d say go with who you trust and have around you in this adventure. If you work closely with Android or IOS developers, it makes a lot of sense to go that route. However, take the risk of the developer leaving into account. It’s hard for a one-man-army to take over the work of another one-man’s-army. Consider if you need to go multi platform. But keep reading, because there are some benefits to already consider doing things differently.

I have a running company in bricks; no website

Sure there are some edge cases which justify app development here, but most of the time it makes sense to first spread information over standard platforms like social media, then start developing a (small) website to provide information to your customers when branding is key, or when you have a concept that requires more client interaction than social can provide. Start there. The App route sounds nice, but it’s way more costly, complex and harder to maintain that you might assume.

I have a running company, and I’ve bought a website

That’s amazing! In case your core business isn’t online, and you don’t have the budget to make a competitive edge online, it makes sense to leave it that way. Still interested in publishing an app to firm your branding? This is the spot where you could consider stretching the wallet. Since acquisition of good developers is super-duper-hard, buying a solution makes sense again. It allows you to explore the area whilst remaining able to pull the moneyplug when it suits your needs. You can hire people temporarily from a consultancy firm, so you can sit with them, iterate over your ideas and still build it within your walls. You can also choose to work out as much details as you possibly can and buy the app as it was developed behind closed doors. You should care less how they develop it, but remain vigilant you aren’t billed for double the cost if you want to roll out on both platforms. Xamarin could in example perfectly serve your needs, since you don’t require a web counterpart.

I have a running company, and I’m creating my website in-house

Now this is where I spend a lot of my time.

Okay, so web tech, but WHICH web tech.

There are so many!! React native? Vue native? Cordova? Ionic? Will you leverage a design system?

Strong branding, strive to be competed against

When you intend to do strong branding whilst being strongly omnichannel, you might want to delve in to creating your own design framework, the advice would then be

  • Take your framework of choice (in my case Vue)
  • Take a renderer and bundler (e.g. Nuxt.js)
  • Build as a SPA, or hybrid where needed
  • Embed in Cordova with the required tooling to setup icons, naming conventions, splash screens and those kinds of things.
  • Leverage plugins to interact with JavaScript, but have fallback scenarios implemented (should have those anyhow in case the user prohibits access to these features by rights).
  • For the rare case you actually need a plugin that doesn’t exist, simply create it!
  • For completeness, enable the PWA plugin for mobile web ;-) . I firmly believe that PWA will become the future of app development. It just makes sense from a technical perspective. Perhaps not from a monetisation point of view from the app stores, but I remain hopeful :-).

Counter arguments

One of the major counter arguments I hear a lot is ‘yeah but web tech doesn’t feel like an app’. I call nonsense on that. If you check the Vuetify framework in example, you should be able to call nonsense on that as well.

Conclusion

All of the aforementioned counter arguments are valid in specific situations as mentioned before. And there are definitely scenarios in which native app development makes sense (as the majority of this document covers), but there are clear scenarios in which it doesn’t and going the web-tech route will increase velocity, reduce cost and will make up for a more homogenous / omnichannel experience cross device / platform.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store