(As covered in APM Digest on May 23, 2019.)
The first word in APM technology is "Application" ... yet for mobile, apps are entirely different. The paradigm for mobile is not remotely the same as for a server or a web-browser.
As the mobile app ecosystem is evolving and expanding from pure entertainment, such as gaming and social messaging, to more utilitarian uses, like ride sharing, payments, IoT in the home and more, there's a rising need for the next generation of APM technology to stay ahead of the issues that can cause apps to fail.
APM software has been around for a long time handling server and browser-based applications, but lest we forget, it's still relatively new for mobile. Applying the same methodologies of agent-based software that works so well on a server does not make sense when each phone runs an app on different hardware and entirely different conditions (connectivity, battery, other apps running, driving … ).
For mobile, the most common cited causes of friction are technical issues that users have within an app, whether that means crashes, freezes (like an endless spinner) or some combination of those that prevent users from taking actions in-app.
Not only is mobile in-and-of-itself disrupting APM, but the mobile ecosystem is evolving hyper fast with the emergence of new technologies, such as multi-tenant cloud storage, 5G, and the next generation of smartphones.
The following is an overview of the emerging technologies that are impacting mobile apps significantly over the next several years:
Server architecture and web-browsers over time have become very mature and, thus, standardized. An error on one server for which an APM is built to catch is probably going to occur the same way elsewhere. An error in Chrome or Safari is probably not going to be different because of the PC on which it's running. APM reflects the fact that error tracking is about discovering a known set of errors, counting them, and when applicable, providing snapshots and traces of the environment at the time of error.
Mobile phones reflect a real person and their very specific uses. I may walk my dog and have two games, Facebook and a retail app running all at the same time. The fact of mobile is there is no standardization. APM is disrupted by mobile because there are no known set of errors but instead a set of frustrated users with unique environments. APM solutions need to think ‘bottom-up' and track each experience to automatically identify and detect errors.
Now expand the variables — since each mobile device runs the app's code, third-party libraries and APIs add a layer of complexity because they do not route through your servers but instead begin and end in your users' hands.
To provide more value in this mobile application environment, we need to be able to collect all this data and distill into actionable insights. This means rethinking and redesigning APM platforms for an entirely different mobile stack.
2. PROLIFERATION OF 5G
A great limiter to a lag-free and richer mobile experience is the size of the "pipeline." On the server-side, bandwidth and throughput are known commodities and taken for granted by APMs. In mobile, the pipe through which we send data is constantly changing. (We have all had 4-bars, but our apps have ground to a halt. Recall that concert or parking lot experience.) In addition, the multitude of apps running on a phone (as well as the Apple and Google OS) compete for this limited commodity.
As 5G technology becomes prevalent in the next several years, the size of the pipeline for data to come through will be greater and higher speeds will ultimately affect the mobile app experience. We'll have the lag-free bandwidth necessary for ultra-high definition video, interactivity and connectivity needed to stream video content from apps via smartphones. We'll also gain lower frame rate limitations for smoother viewing experience (increasing more opportunity for VR as well). Further, more than just mobile screens, internet-connected devices, in the world of IoT, will become more interlinked than ever before. In other words, mobile apps will become more complex and APMs will have to follow suit.
3. CLOUD AND EDGE COMPUTING
Mobile puts a powerful computer in your pocket, on your wrist, in your car, and right in front of your eyes. Everything is migrating to the cloud, including mobile apps data. APM didn't even use cloud technologies before, now we have multi-tenant, distributed data storage that has changed the paradigm of cost structures, processing and storage. In this new world of cloud storage, data can be captured, calculated and distributed to the end user in near real time.
Traditional APM companies have already had a difficult time transitioning to a containerized computing world. (The most well-known APM companies are still struggling to even update pricing models to reflect a server-less world.) With mobile and edge computing, the computing will only shift farther outward and become more distributed. APM companies that focus on specific servers, processors, and even containers will again need to shift their business models and technologies.
4. A NEW GENERATION OF SMARTPHONES
In the next year, we have heard the rumors: foldable phones, Apple and Google doubling down on the most advanced chipsets ever, and amazing screen resolutions. Manufacturers of mobile devices are finally innovating again. Not to mention, the exponential trends towards expanding the storage space and memory. Thus, PCs and servers will become less prevalent as mobile devices become even easier to use and take steps towards a frictionless experience whether purchasing items, requesting a dog walker or using your phone instead of a credit card. APM models will be disrupted by the very fact that web-browsers will decline in use.
Mobile is disrupting how developers should think about APM technology, and 5G is coming in a big way for all industries. When we have unlimited bandwidth, we're going to see change in many ways from typical mobile engagement of users with streaming apps, and moving into much bigger changes with interactive and shared media experiences through IoT, AR and VR.
The challenge will be to ensure that the experiences are unobtrusive as opposed to annoying and disruptive to users. APM technology must radically change to meet the requirements of this new entirely mobile, streaming, 5G-enabled world. It's time for developers to start thinking differently about how we solve the next big challenges in application performance through the next generation of platform technology.