Don’t Let Your Business Go Down When The Internet Does
If your organization uses web-hosted programs to support mission critical functionalities such as payments processing, field inventory assessment, or customer relationship management (CRM), then you’ll need to ensure that connectivity doesn’t get in the way of your organization’s success.
This is particularly true for companies whose field worker operations routinely take them to places where mobile connectivity is not only poor but either intermittent or not available at all.
Many companies use Progressive Web Apps (PWAs) for this purpose: software programs that look like native built software but are really frontend containers for web applications that sync data with cloud-hosted or local servers. Just as would be the case if the app was deployed on a smartphone, no connection means no data exchange.
Consider, for example, power line workers who need to assess the state of infrastructure following storm damage in an area not serviced by 3G or 4G. In fact even some national parks in California, just a few hundred kilometers from Appstem HQ, do not have reliable cell coverage.
Lost connectivity can result in delays as colleagues are unable to receive the information they have captured until it is transmitted. It is therefore critical that PWAs enable as many features as possible to continue operating while connectivity is lost. From a technical standpoint, this includes features such as using cached data from the most recent network update as well as staging user changes locally for “pushing” to the server once connectivity is restored. From the user’s perspective, this enables the application to deal with intermittent or non-connectivity seamlessly and gracefully.
Offline Access Is Vital For PWAs
Appstem has deep experience addressing this very need — building Progressive Web Apps (PWAs) that function across multiple operating systems for clients that need to ensure continuous data capture and storage irrespective of current network conditions. In marketing materials, this is commonly referred to as “offline” mode or “offline functionality.” With more than 6% of Americans still unable to find a 4G connection at any given time, but field-deployed and mobile technology use on the rise, this remains an important consideration for those looking to roll out apps to support mission critical functions.
At Appstem, we address this challenge from a technical standpoint. And in practice, achieving this involves a few moving parts.
- Offline-optimized databases: Apps, including PWAs, use databases to store user data and sync it up to the cloud from local storage. But these databases vary by architecture and functionality and some are optimized to expect a continuous data connection to be available. WatermelonDB, by contrast, is an “offline first” database with SQLite under the hood that is designed to work exactly this way. The database is stored locally rather than on the cloud and includes sync adapters to push data to various types of remote sources the very moment a connection becomes available. It is also designed to function as a “lazy” database— only serving information to the frontend when needed. This results in quicker query resolution and therefore syncing. The database only serves the required information to the application on an as-needed basis, preventing lengthy downloads of company-wide data from cloud servers from bottle-necking other usages.
- Providing Multiple Connectivity Options: Relaying information to the cloud from laptops or smartphone devices can be achieved through several means. Most basically, WiFi or mobile connectivity can sync up data over the internet. Alternatively, apps can use Bluetooth to push information to another device in close physical proximity which might have access to a different network. Finally, devices can be tethered together in mesh networks with only the final device having a connection to the internet but handling syncing for every connected device on the network.
The Cost of Being Disconnected
Another key requirement of mission-critical apps is the ability to sync data quickly once an uplink becomes available to the device. This is important because being disconnected can have tangible impacts on business.
This includes:
- Reputation damage: Consider an app that a field customer service agent (CSA) uses to poll a customer about their satisfaction with the service provided. A PWA would allow the CSA to record customer information whether the connection at their premises (or doorstep) was stable or non-existence. However, if the app was not built offline-first like PWAs and required a live and constant uplink to the cloud, then the data simply could not be recorded. If the customer was impressed by the company using a laptop to gather their feedback, they will not be if the data never makes it back home.
- Lost business: Likewise, companies could lose business if they are reliant upon mission critical apps that are not optimized for operation in low or sporadic connectivity environments.
- Technical drawbacks: Offline-capable apps allow developers to better control the data pipeline to the cloud, reducing traffic load to unessential parts of the service.
Case Studies: Some Successful Appstem Projects
Appstem has implemented a number of projects for clients that successfully leveraged offline support to allow clients to develop mission critical PWAs while guaranteeing that information captured offline would later be synced to central resources, including cloud-based and on-premises servers. These also adhered to the highest standards in web design and website development.
These projects included:
- A project for a San Francisco-based startup that used WatermelonDB to cache its data locally and sync when a connection became available. User experience increased significantly as a result.
- A real time polling system which was designed to work in areas without mobile connectivity or WiFi. Appstem used the Swift, Go, and React frameworks to build an app that met PWA standards.
- A Mac app that was able to support HLS video streams for dozens of systems via a peer to peer network. The P2P network connection was strong enough to support real time video display and feedback.
In many cases, Appstem has developed several apps for clients who have in turn provided them to field workers. This allowed them to carry a “toolbox” of business systems on their laptops that would sync information as soon as an internet connection became available.
Ensure Your Data Makes It Home
Offline functionality is a basic requirement for any mission critical app, whether it’s developed as a Progressive Web App or built using native mobile technology. Appstem has deep experience leveraging specific database and syncing functionalities to guarantee that field-acquired data will not get lost in transit — and will sync up the moment a connection becomes available.
If you have any questions or need help building or improving your web app reach out to us by visiting appstem.com