A colophon is a publishing term that describes how a book was made. This is that, but for a website.
I wanted a personal knowledge base that was completely non-hierarchical, but well networked and allowing for serendipity. I liked the idea of "digital gardens", but I also found the context of an immutable event log to be too valuable to exclude. The result is a marriage between the two, with a system structured around me being able to make brief, tagged "stream events" that show up at the bottom of every manicured "garden" (wiki) page.
The Garden is for living documents, which is the "knowledge" that is fed by the Stream. It is the "what" to the Stream's "how". Where the Stream may contain notes on the process of a project, the actual project lives in the Garden.
The Stream is where actions occur, in chronological order. Every thing that I do happens in the Stream, though you can filter the Stream to narrower views focused on a specific topic or project.
This makes it not only easy for readers to follow my train of thought, but for me to do so as well. If I'm ever looking at one of my own pages, my recent thoughts on the topic are directly visible on the page, ready for me to connect those ideas to what's already in the garden.
This site was built by hand, using two small CLI tools that were also built by hand. /sam is a tool that makes it easy to write XML (and by association, HTML) by hand, and /collect is a "plain text programming language" that makes it easy to template, iterate, and render blocks of text. Together, I write this entire website in a text editor.
September 2, 2023
/stream /colophon /programming /linux
After spending a few hours this week trying to build a CLI that replaces my
jnl shell-alias tool and allowed it to publish my website, I spent a few more hours today really thinking about the difference between a shell script and a program binary, and if I wasn't creating unecessary complications. This project of porting a shell script to a Rust binary taught me a lot of things about the nature of the shell as a computing environment, and pushed me to try to keep these tools as shell scripts for now.
I ultimately don't feel like the scripts I have now are the best version of this tool, but I also don't think that the compiled binary I was building was any better... and it was going to take an order of magnitude longer. I'm going to sit in the discomfort of these unfinished tools for a while as I continue to shape the /coalescent computer environment, and at least enjoy the fact that it's much faster to add entries to my website logs now.
May 24, 2023
/stream /technology /programming /collect /colophon
As I started fleshing out components of this site, I wanted to add some new features to /collect. I added the ability to reuse the name of a @map as a value using "$NAME", and it can also be interpolated in strings with "@name". I also exposed a list of the @group objects on a @map using the value "@groups" on a @map. The first change reduced redundancies when writing new stream events, and the second made it possible to render all of the groups for each stream event.
May 23, 2023
/stream /reading /colophon
Read The Garden and The Stream, by Mike Caulfield after seeing it linked in Maggie Appleton's digital garden post, and seeing it use the same metaphor I stumbled on for this site.
I appreciated the interpretation of the history of the "personal web" through the lense of "streams and gardens", with the early web going for a garden metaphor (open wikis), and getting eaten by the stream metaphor (blogs, RSS, social media). Mike suggested that the time may be right for the garden to return (this is from 2015), and this tracks for me with the rise of Roam, Obsidian, and the general movement around the smallweb and permacomputing.
/stream /reading /colophon
While trying to read more about digital gardens, I checked out this piece on the history of digital gardens by Maggie Appleton. It was in this piece that I saw the link to "The Garden and The Stream" by Mike Caulfield, and found some gems around thinking about "topologies", as well as providing "epistemic transparency".
/stream /technology /programming /colophon
Built out the rough framework for this website, settling on the complimentary "garden" and "stream" metaphors.