Discover more from Matt Rickard
The Post-Modern Web
Hackers and painters aren't so different, Paul Graham would say. And much like art, software engineering has gone through movements as well.
Web 1.0 (1996~2004) was about static and synchronous content. The Document Object Model (DOM) and its predecessors allowed developers to treat a webpage as a tree and modify it.
The post-modern web is about the rejection and evolution of the technologies in Web 2.0.
The evolution of the DOM. The webpage isn't modifying directly through the DOM anymore, but rather a virtual DOM, that allows developers to declaratively, rather than imperatively, describe the page. Some applications like Google Sheets and Figma write directly to the browser canvas, "drawing" applications that don't fit cleanly in a tree object model.
In the post-modern web, more and more applications are looking like a browser. Desktop applications like Slack, Figma, Notion, VSCode, and more are written in Electron, which uses the same engine that Google Chrome does.
An innovation that is yet to come, but I suspect we'll see the evolution of networking in the browser. Server-to-server communication rarely happens over HTTP anymore, with developers electing to use remote procedure calls with binary wire formats. Developers will want to do this in client-to-server settings like the browser.
The post-modern web changes the way we think about foundational web technology. The post-modern web allows us to create "web" applications that we never thought possible.