It used to be the case that people bought a product, used it until it wore out, and then replaced it. If it had worked well, they went back to the same manufacturer. Today, the separation of product and service means that purchase decisions are much more frequent and that ongoing loyalty is based much more on the user experience.
App performance, therefore, has a huge impact on whether consumers continue to subscribe to connected services such as Facebook or Netflix. It is also common for an end-user to access these services through a number of different devices including desktop PCs, phones, tablets, smart TVs and even in-car entertainment systems. This means the experience has to be consistent and high-quality across them all.
Each time that end-user accesses the service – they make a judgement on the provider, the app, and the device. All of which builds or erodes their sense of loyalty towards all the suppliers concerned.
A 2017 study by AppDynamics found that, for 73% of users, application performance impacts their view of the service provider. The same study found that, of the 5000 respondents surveyed, 38% were disappointed with the performance of their applications.
This should be sobering news for companies that rely on apps. Apps usually run on the customer's own hardware, so the cost of switching to a different app – and ultimately a different provider – is much lower than it used to be when apps and hardware were bundled together. As a result, the period over which a poor experience can erode customer loyalty is surprisingly short.
Hidden factors that impact app performance
Clearly, app performance is a priority – and companies understand this. Yet achieving it isn't necessarily easy. Many apps are written in HTML as Single Page Applications (SPAs), accessed seamlessly through the device's browser. This helps minimise development costs and increases platform diversity while ensuring consistency. Essentially, you don’t need to create a separate app for each platform.
Users are generally unaware their apps are written in HTML as, instead of loading the browser and entering a URL into the toolbar, the app seamlessly launches the browser each time it is run. Some operating systems, such as Android, have a built-in browser and the SPA developer can either choose to use this or to combine a different browser engine into their app during its development.
One of the drawbacks of HTML based SPAs is they generally require more processing power than native counterparts. Today's smartphones, tablets, and TVs all use multi-core silicon where a number of smaller processors are combined to deliver increased processing capabilities with minimal power consumption.
Each individual core runs a slower speed, reducing power consumption. To gain the benefits of the increased processing performance, software execution has to be evenly distributed across all the cores.
The challenge for developers is that programs designed for single-core processors aren't able to automatically benefit from the capabilities of multi-core silicon. What’s more, authoring software to run efficiently in a multi-core environment is considerably more complicated than writing single-core applications.
Whilst traditional HTML browsers – including those built into operating systems like Android and iOS – have some multithreaded capabilities, they are unable to harness the combined processing capabilities of multi-core silicon to improve SPA rendering performance.
On a typical quad-core consumer electronics processor, a traditional browser fails to benefit from nearly 75% of the available CPU performance. For service providers, this means underperforming SPAs, frustrated customers, and eroded brand value.
You might think that customers using the latest hardware would be less likely to be affected by this. The changing nature of the way processing power is delivered challenges this belief but, more importantly, customers with the latest hardware only make up a small percentage of a company’s overall customer base.
Users are unlikely to look kindly upon businesses who fail to account for the longer shelf life of products like smart TVs and withdraw their apps when the users still see the hardware as having an active life.
The choices for developers
In order to properly serve a wider customer base, developers are faced with a choice between one of the following app strategies:
- Reduce the scope of the SPAs to ensure good app performance on lower powered platforms, potentially resorting to managing multiple classes of SPAs with different functionality segregated by platform capability.
- Accept the increased development time, costs, and maintenance burden of moving to multi-core native apps.
- Find a way to make SPAs faster, more memory efficient, and able to benefit from multi-core processors so that a single codebase performs effectively across all target platforms.
Clearly, the first two strategies have significant drawbacks. The first means having to manage multiple SPAs, with all the time and complexity that brings essentially removing some of the key advantages of the SPA strategy. The second again adds considerable cost and time to the process.
Therefore, of the three strategies, the last is the most ideal. This involves moving beyond the built-in browsers within devices and adopting new technology that increases performance while still saving memory.
By completely rethinking the browser architecture and focusing upon the capabilities of consumer electronics silicon; you can utilise techniques to get the very best performance from it.
For example, our own Flow browser is typically around twice the speed of a traditional browser. It doesn’t mean rewriting your code as it is a matter of upgrading to a new browser engine, the app developer's higher level HTML doesn't require any modification.
Research underlines the importance of app performance to the long-term success of today’s connected businesses. Achieving this means re-thinking the way that browsers are designed and bringing their architecture back into line with the capabilities of modern silicon.
This lays the foundation for the future of high performance, cross-platform, app development to help ensure that frustration over poor application performance and eroded customer loyalty is a thing of the past.
Interested in hearing industry leaders discuss subjects like this? Attend the co-located IoT Tech Expo, Blockchain Expo, AI & Big Data Expo and Cyber Security & Cloud Expo World Series with upcoming events in Silicon Valley, London, and Amsterdam.