You could be losing the race! Check your codebase
In this small series I try to make you think about the state of your mobile app. How healthy is it? And assuming you want to win the race, what can you do to make sure you don’t crash? Let's start by focussing on the technical element today, the codebase.
Mileage - Is your codebase still current?
Hitting the road. Making the miles. Your car is on the road and it drives, but you might've started noticing that you've spent an awful lot of time at service stations. It didn’t use to be like this. What’s wrong with the mileage? The codebase of your app is like the engine of your car. If it’s not looked after, you can bet your clock on it that you will run into maintenance issues for sure. An out of date codebase increases the risk that part of it will fail at some point, because it is no longer supported. Or that you can’t upgrade certain libraries because of certain dependencies. It all hangs together. And although I’m definitely not saying that you should roll through every update out there (promise you don’t, sometimes it is better to wait a bit), there are definitely some areas you want to keep updated to keep your app not only ‘on the road’ but also ‘in the race’.
- Future proof (e.g. security)
- Less maintenance (e.g. easier to build)
- Being able to use new features (e.g. biometrics, Apple/Google pay)
- Less risk of losing knowledge
For example, the programming language of the Apple version of your app, is that still in Objective-C or have you secured it, and is it already in Swift? Not as pressing as on iOS, but don’t wait too long before moving your Android code to Kotlin as well. And which OS versions of the systems are you using? Did you make it yet to iOS 13 and Android X or do you have good reasons not to upgrade? Up to date codebases are not only good for the security, resolve critical bug fixes, but are also more future proof. Just realise, with these (major) updates, Google and Apple have devoted more resources to ensure they’re on top of things to keep your app functioning. Why would you not want to make use of that? It will also enable you to make use of the latest features and make them work smoothly. For all of us who don’t like -unnecessary risks, updating to a new code base decreases the value of knowing the historical technical background as you basically get a clean slate again. Plus over time, the support of weaker crypto algorithms will get deprecated. And finally, important to ask yourself how much you are actually making use of the huge range of native experiences that these systems provide you with? Biometrics, camera, recorder, and other in app experiences? And also, with technical developments going this fast, when was the last time you checked this?