chasem.co

I’m finally getting around to playing Ghost of Tsushima which is impressive all around. But the thing that has impressed me most is… wind??

The game rejects the normal interface of a minimap to guide players, and instead uses the wind and the environment to show the way forward.

When The Guiding Wind blows in Tsushima, the entire game world responds. The trees bend over, pointing you onward. The pampas grass ripples like the surface of water. Leaves and petals swirl around the scene. The controller emits the sound of gusting wind, and the player can swipe the touch pad to blow the winds and set the environment in motion.

Such a simple mechanic is so unexpected and beautiful and calming in a world of cutting edge graphics and 4K 60FPS VR madness. Video games (and everything else) today are so over the top, but in the end it’s something simple like the wind that gets you.

🍃 Let the guiding wind blow 🍃

Every day is science fiction

Science fiction is one of my favorite genres because of its power to make the strange familiar and the familiar strange.

Kim Stanley Robinson wrote an anti-dystopian essay in which he discusses how science fiction works:

For a while now I’ve been saying that science fiction works by a kind of double action, like the glasses people wear when watching 3D movies. One lens of science fiction’s aesthetic machinery portrays some future that might actually come to pass; it’s a kind of proleptic realism. The other lens presents a metaphorical vision of our current moment, like a symbol in a poem. Together the two views combine and pop into a vision of History, extending magically into the future.

Dystopias Now

I read that and then, a day later, stumbled upon a thought experiment published on the wonderfully quirky website of Ville-Matias Heikkilä.

The thought experiment, titled “Inverted computer culture”, asks the reader to image a world where computing is seen “as practice of an ancient and unchanging tradition.”

It is considered essential to be in a properly alert and rested state of mind when using a computer. Even to seasoned users, every session is special, and the purpose of the session must be clear in mind before sitting down. The outer world is often hurried and flashy, but computers provide a “sacred space” for relaxing, slowing down and concentrating on a specific idea without distractions.

Inverted computer culture

What a dream. I encourage you to read the piece which is quite short. It struck me as being exemplary of the aforementioned double action of science fiction—both a vision of the future and a metaphor for the current moment. You can imagine how a fictional immune response to our current culture might drive us toward a world of computing and technology like the one imagined here.

To push it a bit further, I prompted ChatGPT to write a story based on the thought experiment and threw the result into a gist. You can read the story it came up with here.

The story’s alright, but the last paragraph is something else. It captures so many of the feelings I have about computing and the web:

As she sat there, lost in her work, she knew that she would never leave this place, this sacred space where the computers whispered secrets to those who knew how to listen. She would be here always, she thought, a part of this ancient tradition, a keeper of the flame of knowledge. And in that moment, she knew that she had found her true home.

Here’s to all those who know how to listen.

How blogs shaped the web

I have a lot of nostalgia for the era of blogging that I grew up with during the first decade or so of the 2000s.

Of course there was a ton of great content about technology and internet culture, but more importantly to me it was a time of great commentary and experimentation on the form of blogging and publishing.

As social media and smartphones were weaving their ways into our lives, there was a group of bloggers constructing their own worlds. Before Twitter apps and podcast clients became the UI playgrounds of most designers, it was personal sites and weblogs that were pioneering the medium.

Looking back, this is probably where my meta-fascination with the web came from. For me the most interesting part has always been the part analyzing and discussing itself.

Robin Sloan puts it well (as he is wont to do):

Back in the 2000s, a lot of blogs were about blogs, about blogging. If that sounds exhaustingly meta, well, yes — but it was also SUPER generative. When the thing can describe itself, when it becomes the natural place to discuss and debate itself, I am telling you: some flywheel gets spinning, and powerful things start to happen.

Robin Sloan, A year of new avenues

Design, programming, and writing started for me on the web. I can recall the progression from a plain text editor to the Tumblr theme editor to learning self-hosted WordPress.

All of that was driven by the desire to tinker and experiment with the web’s form. How many ways could you design a simple weblog? What different formats were possible that no one had imagined before?

Earlier this week I listened to Jason Kottke’s recent appearance on John Gruber’s podcast and was delighted to hear them discuss this very topic. Jason is one of the original innovators of the blog form, and I’ve been following his blog, kottke.org, since I was old enough to care about random shit on the internet.

Kottke.org turned 25 years old this week, and Jason has been publishing online for even longer than that. All along the way, he has experimented with the form of content on the web. He’s not alone in that—many bloggers like him have helped to mold the internet into what it is today. The ones that influenced me besides kottke.org are Daring Fireball, Waxy.org, Jim Coudal and Coudal Partners, Shawn Blanc, Rands in Repose, Dave Winer, and more that I’m certainly forgetting.

A screenshot of kottke.org from October 12, 1999, and my personal favorite design of the site over the years

Jason and John have an interesting conversation during the podcast (starting around 25 minutes in) about how the first few generations of bloggers on the web defined its shape. Moving from print to digital mediums afforded a labyrinth of new avenues to explore.

It’s always important to remind ourselves that many of the things we take for granted today on the web and in digital design had to be invented by someone.

Early weblogs did not immediately arrive at the conclusion of chronological streams—some broke content up into “issues”, some simply changed the content of their homepages entirely.

It wasn’t until later that the reverse-chronological, paginated-or-endless scrolling list of entries was introduced and eventually became the de-facto presentation of content on the web. That standard lives on today in the design of Twitter, Instagram, etc., and it’s fascinating to see that tradition fading away as more sites embrace algorithmic feeds.

By the way, I’d be remiss here if I didn’t mention Amy Hoy’s amazing piece How the blog broke the web. Comparing the title of her piece with the title of this one, it’s clear that not everyone sees this shift in form as a positive one, but she does a great job in outlining the history and the role that blogs played in shaping the form of the web. Her particular focus on early content management systems like Movable Type is fascinating.

Another great example that Jason and John discuss on the podcast is the idea of titling blog posts.

They point out that many early sites didn’t use titles for blog posts, a pattern which resembles the future form of Tweets, Facebook posts, text messages, and more. But the rise of RSS readers, many of which made the assumption that entries have titles and design their UIs around that, forced many bloggers to add titles to their posts to work well in the environment so popular with their readers.

Jason mentions that this was one of the driving factor for kottke.org to start adding titles to posts!

This is an incredible example of the medium shaping the message, where the UI design of RSS readers heavily influenced the form of content being published. When optimizing for the web, those early bloggers and the social networks of today both arrived at the same conclusion—titles are unnecessary and add an undue burden to publishing content.

This difference is the very reason why sending an email feels heavier than sending a tweet. Bloggers not using titles on their blog posts figured out tweeting long before Twitter did.

When referring to the early bloggers at suck.com, Jason said something that I think describes this entire revolution pretty well.

[…]there was in information to be gotten from not only what they linked to, but how they linked to it, which word they decided to make the hyperlink.

Jason Kottke on The Talk Show episode 370 (35:40)

It’s not often that you have an entirely new stylistic primitive added to your writing toolbox. For decades you could bold, italicize, underline, uppercase, footnote, etc. and all of a sudden something entirely new—the hyperlink.

With linking out to other sites being such a core part of blogging, it’s no surprise that the interaction design of linking was largely discussed and experimented with. Here’s a post from Shawn Blanc discussing all the ways that various blogs of the time handled posts primary geared towards linking to and commenting on other sites.

Another similar example is URL slugs—the short string of text at the end of a web address identifying a single post. For many of my favorite bloggers, the URL slug is a small but subtle way to convey a message that may or may not be the same as the message of the post itself. One other stylistic primitive unique to the web.

The different ways in which bloggers designed their site or linked to words became a part of their unique style, and it gave their each of them an entirely new way to express themselves.


It’s hard to communicate how grateful I feel for this era of experimentation on the web, and specifically for Jason Kottke’s influence on me as a designer. The past 25 years have been a special time to experience the internet.

There was a time when I thought my career might be curved towards blogging full-time and running my own version of something like kottke.org. Through exploring that I found my way to what I really loved—design and software. My work continues to benefit from what I learned studying bloggers and publishers online.

Whether you care much about writing or not, I encourage you to have a blog. Write about what interests you, take great care of how you present it to the world, and you might be surprised where it takes you. There are new forms around every corner.

Ambient internet

The recent fad of the metaverse is all about digitizing the physical world and moving our shared experiences (even more so) onto the internet.

I wonder what an opposite approach might look like—one where, instead of making the physical digital, we instead attempt to bring the online world into our physical spaces (and no, I don’t remotely mean AR or VR).

The first thing that comes to mind for me is Berg’s now-defunct Little Printer project from back in 2012 or so. Little Printer was a web-connected thermal printer that lived in your home and allowed you to receive print-outs of digital publications, your daily agenda, messages from friends, etc.

Little Printer was an attempt at bridging the physical and digital, essentially creating a social network manifested as a physical object in the home and consumed via paper and ink.

Personal websites are the digital homesteads for many. Those sites live somewhere on a web server, quietly humming away in a warehouse meant to keep them online and secure. For each of us those servers represent empty rooms waiting to be decorated with our thoughts, feelings, interests, and personalities. We then invite strangers from all over the world to step inside and have a look.

Like the Little Printer, I wish that my web server could exist in my home as a physical object that could be touched, observed, and interacted with.

[source]

Hosting a web server yourself is surprisingly difficult today given the advances we’ve made in consumer technology over the last few decades. Hosting content on someone else’s server has become as simple as dragging and dropping a folder onto your web browser. There are countless business that will happily rent out online space to for very cheap (or even free, with the hopes that eventually you’ll upgrade and give them money).

We’re all tenants of a digital shopping mall, sharing space controlled by corporate entities who may not share our values or interests.

When someone visits my website, I wish it could feel more like inviting them into my home. What if my website lived in my home with me?

Imagine if having a web server in the home was as common as any other appliance such as a refridgerator. You might look over and see your friend (or a welcome stranger!) browsing your website. You could see what they’re browsing—look at photos with them, listen to a song together, whatever—and start a conversation about any of it.

I’m certainly not the only one who has imagined this. A while ago I stumbled upon a project by a student named Jeeyoon Hyun called “Personal Pet Pages” which is a small, personal web server with a fiendly screen displaying what’s going on inside the server.

Ever since we’ve decided that servers are something heavy, enigmatic, gigantic black boxes belonging to corporations - not individuals - we have slowly lost agency towards our own small space on the Internet. But actually, servers are just computers. Just as your favorite cassette player or portable game console, they are something that you can possess and understand and enjoy.

Personal Pet Pages, ITP Thesis Archives 2022

Jeeyoon’s idea combines turns a web server into a sort of virtual pet, one that you can move around and interact with.

Matt Webb has also considered the idea:

It is boundary-violating, to have a website in the corner of your bedroom. Websites are meant to be in the cloud. Eternal, somehow, transcendent, like the voice of code floating down from the sky. But no, there it is. It is real! I can kick it! Argumentum ad lapidem.

I wish my web server were in the corner of my room

Those fixated with the idea of the metaverse might are interested in bringing real-world objects into the cloud. I wonder instead how we might try to bring objects from the cloud into the real world and into our homes. How would we design webpages differently if our materials included the servers that they’re hosted on?

Where it all began

I remember the first time I saw a Mac in person. I was in middle school, but on the campus of the nearby college because my dad had a gig as a stand-in drummer for a local band.

While hanging out backstage—something I often had the privilege of doing from a young age as the son of a drummer—I saw a girl, sitting on the ground, typing away on a brand new MacBook Air.

The Air had just been introduced to the world, and I remember rewatching the announcement video online. Steve Jobs talked about the computer at Macworld only to reveal that it had been on stage with him the entire time inside a manilla envelope. He opened it and pulled out the thinnest computer in the world. I had no idea a computer could even look like that.

After my dad’s show I immediately pointed out the girl and her computer, and I remember him sharing my excitement so much that he asked the girl if we could look at it a bit closer. She was kind and happy to show it off and even let me hold it. From then on, I was hooked. I knew that’s the computer I’d own one day, and sure enough I’d get my first Mac, a MacBook Air, a few years later in high school.


And now Apple has introduced a MacBook Air thinner than the original iPhone. I wonder what middle school me, who coveted but did not own an iPhone at the time, would think about that.

I received the new M2 MacBook Air (in Midnight) a few months ago and I’ve been smitten with it. It is a cool, dark slab of silent compute, and it feels dense and book-ish in the most satisfying way.

The battery life deserves its own mention, and feels like a leap ahead for personal computers in its own right.

In all honesty I thought the time had come when a computer could not longer really excite me in the way that original MacBook Air did. But, this new one takes me right back there. It reminds me how lucky we all are to carry around devices that can conjure up all sorts of magic. And it takes me back to my beginnings in software when people wrote about the design of new iOS and Mac apps like they were art critics.

My life and friends and relationships and career are all in there, wound up with the electrons.

In setting up and using this new computer for the first time, however, I’ve realized how much devices today are like shells. The real computers, the ones that store our data and perform tasks on our behalf, are behemoths sitting in data centers. Setting up a new computer today is mostly a task of signing into various web applications to access your data, not transferring data onto the machine itself.

Our computers have become internet computers. And that might mean that the physical devices we own will trend towards nothingness—their goal is no longer to impress or inspire, but to be so small and light as to fall away entirely.

There’s something about that which makes me feel a bit melancholy. It feels like the days of computing devices being objects with personality and conviviality are fading. The computer is no longer a centerpiece, it’s an accessory, a thin client for some other machine or machines which are hidden away from us.

Footprints in the Martian sand

Since I was a kid the space program has been an object of my fascination, and even as an adult I’ve been captured by the heroics of NASA and other organizations launching probes and telescopes into the far reaches of space.

But something has never sat quite right with me about the recently renewed interest in human space travel, especially from CEOs of private companies like Musk and Bezos.

I think it’s always been a combination of two things:

  1. There are so many problems here on Earth, many of which could be solved with the resources being invested into sending humans to another world.
  2. Colonizing another planet is… still colonization.

I’d really never given it too much thought until this week when Maciej Cegłowski made his blogging return for the first time since 2020:

Wherever you stand on the matter, whether you’re a Musk fanboy, an unaligned Mars obsessive, or just biplanetary/curious, I invite you to come imagine with me what it would take, and what it would really mean, for people to go put their footprints in the Martian sand.

Idle Words: Why Not Mars

Maciej does a great job explaining just how bad and nonsensical of an idea it is to send humans to Mars.

As much as I love media about humans traveling to the red planet (The Martian and For All Mankind come to mind), perhaps it’s best that fantasy lives on solely as part of our imagination for now.

A malleable web

The Browser Company of New York is building a web browser called Arc, and they recently shared a preview of a new feature called “Boosts”.

Boosts are a reinvention of browser extensions—a built-in way to boost the web by writing your own code (HTML, JavaScript, and CSS) that can run on any website or specific ones that you assign. Check out this example of applying custom styles to GitHub:

A screenshot of Arc's "Boosts" feature

Look at that! The webpage on the right is the canvas, and the code on the left is the medium. They’ve even built in visual editing tools such as a color picker.

Webpages have always been destinations, but this invites them to be starting points—blank canvases, even. Your browser now invites you to extend and reimagine the web in whatever way you see fit.

It has always been possible to run user scripts and styles via browser extensions, but the developer experience of creating an extension has never been particularly beginner friendly. I’ve personally never seen extension development integrated so seamlessly and directly into the browser. Arc even implies that working with the web might be just as important as browsing it—in Arc’s interface, the Boost editor sits at the same level as the page you’re browsing, not in some nested panel that feels secondary to the experience.

Under the hood, Boosts are just a folder of HTML, JS, and CSS files. You can zip them up and send them to a friend, if you’d like. One can imagine a way to easily share boosts on the web in some sort of marketplace built right into Arc. There could be entire forums dedicated to sharing boosts around like Winamp skins for websites.

Boosts empowers even non technical users to create with the web rather than simply consuming it. The possibilities are exciting, and it’s refreshing that they’re being explored by a startup in 2022 at all.

I’m interested in software that works for us, our creativity, and our attention. The web is a powerful building material with a variety of textures, and it’s time we had tools that let all of us take advantage of such an incredible resource.

From The Browser Company’s email to Arc beta members about Boosts:

So, what happens to the internet when changing the internet is this easy?

I can’t wait to find out.

Ways of relating

If you read any of my writing you know that Robin Sloan is one of my favorite internet thinkers. He’s just published a spec for a new web protocol he’s designed called Spring ‘83.

I’d encourage you to read the spec yourself and check out the demo client. Just look at it:

Robin's demo client for Spring '83

It’s just so wonderfully web-ish.

Robin frames this work around imagining alternative “ways of relating” across the internet. So many of our current ways of relating online (social media, RSS, email) do a create job of syndicating and delivering content, but they sacrifice the presentation of the content and in doing so lose a key piece of what makes the web so great: creativity, expression, and freedom.

Robin touches on this in his newsletter announcing Spring ‘83:

For my part, I believe presentation is fused to content; I believe presentation is a form of content; so RSS cannot be the end of the story.

Specifying Spring '83

I hadn’t thought about this much before, but subconsciously I’ve always been aware of it on some level because when I read RSS I much prefer to jump out to a person’s website rather than reading in the client. It feels more personal and imparts the voice of the author. Reading on the source website feels like stepping into someone’s home for a chat, whereas reading in an RSS client feels more… clinical.

It makes me dream of an RSS reader that could emulate the styles of the websites it’s syndicating. I’m reminded of a protocol-like idea from Kicks Condor called “whostyles” which is “a way of styling syndicated hypertext from other writers.”

Whostyles calls on website owners to make a chunk of CSS available at a well-known URL that others can embed into their sites to match the style of the original. If everyone implemented a whostyle for their site, an RSS client could use it to personalize the display of feed entries.

Spring ‘83 feels like it’s getting at these ideas, and it’s doing so by embracing HTML/CSS as a creative tool and a medium unto themselves.

Crayons, craft paper, and CSS

A few things came across my desk this week that inspired hope about the future of the web and hypermedia as a medium.

No matter whether you consider yourself technical or not, it has never been easier to be creative with web technologies. Even the pain of setting up a local development environment has been abstracted away by code-in-the browser apps.

Why, then, have we not seen more people using the web as you might expect a layperson use a spreadsheet to assist with a myriad of tasks? The web goes far beyond just letting us organize and process information, it also lets us architect our own little palaces in the ether. It leaves space not just for data and numbers, but for our imaginations and interests.

Cristóbal Sciutto published an essay this past week about using the browser and the filesystem to visualize local media, and why others might want to build their own media environments. He calls these folk interfaces:

I think of these as folk interfaces, akin to the jigs one makes in wood-working. Divorced from grandiose ambitions of building comprehensive systems, it leads the programmer to directly engage with data. I hope this mode can paint the picture of software, not as a teleological instrument careening towards automation and ease, but as a medium for intimacy with the matter of our time (images, audio, video), yielding a sense of agency with what, to most, feels like an indelible substrate.

Folk (Browser) Interfaces

The spreadsheet might lend us the wonders of automation, but the web has romance. It lets us connect with what Cristóbal calls the “matter of our time” in a way that is much more human.

We’ve put the web in the hands of nearly everyone in society, but we’ve spent a depressingly small amount of time helping folks use the web as a building material.


If we want to empower the average web user to harness the power of the tools at their fingertips, it makes sense that we would start teaching the basic skills needed at a young age.

On that note, someone started an interesting thread on Hacker News this past week: Is there a site popular with Gen Z where users can write HTML and CSS?

In the 90’s, a number of teenagers made Geocities sites, which awakened their interest in web development and taught them some basics of HTML, CSS and JavaScript. Many of these teens went on to become web developers. […] Later still, many teenagers learned these skills customizing their Tumblr.

Ah, this had me reminiscing of many late hours spent hacking in the Tumblr theme editor.

There is some interesting discussion in the thread about how approachable mature technologies can even be to the uninitiated:

It’s probably disappointing to see the path so many of us took closing up behind us, but to some extent is a normal process for a maturing profession. There aren’t really accessible DIY paths to auto mechanic, aviator, architect, or lawyer either, though there once were.

I think that this is one of the great challenges we face as the web matures. If we don’t maintain accessible DIY paths as a point of order, we’ll lose the spirit of what has made the texture of the web that we know today.

Building the web is better compared not to auto mechanics and architects, but to painters and artists. You don’t need to make painting your profession to enjoy it as a method of self expression, and the same holds true of the web and any other creative medium.

Art class in middle school should have days focused on CSS.


Finally, an example of something being done to keep this kind of folklore alive for the generations to come. Figma and Google announced a partnership whereby students using Chromebooks will have free access to Figma.

Access is core to Figma’s mission. By partnering with the Chromebook team, we are able to use our web-based roots to deliver collaborative design software to more students and educators inside and outside of the classroom.

Figma education beta

This warms my heart in a way that is unusual considering Google is involved.

Figma is a powerful tool that, importantly, is made of the web. There’s quite a lot that a middle school Chase could have imagined up with an infinite, scriptable canvas like Figma.

When it comes to discovering the expressiveness of the web, Figma is a powerful gateway drug.

Markdoc

This week the team behind Stripe’s documentation launched Markdoc, the toolchain used internally to author and manage all of our docs. I’ve had the pleasure of working with this team and Markdoc internally at Stripe for some time, and I wanted to write a bit about why it’s such an exciting tool.

I have quite a bit of experience building content-heavy documentation sites for design systems, most of which have previously used MDX. MDX was a revolution due to the ease of use and familiarity of Markdown married with the power of being able to render arbitrary React components within your document. But in every MDX project I’ve worked on there have eventually been scaling and maintenance issues with closely marrying content/data and code.

Markdoc creates cleaner boundaries between your content and the code that powers and enriches it. If MDX is “docs as code” then Markdoc is “docs as data”. MDX gives authors the full power of JSX, whereas Markdoc requires maintainers to carefully consider the primitives that are exposed to authors, and how they are exposed. Markdoc includes tooling to validate that content has been authored correctly and according to spec, whereas MDX is a free-for-all.

Another benefit of Markdoc is that it doesn’t require abandoning Markdown to achieve customization. While I think some of this has been addressed in MDX v2, consider a case where you want to render a <ul> with a custom class name attached. In MDX, you need to bail out of Markdown and fall back to HTML or JSX:

# Some fancy list:

<ul class='fancy'>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>

With Markdoc, you can attach an annotation to Markdown elements while still using Markdown syntax:

# Some fancy list:

- Item 1 {% .fancy %}
- Item 2
- Item 3

This is a lot easier to maintain and also retains the value of a Markdown powered authoring environment—Markdown is easy to use, even for non-technical contributors!

There are a lot of other reasons to love Markdoc that I won’t get into here. I am a big fan of the tool (as a user, not just because I work at Stripe) and I’m leveraging it to build the documentation site for Stripe’s design system. Congrats to the Docs team for creating such a robust tool and for making it available to the world as an open source project.