Do you remember the last time you downloaded a brand new mobile app? What about vs the last time you visited a website? Is Safari/Chrome the app that you spend most of your time on your mobile phone?
As the digital landscape continually evolves, the spotlight is now firmly on web-based applications, signaling a dramatic shift in the nexus of software utilities and accessibility. While the pivot towards web technologies embodies a transformative phase, it is also met with apprehensions, often grounded in historical issues or misconceived notions. In this piece, I talk about why software teams should think about using default web as the means for building the next software application.
Accessibility
Web-based applications have carved out a niche for themselves, offering unparalleled speed and accessibility. Bypassing the need for installations and downloads, they facilitate instant updates, a paradigm where the latest features are just a refresh away. This approach nullifies the limitations of storage resources, offering a streamlined experience to users.
Versatility
An embodiment of versatility, web applications triumph with cross-platform compatibility, dismissing the constraints imposed by native ecosystems. This flexibility extends to development processes as well, fostering a landscape where developers focus on creating one responsive application adaptable across environments using a plethora of languages. Gone are the days that companies have to decide which OS to target and which type of software developers to hire to write native applications.
Powerful
Web technologies such as WebAssembly, WebGPU, and WebSockets have brought web applications at par with native apps, leveraging near-native performance and high-quality graphics, further empowered by real-time communication frameworks. In fact, many software that were previously written for the native stack with heterogeneous codebase can be cross-compiled/rewritten to web constructs that offer equal capabilities and similar performance.
Collaborative
Pioneering collaborative efforts, platforms like Google Docs, Canva and Figma are changing the game, fostering real-time collaboration, and nurturing a cohesive global workspace, thereby leveraging the capabilities of web technologies to an unprecedented scale.
Counterpoints to Web Development
Despite the stride in web technologies, there exists a faction apprehensive about fully embracing it, often citing concerns that were historically relevant but have been substantially mitigated in the contemporary digital ecosystem.
Security Concerns
Historically, web applications were seen as more vulnerable to security breaches compared to native apps. However, with modern development practices (CI/CD) and robust security protocols (HTTPS) integrated into the web stack, this gap has been significantly narrowed. The centralized update mechanism ensures uniform security patches, providing a formidable defense against cyber threats. One outstanding threat that still does exist is IP concerns over code theft. However, with obfuscation and the advent of WebAssembly, frontend code can be minified or compiled into machine code that makes it very difficult to reverse-engineer.
Performance Limitations
A common argument hinges on the perceived performance limitations of web applications when compared to native applications. While this is true in certain cases as the application runs inside the browser environment that adds additional overhead in compute and memory utilizations, with the advent of WebAssembly and WebGPU, which facilitate near-native performance for certain tasks like rendering, graphics, and memory management, bridging the historical performance gap and promising users a seamless experience.
Limited Offline Capabilities
The critique of web applications for limited offline capabilities holds lesser ground today, thanks to Progressive Web Apps (PWAs) that offer offline functionalities alongside features typically reserved for native apps, such as push notifications and hardware access.
Integration and Compatibility Issues
Even a few years back, web applications faced hurdles with integration and compatibility, often not working seamlessly across all browsers (with Internet Explorer being the worst offender) or platforms. However, with MDN Web Docs, modern web technologies advocate for responsive design and standardization, ensuring a harmonious operation across diverse platforms, negating compatibility issues that were once a significant concern. Even Microsoft Edge is based on Chromium, which powers Google Chrome, Opera, and a plethora of other browsers.
Dependence on Internet Connectivity
While web apps historically required robust internet connectivity, advancements like Service Workers allow for caching of app resources, ensuring usability even in low connectivity scenarios, thereby substantially reducing the dependency on uninterrupted internet connectivity. Did you know Google Docs work completely offline?
Finally,
As we traverse a path marked by rapid digital transformations, it is unequivocal that web-based applications stand tall as the beacon leading us into a future grounded on seamless accessibility, interoperability, and collaborativity. Through a meticulous understanding and leveraging of modern web technologies, we find that many traditional counterpoints lose their ground, painting a future where the web stack emerges as a robust, reliable, and inevitable choice for professional software development. It delineates a narrative where the next professional software application you engage with is not just likely but sensibly housed in a web browser, transcending the limitations historically associated with native and mobile applications.
Derek Yan
Cofounder and CTO, Polarr, Inc.