Back in the early 80’s, dumb terminal networks ruled enterprise IT. Mammoth mainframe IT infrastructures worked as centralized corporate computing platforms feeding a vast nexus of thin clients performing mundane IT operations as intended. Perhaps that was all what end-users longed for.
Present day users however, command superior application performance and functionality to quench their never-ending thirst for advanced processing capabilities. And IT service providers and software developers are delivering. Turning mobile devices into intelligent digital assistants capable of performing almost all of the regular computing tasks on the go. They even transformed dumb, manual home appliances and electronic devices into automated, interactive and ever-connected machines we now refer to as the ‘Internet of Things’ (IoT).
Geeky stuff – but all of this innovation comes at a price. We’ve heard of hackers blowing up intelligent printers to potentially set buildings on fire. Corporate IT works tirelessly to install software updates, repair or replace damaged hardware, and maintain security and compliance across thousands of desktop computers deployed in disparate workplaces. IoT and mobile app user base also demands never-ending hardware performance upgrades in response to advanced application functionalities. The need to improve on performance, functionality, security and reliability with front-end applications and thick clients continues to haunt IT service providers and software developers.
And now with the DevOps movement and culture we are expected to make software updates as soon as they are committed, and revert quickly if there is an issue. And the only way to do this is by building the best backend you can. And here is why. Only with a robust backend for your mobile applications can you:
- Perform rapid software updates and releases that DevOps demands
- Simplify and expand QA, without killing them with variations and wasted ad-hoc tests
- Break the release limitation of the app stores
- Enable cross-device support with out increasing your team by many factors
- Faster support ( or un-support ) for latest mobile OS’s and their updates
- Build a more comprehensive internal administration interface
- Respond to bugs faster
- Implement a wider and more comprehensive range of critical analytics such as APM and User Engagement Monitoring
- Software releases and updates are less dependent on end-points, and therefore not limited by device hardware specs
- End-user devices are less vulnerable to security exploits, and offer limited useful functionality for hackers even when compromised
Phew it’s a long list, long enough to make my point not even a question. And mobile application development firm who don’t remove “business logic” from their mobile applications, and invest heavy efforts on their backend will get burned. Without doing so, the quality is hard to maintain, continuous delivery is out of the question, and forget about every pivoting.
Taking a page out of the mobile gaming book. Modern mobile games have all business logic stored in their own cloud PaaS infrastructure, so that MOST game updates are pushed from there to configuration files on the device. One of the games that do this the best is League Of War, which responded to a nasty bug in 1 day, without the robust backend it would have taken a minimum of 5.
Ubiquitous innovative Web, connected IoT end-points and mobile user interfaces have fueled technology commoditization. Mobile software applications are the future of computing, but even the most functional apps with unstable back-end fail to gain traction.
Salespeople leveraging mobile apps to promise order shipments and discount quotes need real-time updates from the back-end data repositories. Executive teams relying on business analytics from anywhere in the world needs real-time access to enterprise systems. And business gamers like me, need to be able to play mobile games with the latest levels on business trips, like my recent one to Houston speaking at DevOps Camp. A strong back-end integration supporting “dumber” front-end IoT and mobile apps is a must.