plumbing

From IndieWeb


Plumbing in the context of the IndieWeb, refers to all the underlying code, backend setup, protocols, formats that is all merely there to support the design and user experience of a site, the actual user visible and interactive parts.

UX and design is more important than plumbing

One of the key IndieWeb principles is "UX and design is more important than protocols."

"I don’t care about the plumbing. I care if I can take a shower." Khurt on #indieweb

Yet programmers love to talk about plumbing, in the same way that construction workers do β€” it's their area of expertise, hobby, and fun to talk about.

However, when you're building your own site, you realize you just want the most minimal plumbing that is reliable and will do what is necessary for the design and user experience of your site.

Thus any discussion of plumbing should always be framed as a means to an ends of good UX/design.

Discussing plumbing for plumbing's sake tends to be a distraction from actually building and creating a functional site that you want to use day to day.

Exposed Plumbing Is Bad Design

Your plumbing is showing

Just as you would never live in a house with exposed plumbing like this, it's considered bad design if your site makes its plumbing obvious to the user, e.g. long seemingly random numbers in URLs (as opposed to good URL design), use of acronyms and jargon in your site description, and worst of all, when code or cryptic error messages show through and make your site look ugly.

Your plumbing is showing

Unnecessary Plumbing Is Neglected

Cobwebbed water spigot and old dusty plumbing with ties to keep it in place.

Caption: What happens to most sites' RSS feed(s).

Whenever you build DRY violating duplicate plumbing into a site, e.g. feed files, more often than not, such plumbing ends up getting hastily patched, ignored, neglected, and eventually non-functional, because it's not what people primarily pay attention to, which is the visible site instead.

See Also

  • sidefile antipattern
  • principles
  • https://twitter.com/acdimalev/status/1093893401655730178
    • "Survey says the vast majority of people do not use plumbing tools, so we have decided to stop manufacturing them." @acdimalev February 8, 2019
  • https://twitter.com/_/status/1434973270487572480
    • "Remember, it's not the plumbing that matters, its that you can take a shower, flush the toilet, drink a glass of water.

      Brilliant plumbing, but without a shower or with no toilets, it makes no one happy.

      Same applies to tech. https://indieweb.org/plumbing" @voxpelli September 6, 2021
  • Why do people get passionate and focus on plumbing (protocols and implementation details) at the cost of neglecting the bigger picture (actual usability, usefulness, use-cases, user-centered design)? A: Because plumbing is the area they have familiarity "thinking" about, and thus make the error of focusing on what they can think about instead of what they should think about (aforementioned bigger picture).