Moving Beyond the Website vs. Web App Dichotomy

Moving Beyond the Website vs. Web App Dichotomy

Newsletter

Jake Lazaroff argues against a binary categorization of sites or apps, proposing a more nuanced approach with four quadrants containing distinct characteristics and technological needs.


JSJam Live, Wednesday at 12pm PT

Join us today at 12pm PT for another open mic episode of Javascript Jam Live. Last time on JavaScript Jam Live, we were joined by Tobiloba, Fuzzy Bear, and Dan Shappir to discuss our predictions for JavaScript in 2024.

Story of the Week

Does the Website vs. Web App Dichotomy Exist?

The web site versus web app dichotomy has been debated to death and many wish for the distinction to be abandoned entirely. Jake Lazaroff brings a fresh perspective to the topic and offers a new way to think about the landscape of web experiences. He emphasizes a spectrum that exists between two categories: online versus offline and static versus dynamic.

These spectrums are used to determine the appropriate technologies for building a web project. The article argues against a binary categorization of websites or web apps and proposes a more nuanced approach with four quadrants containing distinct characteristics and technological needs: informational, transactional, realtime, and local websites.

  • Informational Websites: These are static and can function offline, primarily containing text and images with limited user interaction. They are often built using HTML and CSS, with JavaScript used sparingly for enhancements. However, these websites are not commonly designed for offline use, despite their potential for it.
  • Transactional Websites: These websites are static but require an online connection. They involve interactions that are essentially transactions with a server, leading to state changes and page updates. Recent trends in this quadrant include blending client-side and server-side code and a resurgence of using HTML as a hypermedia for interactions.
  • Realtime Websites: Occupying the dynamic and online quadrant, these websites need fast, fine-grained updates beyond what standard HTTP requests provide. Examples include online communication platforms and multiplayer games. These websites heavily rely on technologies like websockets and WebRTC and necessitate client-side JavaScript for their functionality.
  • Local Websites: These are dynamic and function offline, resembling traditional desktop apps but based on web technologies. They are often single-page apps with no need for a web server post-initial load. Examples include apps like Wordle and Photopea. Local websites are related to progressive web apps but have seen limited adoption compared to other categories.

The article also discusses the role of JavaScript frameworks in web development, noting their use in creating dynamic aspects of websites. However, there is a growing trend towards more declarative ways to achieve dynamism. Approaches using HTML, CSS, web components, and technologies like HTMX allow for dynamic interactions without fully relying on JavaScript frameworks.

Finally, the article touches on the empowerment and convenience local-first software and asynchronous apps offer. It concludes by expressing hope for the future of web development: better declarative methods for dynamic interactions, more local-first software for real data ownership, and judicious use of JavaScript plus better implementation of service workers for offline use.

New Podcasts

One More Thing

HTMX continues to be having a moment and the video HTMX For React Developers in 10 Minutes by Jack Herrington makes the case for HTMX being a lighter weight alternative to React that makes building simple interactive applications a whole lot easier.

JavaScript Jam on the Web

Find us online at the following links: