Two Paradigms of Web Development

Published on June 19, 2017 (↻ October 5, 2022), filed under (RSS feed for all categories).

On a sunny Tuesday in Düsseldorf a few weeks back, at Beyond Tellerrand, I had a pleasant recorded conversation (in German) with the team of Working Draft. In our discussion we briefly touched on the idea of web development paradigms—I vaguely borrowed from Thomas Kuhn—when it comes to the ideas behind the maintenance and optimization of frontend code, particularly HTML.

I suggested that we were dealing with two paradigms, and two models of web development.

The first model, which can be called the traditional or conservative model, follows the idea that HTML should only be touched on structural changes, and that the vision are CSS-only refreshs and redesigns. In this model, separation of concerns is critical, and the quality of the markup the highest priority. (You usually find me squarely in this camp.)

The second model, which may be called the ubiquitous model (other names? please leave suggestions), reflects the idea that all changes are so easy—including HTML changes that have ceased to mean edits to huge collections of static files—that there are no fixed boundaries anymore around what to place particular emphasis or importance on: If anything we’ve become so efficiency-oriented that most now appears to be a matter of process and automation.

As I added on the Working Draft podcast, “paradigm” is somewhat of a misnomer in a sense that one is not currently superseding the other (Kuhn again), but they’ll likely stay with us to represent two different development realities. I personally believe in strict separation of concerns and to put most emphasis on quality HTML code (first model), yet the technological landscape has changed and one can find more taste not making such distinctions (second model).

The most important piece, however, is that we recognize and learn to work well with these paradigms, just as we’ve long been benefiting from differentiating between sites and apps, and research and production code. Like in other parts of life, answers in web development often start with “it depends,” too.

Was this useful or interesting? Share (toot) this post, become a one-time nano-sponsor, or support my work by learning with my ebooks.

About Me

Jens Oliver Meiert, on November 9, 2024.

I’m Jens (long: Jens Oliver Meiert), and I’m a frontend engineering leader and tech author/publisher. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m a contributor to several web standards, and I write and review books for O’Reilly and Frontend Dogma.

I love trying things, not only in web development (and engineering management), but also in other areas like philosophy. Here on meiert.com I share some of my experiences and views. (Please be critical, interpret charitably, and give feedback.)