From IndieWeb
(Redirected from show before tell)

The IndieWeb Community is largely based on principles (AKA tenets) such as own your data, make what you need, use what you make, document your stuff, open source your stuff, UX design is more important than protocols, visible data for humans first and machines second, platform agnostic platforms, plurality over monoculture, longevity, and remember to have fun!

The IndieWeb community has a code-of-conduct.

Key Principles

Key principles of building on the indie web, numbered for reference, not necessarily for any kind of priority.

  1. Own your data. Your content, your metadata, your identity.
  2. 🔍 Use & publish visible data for humans first, machines second. See also DRY.
  3. 💪 Make what you need. Make tools, templates, etc. for yourself first, not for all of your friends or ”everyone“. If you design for some hypothetical user, they may not actually exist; if you make for yourself, you actually do exist. Make something that satisfies your needs (also known as scratch your own itch), and is compatible for others, e.g. by practicing POSSE, you benefit immediately, while staying connected to friends, without having to convince anyone. If and when others join the indieweb, you all benefit.
  4. 😋 Use what you make! Whatever you build you should actively use. If you aren't depending on it, why should anybody else? We also use the metaphor eat what you cook for this principle. Personal use helps you see both problems and areas for improvement more quickly, and thus focus your efforts on building the indieweb around actual needs and consistently solving immediate real world problems, instead of spending lots of time solving what may be theoretical problems.
  5. 📓 Document your stuff. You've made a place to speak your mind, use it to document your processes, ideas, designs and code. Help others benefit from your journey, including your future self!
  6. 💞 Open source your stuff! You don't have to, of course, but if you like the existence of the indie web, making your code open source means other people can get on the indie web quicker and easier.
  7. 📐 UX and design is more important than protocols, formats, data models, schema etc. We focus on UX first, and then as we figure that out we build/develop/subset the absolutely simplest, easiest, and most minimal protocols & formats sufficient to support that UX, and nothing more. AKA UX before plumbing.
  8. 🌐 Modularity. Build platform agnostic platforms. The more your code is modular and composed of pieces you can swap out, the less dependent you are on a particular device, UI, templating language, API, backend language, storage model, database, platform. Modularity increases the chance that at least some of it can and will be re-used, improved, which you can then reincorporate. AKA building-blocks. AKA "small pieces loosely joined".
  9. 🗿 Longevity. Build for the long web. If human society is able to preserve ancient papyrus, Victorian photographs and dinosaur bones, we should be able to build web technology that doesn't require us to destroy everything we've done every few years in the name of progress. Consider making things on the web that are designed to last.
  10. Plurality. With IndieWebCamp we've specifically chosen to encourage and embrace a diversity of approaches & implementations. This background makes the IndieWeb stronger and more resilient than any one (often monoculture) approach.
  11. 🎉 Above all, Have fun. When the web took off in the 90's people began designing personal sites with tools such as GeoCities. These spaces had Java applets, garish green background and seventeen animated GIFs. It may have been ugly and badly coded but it was fun. Keep the web weird and interesting.


Why principles matter:

Posts About

Posts about IndieWeb principles:

This article was quoted nearly verbatim in WIRED in 2013

Tweets about IndieWeb principles:


Things we have had implicitly as IndieWeb principles/values but for one reason or another did not capture explicitly.

Own your identity

We often tell folks in chat etc. that the most important thing about being on the IndieWeb is having your own domain name and using it as your primary identity on the web, yet it’s not even an explicit principle. It's mentioned in the Own Your Data principle as the last in a comma delimited list, but identity isn't really "data", it's more than that, and deserves its own explicit point.

We discussed this in-person during a walk after IndieWebCamp Düsseldorf, after the last session of the day on Principles.

Prior thoughts:

  • 2018 Greg McVerry noted: the word "identity" does not appear on /principles currently

Proposed to add something like this:

1. ✊ Own your identity. An independent web presence starts with an online identity you own and control, the most reliable and accessible way to do this today is with your own domain name.

And make it literally the first principle, because all other aspects of independence and ownership follow from that. It's also what we have told people is the absolute minimum to be "on" or part of the "IndieWeb".

Thoughts? Suggested edits/improvements?

Show before tell

Long ago, in the 2010-2011 timeframe, we used to have an implicit value/principle of "show don't tell", yet somehow that never made it into the principles page.

The home page does have: "Show before tell."

This tweet expresses a direct use of this value:

"if you think some technology choice can make you way more productive, then just do it and show people the productivity, don't go on prattling about what other people should or shouldn't do."@tmcw September 11, 2022

Curious if it made it into any longer expositions, blog posts etc. I feel like "Show don't tell" made it into some early IndieWeb talks but I can't seem to find it.

Related tweet from Daniel Burka:

You'll never be good at something if you never do it.

Sounds trite, but I meet a lot of UX designers who think they'll never be good at visual design. Or designers who believe they could never be writers. You might suck when you start, but the only way up is through.



Quite a bit of explicit and implicit methodology has gone into much of the adding and revising of the principles, which is worth documenting to help the community more broadly understand and more collectively continue to iterate and evolve the principles. Partially extracted from thoughts in the 2018/Organizers#IndieWeb_principles_split_and_reorg discussion. — Tantek Çelik

  • ordering
    • should be about what's important and why you are in this specific community
    • which ones build on each other, e.g. you need to own your identity before you can own your data, content, or what you make
    • the more indieweb-community-defining (specific to the indieweb) a principle, the higher-up it should be
      • e.g. Fun is important, but it's not an indieweb-community-defining feature.
      • Indieweb started with own your data
  • actionable
    • principles should guide decisions and actions, rather than just "feel good"
  • positive direction instead of negative inaction
    • principles should explicitly say what to do or say instead of only telling people what to avoid. "avoid" based principles aren't actionable (per prior methodology point), and worse, contribute to inaction, or act as "stop energy"
  • broadly applicable to the IndieWeb community, e.g.
    • the more user-friendly & accessible that our principles are the better
    • developer-specific is ok but not ideal
  • short & catchy names / phrases / summaries that resonate
    • Kevin Marks: slogan-y names that are easy to remember are more accessible to makers that are not coders
  • skimmable list rather than walls of text
    • our main principles list should be easily skimmable rather than requiring paragraphs of explanation
    • link individual principles to their own pages to expand upon what they mean, why, how to embody them, etc.
  • ...

Developer principles

Since the principles largely started out at as developer principles, which still make sense for developers, as we rewrite/reframe the principles to be more broadly applicable, user-friendly, accessible, we should keep (and maintain) the versions that are intended for developers. — Tantek Çelik

Working on it here: developer-principles

Reduced set of core principles

By pulling out developer principles into a separate list, it might be possible to focus a set of core principles around the themes of identity, agency and creativity. — Paul Robert Lloyd

🥸 Own your identity
An independent web presence starts with an online identity you own and control. The most reliable way to do this today is by having your own domain name.
😌 Own your content
You should retain control of the things you make, and not be subject to third-parties preventing access to it, deleting it or disappearing entirely. The best way to do this is by publishing content on your own website.
🥳 Have fun!
When the web took off in the 90’s people began designing personal sites with garish backgrounds and animated GIFs. It may have been ugly but it was fun. Let’s keep the web weird and interesting.

Similar or aligned

  • 2018-02-16 Blogging – And Why It’s Important To Bring It Back.

    Instagram is a public platform.
    We do not own it. We never will. We cannot control it. So we need to accept that.

    But our blogs are OURS.
    We have spent years building our brands from the ground up, and it all started with our blogs. It is our very own personal space online. We control it. We decide what content goes up. We decide if we want to make changes to our website. There are no algorithms. There is no fuckery.

See Also