Leveraging low-code to create enterprise progressive web apps — your questions answered
When the Apple App Store launched in 2008, alongside the iPhone 2, the way that business applications would reach users changed forever. Steve Jobs’ original vision was that apps would be created quickly and easily in HTML5, using largely existent coding practices and methods.
As it turned out, that approach didn’t last long; Apple instead quickly moved to centralize the app “experience” on the App Store, so mobile-native application development became the de factostandard. Developers would code in Objective-C for the iOS platform, or for Android using Java or Kotlin in the Android SDK.
For several years, mobile app development was a niche development area, requiring some specialization to jump through the different hoops required on either platform. Even large enterprise development teams to this day continue to outsource their mobile app variants’ development because the dedicated resources needed to deploy to the multiple hardware variations (to pick just one of the hurdles that need jumping) are considered too great.
Lately that situation has changed, thanks primarily to Google, with the concept of Progressive Web Applications (PWAs), which have begun to turn the tide back to a web-based development methodology that’s capable of utilizing the majority of a typical mobile platform’s hardware. The promise of PWAs is alluring: a web application, with service workers and a manifest, will run on any compatible mobile platform and give the user the same, rich experience they would get from a “traditional” app. And it goes without saying that web users too getthe same experience . So, for the developer, the write-one, deploy-everywhere dream gets a step closer.
The devilish details
The significant phrase in the paragraph above is “a step closer”. It’s important to be aware that although PWAs do partially fill the gap between a pure-play mobile app and a web application, the amount of work required to publish a mobile app in this way remains significant. There are still the issues of a required manifest and service worker(s) (see below), and there are intricacies in user interface design for mobile platforms. Suffice to say that web developers won’t be replacing their colleagues who spend each day up to their necks in Swift or the Android SDK — just yet.
The advantages of PWAs are worth touching on, however: access to a mobile’s camera, microphone, USB, beacon technology, cryptography, and Bluetooth are all available, as is geolocation. Photos and barcodes can be scanned using a phone or tablet’s hardware, plus thanks to WebRTC, media streaming and video conferencing are all possible without having to perform developmental gymnastics.
Most PWAs comprise HTML, CSS, JSON, and JS, which can be manipulated and formulated using a favored toolset, tested on mobile and desktop, and pushed directly to users — there’s no need to go through the official app stores on any platform, and even in-app payments handled. The web-based nature of the typical client-server PWA model also means that apps can be “discovered” by SEO, like any web asset. So far, so good.
The low-code advantage
In many ways, low-code development environments make the perfect complement to progressive web applications. The most recent version of Visual LANSA is particularly suited in this context, for example, engineered as it is with PWA creation specifically in mind. The drag-and-drop basis of GUI creation means that beautiful customer experiences get created quickly and easily, with guidelines like Google’s Material Design outlines adhered to automatically. Furthermore, with a comprehensive set of data protection measures and practices behind LANSA, adherence to governance is part of the process.
Applications created or aided by the LANSA platform are iterable, so progressive enhancements can be applied in line with existing DevOps practices. Pull requests, and the whole git/repository model is inherent in the LANSA environment. Web-based applications can evolve, with updates, alterations and new features immediately present on mobile and desktop.
It’s worth mentioning that there is a significant advantage to PWAs, which many consider being a critical part of any app made available in this way: that of being mobile-first with regards offline use. Clever cache-ing and service-workersmean that low-speed connections and even offline use are handled behind the scenes. Pages or assets required will have been predetermined and tested in the developers’ IDEs (integrated development environments), so every use-case and environment gives the same customer experience. The Visual LANSA solution helps developers create service workers (and the manifest — more on this below) in the same environment as the rest of the application, so enterprises can create perfect apps without sidetracking to consider the details of individual service workers, like the high-end cryptography available on today’s smartphones.
The platform is ideal for both enterprise level internal and customer-facing apps that look, feel, and behave the same regardless of phone manufacturer, operating system, desktop, or mobile. Highly complex applications can be easily created, tested, published, and iterated on, because Visual LANSA is built for universality, ease of use, and as a powerful complement for any developer’s abilities and expertise.
Rather than dedicate resources to a specialist mobile app-development function, teams can leverage Visual LANSA to present enterprise-grade mobile apps that scale like any web application. The platform handles the necessary manifest element, too (icons, descriptions, color schemes, and other detailing), to get beautiful apps presented and published to audiences of any size or type.
Be on the lookout for news from LANSA about the latest version of its low-code offering (why not go for a free trial to see for yourself, today?). The rumors we’ve gleaned about the impending upgrade make the Visual LANSA platform a tantalizing prospect for PWA creation, and low-code development in general. Watch this space.
27 November 2020
27 November 2020
27 November 2020