The Realities of Developing Successful Progressive Web Apps (PWAs) in 2023

Progressive Web Apps (PWAs) have been touted as the future of web applications, offering the best of both web and native app experiences. Ideally, they combine the rich functionality and offline capabilities of native apps with the reach and accessibility of web apps. However, the real-world journey to launching a successful PWA is fraught with challenges, particularly when dealing with various platforms’ idiosyncrasies, most notably Apple’s ecosystem. This article delves into the practicalities of creating a lucrative PWA, dissecting both developer experiences and best practices for navigating this technology landscape in 2023.

The foundation of any successful software product, whether it’s a PWA or a native app, remains firmly rooted in addressing *customer needs*. Brylie commented rightly that developers should start with the problem at hand rather than the technology. Before diving into the intricacies of PWA development, defining the product’s core purpose and target audience is crucial. Whether that solution is best served through a PWA or another medium like a native app or even a hardware device should be a data-driven decision. A frequent pitfall for second-time founders, as pedalpete observed, is an overreliance on product-building at the expense of distribution. *First-time founders build the product, second-time founders focus on distribution*โ€”this adage rings especially true in the world of PWAs, where discoverability and usability hurdles need careful navigation.

One of the most glaring issues with PWAs, particularly on iOS, is Apple’s handling of local data storage. Several developers have reported that Apple randomly erases local data, including cookies, localStorage, and even push subscription tokens. Despite Apple’s assertions that these actions occur only under certain conditions like disk pressure, the frequency and unpredictability of data wipes point to deeper issues. For example, throwaway9143 noted a year-long struggle with this problem across thousands of customers, which was eventually traced back to iOS devices erasing all local data without warning. Throwaway9143 even suggested that Apple is purposefully making PWAs less reliable to funnel developers and users toward native apps, thereby supporting its App Store ecosystem.

However, not all developers have had uniformly negative experiences with PWAs on iOS. Thepra mentioned success with a PWA built on web assembly (Blazor) that functioned well even on older iPhone models. Such experiences highlight an essential truth in software development: one size does not fit all. Different use cases, app architectures, and customer bases may encounter varying levels of friction when interacting with Apple’s platform. Developers might mitigate these issues by leveraging alternative storage mechanisms like IndexedDB or remote logging for detailed diagnostics, as mentioned by other commenters.

image

From a user perspective, PWAs often suffer from poor adoption not due to any intrinsic limitation of the technology but rather due to *discoverability* issues. Many users are accustomed to searching for apps in the App Store or Google Play Store, avenues that PWAs typically bypass. This creates a gap in discoverability that can be a substantial hurdle for widespread adoption. For example, users unfamiliar with the ‘Add to Home Screen’ prompt may never end up installing the PWA, even if it’s prominently featured on the company’s website. Thus, developers frequently find themselves needing to educate prospective users on how to install and use PWAs, a process that can be cumbersome and off-putting.

For developers committed to making PWAs a core part of their product strategy, there are some shining examples of success. Services like *The Lounge* and *Revolt* have created PWAs that their user bases find both functional and engaging. This indicates that while PWAs have their challenges, they also hold significant promise when executed well. The technological community continues to innovate with tools like Capacitor and other wrapping solutions that simplify the PWA-to-native app conversion process, enabling broader distribution options through official app stores.

Despite these positive examples, many developers remain skeptical, citing the myriad technical and user-experience challenges that persist. JoshTriplett, a seasoned developer, underscored the frustrations many face, noting how distaste for PWA complexities often stems from actual user feedback. Real-world use cases show that even technically sound PWAs frequently face hurdles that native apps simply do not, particularly regarding performance consistency and data persistence. Thus, while the potential for PWAs remains high, it is essential to acknowledge and prepare for the very real challenges they present.

In conclusion, while PWAs offer an intriguing blend of web and native app capabilities, launching a successful PWA product requires a nuanced understanding of both the technology and its limitations. Developers need to be prepared for platform-specific challenges, especially within the Apple ecosystem, and should prioritize solving for user needs and discoverability issues. Ultimately, the journey towards a successful PWA is multifaceted, requiring a balance between technological innovation and practical, user-oriented solutions. As both the technology and user expectations evolve, developers must remain agile, leveraging community insights and advances to overcome the inherent hurdles in this dynamic field.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *