[TI-08] aliving the web
towards environments that empower us to invent new ways of expressing to each other
I want to make the web feel alive.
So often on the web, we feel alone—just our cursor in the big world wide web. Even though it's already teeming with life with all the things we do on it, so much of what we do is hidden from each other. And that's the hope the internet gave to when people first discovered it: the people everywhere in AIM chats and on random forums and obscure wikis and in the corners of places you would never expect to have people.
The web shows us that there are others out there, like us, regardless of how niche our interests are, and their words and creations touch us. If only we could say more back to them... To share all of those rich interactions with each other, we have to expose ourselves in an entire identity and profile. We don't have the safety to express ourselves naturally in this binary space. We must choose either solitude or the spotlight, and all the consequences that come with it.
I want to make the web feel alive naturally, in a way where we feel safe to just express ourselves as richly as we already do—in the cursor patterns we form, the frenzy of navigations while on a rabbit hole, and how long we hover over each comment that makes our sides hurt with laughter.
Around two months ago, I mentioned in this newsletter a new prototype I was going to be trying out something to make the web feel more alive that embraced html energy:
Specifically, how can digital spaces more naturally imbue presence, in the same way that you can't help leaving a mark in the physical world (unless you do the work to remove it), whether it's your footprint in the dirt, your empty bowl by the sink, or the impression in the pillow. The idea we were exploring was a library you could add via a script import that brings HTML elements to life with this presence using special attributes.
from https://twitter.com/spencerc99/status/1689359111203467271
If you missed it, I made this and launched it last month! It's an open-source library called playhtml that makes the web come alive, filled with the traces of visitors, and you can play with it at playhtml.fun. Leave a trace for me and others to find, and I'd love to see you try it out on your own sites!
These small physical indicators may seem inconsequential, but they are not only signs of life but they are conduits of life itself. These little indicators of people (and rather than the general, abstract sense, I mean real, specific people!) offer themselves to us as sites of connection, and they challenge us to divine who they belong to.
What I'm targeting here is a tangible sense of presence that you don't feel on websites right now—the felt sense that someone has been here and the possibility of knowing who that someone is. This rich set of interconnected interactions and presence comes for free in the physical world, where everything has a tangible presence. Energy cannot be created or destroyed, it can only be shifted around. In the physical world, objects have a body that cannot simply be disappeared (at least not easily). Everything you do leaves some trace and causes chain reactions in response. Our actions automatically create reactions, and as a result, we have a living, breathing, and unpredictable ecosystem that offers so much rich detail for us to pay attention to.
In a digital space, the closest we get is in the ocean currents of large-scale social media. There's an organic life force here that's driven by people in the cultural trend, in the constant ebb and flow of niche reference material in whatever has become cultural canon and lore. You can pick up on a surprising amount of detail in the way people interact and the content they make in how much is referencing (and influenced by) what has been happening the past day, week, month, and even years (references to Vines, a long-dead product, still resurface now and again). However, this life force is ultimately directed by the Algorithm. The "breath of the gods" (as Robin Sloan calls it) bestows cultural relevance on those it deems to fulfill their desires (of longer view times, higher engagement, etc.). We only have so much control over how the ecosystem works.
Instead, I'd like to paint a different future, one which preserves the overflowing amount of life and countless number of interdependent interactions, but gives the power of shaping the environment ultimately to the participants in it. I'd call my approach something akin to the advocacy around learning from indigenous practices of living with the earth, rather than trying to control it through large machinery and interventions as we have done in our physical environments. In a digital world, we are the nature. We were here before the Algorithm, and we were here before the huge platforms that purport to give us freedom. Just as we must listen to the plants, animals, and the earth in our local ecosystems in order to learn how to live in harmony with them, the Algorithm should be shaping itself according to our needs and desires, rather than trying to sweep us into the behaviors that they desire.
In creating playhtml, I am trying to imagine a world where rich expression and shared reality are a natural and given part of our daily experience on the internet. In the same way that we have seen so many fun and unique forms of expression emerge in the shared spaces of Google Docs (cursor parking lot) and Figma (cursor high fives), I want to create the infrastructure such that this kind of organic invention of new ways to relate to each other and express ourselves is ingrained into the very fiber of using the web. We already invent new ways of relating to each other all the time while we use the internet—we folk program our software into the kinds of spaces that we want to share together, but I want this to feel like an official and default way of using the internet, in which you are empowered to create the worlds that you want to inhabit.
There's a massive challenge inherent to this direction, which is that it is completely different from people's intuitive perceptions about how the web and websites work. This is something that many of the real-time collaboration tools have had to deal with (this conflict in perception came up so much in Coda discussions as well), especially when there are some things that are individual and others that are real-time collaborative. How are you supposed to know which is which? I've experienced how wildly different people react to the project depending on how I show them the demo: 1) just showing them on my phone because I'm on the go and 2) having them go to the website and showing them from my browser because they can actually follow my cursor and see everything that I'm doing happen in real-time. The latter is stunning (in a non-normative way) because "normal" websites aren't supposed to work this way. And yet, I think it's worth seeing how far we can go with challenging this notion.
" Resonance, by contrast [with recognition] is always a dynamic event, the expression of a vibrant responsive relationship that can be seen perhaps most splendidly when a person's eyes light up. . . . [It] always refers to an occurrence between two or more subjects. I am recognized, but resonance is something that can only happen between us. Love as a resonant experience thus refers not to the fact of loving or being loved, but to the moment or moments of mutual, transformative, fluid, affecting encounter."
— Harmut Rosa, Resonance: A Sociology of Our Relationship to the World, paraphrased by Jenny Odell
Aliving the web is about enabling resonance, hand-holding, and the ability for our souls to be touched by others. I want the internet to be the connective tissue it originally promised to be, everywhere and in more creative and original ways that are true to the inventiveness of our spirits instead of plain text and rich media.
Next up on my mind for playhtml is making it more compatible (like using Javascript frameworks) and allowing the plug-and-play of wholesale components (like the candle or lamps on the website). The big, existential question I'm weighing is how this is different from just a better state management library (that handles the spectrum of real-time persisted, real-time synced not persisted, local persisted), of which there already exists some really nice reactive approaches that already collaborative cases via Yjs (like Syncedstore)? My intention was to provide a more opinionated and out-of-the-box useful library, which includes some common capabilities that you would already want, but it's really hard to make these general and customizable without being too opinionated. I wanted this to be a communal library for capabilities and avenues for aliveness that we all could curate together, but given that there have been no contributions other than mine, I wonder how easy it really is to not only come up with a capability but generalize it for everyone to use on their own websites.
Both of these are for selfish reasons because I want both of those capabilities for projects I want to make with playhtml (which funnily enough I think goes a long way to making the library better?). You can see playhtml in action on the demos & chill site (where I first presented this project), the recent conversation about dream digital spaces I had with Jacky, and of course, on my website. Soon (hopefully), a graveyard for a beloved site and a communal garden.
I left a ‘hi’ on the candle farm for everyone 🕯️Excited to try play.html on my own website! Really cute idea