Is it time to say goodbye to your old app?
According to Data AI’s Mobile App report, a staggering two million new mobile apps came onto the market in 2021. This brings the total number of Android and iOS apps ever released to 21 million.
Apple and Google phase out older apps: at the moment, there are 1.8 million apps on iOS and 3.6 million on Google Play, for a total of 5.4 million apps.
The mobile app industry is very prone to changes in fashion. As an example, the popularity of TikTok, has lead to a huge rise in demand for video-based apps.
Given the number of apps on the market, customers won’t retain bad looking, difficult to navigate or feature poor apps for any length of time. Having an old, clunky, badly designed and bug ridden app is a virtual guarantee that your clients and customers will delete it.
So what can you do to modernise your app?
HELLO, SHINY NEW APP
If you’re reading this, then the likelihood is that you have either an old app, written for versions of Android or iOS which aren’t supported on the app stores any more, or your app was written using a very old language or framework like Xamarin, Ionic, Objective-C or PhoneGap.
If you’ve got an app reliant on older versions of Android or iOS, you’re lucky, as it’s a simple job (at times) to modernise old apps written in Native code as part of a general rewrite. We’ll talk about that later.
If you chose an older development framework such as Xamarin….. unfortunately, you’ve drawn the short straw.
OLDER DEVELOPMENT FRAMEWORKS
As with everything else, technology moves on and what was the best software tool for the job a few years ago may not necessarily be the best one today. One point to note here is that some older development frameworks, such as Ionic, wane in popularity. This isn’t surprising when you consider the age of some of them.
Apache Cordova / PhoneGap - 2009
Xamarin - 2011
Ionic - 2013
As a result of this waning popularity the ecosystem that supports these frameworks through plugins and integrations diminishes, resulting in poorly-supported and outdated plugins.
In the intervening years, the software landscape has changed enormously, with the rise of e-commerce and mobile apps, and the decline of desktop browsers. Ionic and Xamarin have gone through various changes to try and serve a changing market, and the result is that both have become very confused, contrary and contain lots of legacy code - perhaps not to the point of becoming unworkable, but certainly to the point of becoming difficult and frustrating to use for most developers.
If your app is written using an older framework… seriously consider having a complete rewrite. Yes, you can prolong the life of your app by having a developer “refactor” it, but this can be really like cutting the bits out of a rotten apple. But what if the whole apple is rotten?
Sometimes, it’s easier and cheaper to start with a fresh new build, without the technical debt and subsequent bug hunts that get depressingly more commonplace as software ages.
There’s some debate about whether Xamarin and Ionic are dead, or just moribund. We have a couple of blog articles on the state of affairs for both frameworks here and here. It’s not comfortable reading.
WHERE HAVE ALL THE DEVELOPERS GONE ?
As we mention in blog articles from 2021 and 2022, it’s very difficult to find cheap and reliable developers nowadays. There’s a world shortage of trained programmers, and the trend is likely to continue for some time.
The mobile app industry is going through a period of change, with older tools dying off and newer ones emerging in a process of natural evolution. As a result, you may find that your old app is written using tools which no developer wants to get involved with any more.
As market demand decreases for more difficult to use software which contains masses of technical debt, developers vote with their feet and instead skill-up on modern, supported, easy to use frameworks such as Google’s Flutter or React Native.
The result is that it might be very, very difficult to find a Xamarin or Ionic developer to keep your old app alive.
OLDER NATIVE APP SUPPORT
If your app is written for an older version of Native iOS or Android, you can probably avoid a complete rewrite.
Please note that that’s “probably” above. There are quite a number of technical factors here, and it’s well worth having a developer review your code to estimate what needs to be done. This can be a relatively simple job with straightforward apps.
Your developer will probably look at modernising the UI of the app - the user interface. That’s usually not so big a deal, if your app is workable but looking dated. Next, he’ll consider the architecture of the app - what connects to what and how - what APIs are used - these are programming interfaces to integrate other functionality, such as payment providers. Do any of these need serious change or modification? Have better candidates come along in the intervening years?
Other considerations your developer will make is whether or not the app can be easily future-proofed. Is there much point rewriting an app which uses an obsolete framework, such as Xamarin, above? Can the code be easily ported over from one framework to another more modern one?
What any good developer will do is determine whether or not an app is cost efficient to refactor.
THE ARGUMENT FOR A COMPLETE REWRITE
If the argument against a total app rewrite is “it costs a lot of money”, then the argument for a total rewrite is….. it costs you a lot of money not to have your app rewritten, in terms of lost business.
Refactoring your app may be a cheaper alternative, and if you’re using Native iOS or Android, it can be a way of inexpensively extending the life of your existing app. However, refactoring can tidy up an app but inevitably, your code will only get more convoluted, the bug hunts will take longer, everything gets more messy.
If the bad news is that using an old and moribund frameworks for your app pushes you towards a complete rewrite, it might not be as expensive as you thought.
Using modern cross-platform development using Google’s Flutter produces an Android and iOS app, as well as a web app - all using the same codebase - for about 50% of the price of traditional native app development. You end up with an attractive, high performance and future proof app with none of the usual support and maintenance issues.
Want more information about app refactoring or rewrites? We’re happy to help. Click on the button below for an informal chat with us.