research questions | Research Interests.canvas | learning | research memos

Collected works

Open Tasks

function callout(text, type) {
    const allText = `> [!${type}]\n` + text;
    const lines = allText.split('\n');
    return lines.join('\n> ') + '\n'

const query = `
not done
path includes ${dv.current().file.path}
group by heading reverse

dv.paragraph(callout('```tasks\n' + query + '\n```', 'todo'));


2024-01-08 week

  • #ideas/software arena backlinks extension like ampie for seeing where you have already connected a piece of media.

grasping at something…

  • i started writing notes on a new internet recording what people from various corners of the frontier of “reinventing the internet” are saying and proposing Along with the increased mainstream coverage about the poetic web, html energy, and cozy web practices, it really seems like this year will be the start of an accelerated normalization of the desire for a better internet. Bluesky has a ton of hype accordingly and decentralized web movements are becoming at least semi-legible to normal people. (In some ways, the acquisition of Twitter might be compared to the election of Trump in having an overall positive effect on the ecosystem by providing a traumatic “wake” for common people).

2024-01-01 week (we’re going by weeks now)


  • plan out playhtml stuff (and apply to ideo application)
  • finish ideo creative residency application
  • finish vox populi application
  • start just tech application
  • ask for help in my latest tiny internets post rounding up everything


  • started reading the 365 RFCs by darius kazemi. It’s fascinating to see that the original ones were just meeting minutes done by young members in the group and that the people of the working group (joined loosely across different states in a time of no internet… because they were making the damn thing) thought that they were just speculating and that some set of “official designers” were going to come in and do the thing for real after them
  • In tandem, I started reading Designing an Internet which I hope will give me a greater technical depth as well as socio-economic and political context around and implication of internet history.
  • also saw that is hiring an expo dev.. could be interesting to collaborate on this? maybe should reach out just to see


  • #ideas/software make a github action to upload to a coda form
    • make a small microservice to host images temporarily (~10 mins) for uploading purposes (how costly would this be?)
  • people to send a holiday email to
    • robin sloan
    • robin berjon
    • [ ]



  • #ideas/writing/newsletter girl and boy software ^d79224
    • girl dinner is a phenomenon of creative resilience in sustaining ourselves, subverting traditional expectations for dinner
    • girl software is the same applied to technology — a creative subversion of traditional software norms using what is at hand. Native HTML without styling rather than fancy component libraries, handcrafted animations on the tiniest details instead of a polished mobile page.
    • obscure references and personal dedications and handmade collages of phone pictures rather than seo-optimized content and GPT-generated images
  • #ideas/writing/newsletter gift guide + building spines 2023 gift guide


  • #ideas/writing/newsletter a piece about tiny web libraries and the power of them
    • medium-zoom is something i keep coming back to
    • also maybe include tiny tools in general?


  • hmmm could smile exchange be done on gather?
    • primitive version is easy… just tell people to share a link to their collection that follows a specific format to some website
    • what if you want to actually change the interface though to ensure valid format/schema? maybe at this point you can ask AI to clean it for you.. but i dont want to pay for that sooo
    • the really extreme version would be adding some sort of component specification system where you can create a “schema” for a collection that then automatically shapes the block input…
      • or maybe it juts asks you to fill it in in the “organize” section if it doesn’t fit the proper format.


  • holy shit i think i worked like 8 hours today, 4 of which happened from 10-2 lol but i made a ton of progress on gather and its getting really close to being able to send out to people
  • 2023-12-12 victoria kirst really helped with regaining my conviction in going on all in on myself / at the very least giving myself more time to explore and embrace my creative side and various interests. I think i really need to focus on one thing at a time though to build momentum and should really carve out space for the things I want to do that I’m really scared of doing because ive never doing something like those before (hardware, art, etc.)
  • also good conversation with joel Gustafson… but he’s unsure about the compatibility between at protocol and the local-first stuff I’m doing.



hello again research log, it’s been almost a month since I’ve written in you. In the weeks since, I traveled to Nepal and Bhutan with my family, encountered a wide range of obstacles from destroying my laptop battery, crashing on an intense downhill bike ride, and getting sick when finally getting back to Houston. I’ve been stuck in bed and in the house the past few days, catching up on new shows, rewatching old shows, sleeping a lot. I guess my body has called for rest finally. I briefly pondered continuing this cycle of consumption, driving it to the point where I get so sick and tired of all the consumption that I’ll be repulsed by it for a long time. It’s been almost a year now (truly) since I started my funemployment. Even writing that sentence makes me pause for a minute to truly understand it. I never would have imagined giving myself this amount of time for myself. If I hadn’t been laid off, I can imagine myself still hanging on at Coda, my resting inertia building to a boiling point but still, not having the capacity to summon the courage to quit and bet on myself. Looking back, I can truly consider being laid off a gift. Given the choice then, I want to say I would have volunteered myself for it, but who knows whether I would have given myself the chance even with the promise of the severance.

I’m reflecting on my log from 2023-11-14 where I revisited the venn diagram I made at the start of my “research” journey. I think for next year, I’d like to have a solid, concise way of describing what I am doing and what I am after and a clear set of 3 projects that I’m focusing on at any given time (with a single project as the main focus for each week). It weighs a lot to have a ton of projects weighing on me at once, and I also need to find some good schedule of consistently producing art projects in my “spare time.” Above all, I need to work out a schedule and routine that works for me, and work out consistently when I will have a desk and when I won’t.

… a gather interlude. I think what I’m building is a tool for cultivating homegrown databases and more colloquially, a tool for preserving what matters to you (^f9aa57). By creating a cross-platform tool for cultivating your own lists of data, I’m effectively creating a native way for you to manage your own schema-free databases natively without any technical knowledge. These can then be used to sync up to your favorite places (for non-technical people), used as databases for different personally-curated sites (ranging from just you, to a select list of collaborators, to open to the internet to add to [append-only]), and surfaced as desired in the context of your existing digital environments. Collections like these can range from things you want to remember, to your evolving statement of purpose, to the things that made you be grateful for the world. …

It seems like the main projects I should focus on are gather and playhtml. They work together nicely, in that gather can fuel the data for playhtml-powered websites. But it’s also good for me to define milestones for each of these projects so I can find a stopping point.. I think it’s still unclear to me especially how I will make a sustainable living from all of these things. Like I don’t actually see any world where that’s possible unless I go the indie developer route and I don’t think I can go that route without giving up some of my other desires in terms of art and research.

Soooo what do i do with my life. I just listened to a metamuse podcast with steve ruiz of tldraw and one key thing that stood out to me with how he ended up betting on tldraw is that it was a commodity-like system that still lacked a great status quo. Like with text editors before, there was no standard drawing component for people to use in software. Steve aimed to become the status quo with an easy extension system for people to make their own objects on the canvas. This doesn’t really ring true for the things I’m working on… playhtml is completely dependent upon partykit and cannot survive on its own. gather is not really a component for people to plug into an existing system, it is an incredibly personal and people-first tool. I guess all my things are very personal and people-first. It shouldn’t be a surprise because the thing that really draws me to any project is the possibility for creating systems of solidarity.

Creating systems of solidarity is not exactly the best pitch for something that becomes financially sustainable.. which means i need to find some benevolent container for working on these kinds of things in the form of grant or organizational money. It’s starting to feel like I can’t have it all, in fact. That i need to choose among all my varying interests what I will focus on and what I will drop. Do I want to be an artist that creates works to provoke the kind of solidarity that I care about while not actually being able to work on the tools that provide that future?

One separate thought is that I’m certainly dividing my time far too much and maybe it would be best to try out ~1 month stints only focusing on certain kinds of work to test out what kinds of things I want to be my life. For example, a month only for net art. a month only for research work. a month only for physical arts.



  • spent the morning re-creating a venn diagram that graphed all my creations this year against broad areas of focus that crystallized while i brushed my teeth
    • questions
      1. how we collaborate/share space online
      2. how we make technology that feels human/natural/different/real?
      3. how we collect/organize/share the digital data that matters to us
    • these all uplevel to a high-level “how do we move beyond our current internet narratives” -> reimagining new internets lecture


  • thinking about how to segment all my work and my “meta infrastructure” again and can be like my own personal wiki that i link to for “background” and context for all projects
    • every “project” should have its own dedicated domain though and simple website, like i love living should have a domain where you can download the shortcut




  • playhtml bag to facilitate can-take game.


  • send email to Robin Sloan with updates, and ask to meet up / advice
  • reading what’s in my bag (sent from jess) that talks about the rising trend of “#whatsinmybag” on social media. What people carry in their bags are becoming ways of marking hyper-unique identities. At first, it served to show how much we were defined by what we consume as celebrities used this as opportunities for sponsorship and quirkiness. Then, it was turned into something more satirical with “#trinkethaul” where people show the random items that they carry around their bag and the tiny little decorations that show off their specific personalities.


  • i hate react native so much. tbh it’s really not worth it lol. the styling is so unintuitive compared to web. Sometimes things work in one place and the exact same code in another place produces a different styling. There isn’t a good way to debug because so many variables are at hand. Maybe in 10 years cross-platform development will actually feel good


  • watching some talks from Splash 2023
    • ink and switch talk about embark
      • involving Geoffrey Litt on creating a dynamic document (coda-esque system except that looks more like roam with a purely outline focus)
      • interesting take on separating things into data, computations, and views
        • data: materialized as mentions
          • unclear how data is synced but effectively combines things from across different schemas and they automatically take on a named formula equivalent to the titel
        • computations: as formulas in which you can us {} to type new ones and automatically see a preview on the canvas (an obsidian live-preview-esque system)
        • views: as both inline and full-screen side objects
          • inline automatically filters to just the children under the direct parent (really nice use of the structural relationship)
          • full-screen takes every eligible computation in the document and renders it
          • i guess this works by having “eligible” schema objects for any view
            • this gets hard to actually keep track of though
      • I think the best part of the approach is that they made it really easy to reference new data from external sources and put it into your relevant view. And also taking full advantage of the parent-child relationship.
        • This has its own challenges in that the relationship only works well for some kinds of data relationships (where there is a strict hierarchy between one thing and everything else) and not things that are more associative or can be modeled in different ways (granted, they themselves acknowledged this limitation and don’t think that is the proper long-term answer)
  • make a postcard ✅ 2023-11-06
  • write out spec for playhtml can-take
  • start twitter funeral stuff
    • have this be a burial place for social media sites that have died before?


  • read new launch from replicache called “reflect” which is a multiplayer sync engine backend (like partykit) but inspired by game state reconciliation rather than CRDTs. You basically have a timeline of events that happen and a central server is the definitive authority for sending the new state of things (but each client updates itself on its own). This is very similar to what coda did with their operational transform implementation.
  • 2023-10-20 ivan zhao


  • gather as a mix between slidebox and telegram saved messages but social and multiplayer
    • this matters because it is useful indicidually but comes to life when given open data access and available to friends
    • project importance
      • is it provocative? does it reveal a new way of seeing?
      • is it fun? does it inspire play? is it fidgetable?
      • does it make people feel more connected / allow them to relate to one another in a new way
      • can people use it in unexpected ways?
      • do people feel invited to join


  • good day of work today
  • coworked with matthew siu, he’s also looking at an extension
    • #ideas/writing clever approach of approximating prototype by retrofitting existing available tools to test out a specific approach (e.g. using and roam side-by-side to simulate a side-by-side approach). Should try this with texting self for gather


  • kidpix home screen is wild


  • discovered that any partykit server for playhtml was eventually running out of memory, and it’s because “edits” are first-class in yjs and seem to be stored permanently. So really the solution is to stop using yjs altogether and use partykit natively because I don’t care about the history of updates.
    • this will be the big 1.0 release?
    • ok so there are two options here, 1) to stick with yjs and implement some optimization server-side that regularly prunes the doc and 2)
    • playhtml webring indicator in the bottom right, optionally disable


  • discovered the internet used to be fun by Rachel Kwon, a catalog of blog posts that essentially calling for personal sites and domains as a solution to the ad-ridden, feel-bad internet we have today
    • her site is a nice, clean manifestation of these values. Sharing things with people who might have found their way to their internet corner, like what they’re reading right now (a Goodreads widget) and what they’ve been watching (a Letterboxd rss feed using to get an html version of it). This kind of live




Intention: get dreamscape set up, try out stencil? publicize playhtml react support, try another archipelago experiment, catch up on one solidarity infra class, set up personal server via cloudflare workers

  • watched podcast from james pearce on tinybase to compare with playhtml and wrap my brain around it. I think I basically built a worse version of tinybase with playhtml (except really optimized for multiplayer and with functionality that works out-of—the-box with vanilla html elements)… like his same aim was to handle small amounts of in-browser state, do it local-first and then provide syncing. Rather than provide any sort of default persistence, he provides persisting adapters (persisters) to different sources (partykit now, sqlite, etc.)
    • the only thing missing is configurability on persistence, syncing, localOnly, etc.
    • also how do you handle privacy and security on this?
  • i think im realizing that i need to develop much much stronger taste and higher standards for what is worth my time. The reason I’m so restless and overwhelmed is that I am keeping tabs on a million projects that i think are interesting and cool and I can’t focus on any one of them fully. I’m not some god that can churn out projects every few days (especially not if im still thinking about all of them at once). I need to figure out ways to put things into a box that I revisit every week rather than keeping tabs on them.
    • maybe I start a weekly practice of reviewing any#ideas that showed up in the past week
  • starting the state persistence playground and planning on using tinybase and partykit to wrap everything. Need to think of good examples to showcase even kind and then some graphic for the post?
    • examples
      • just a text input
      • cursors in a box
      • a guestbook list of time visited and IPs
    • also need to distinguish between sets (append-only ones) and individual values



Intention: start eyebeam, figure out direction for basket, unblock riley on soundscape work, catch up on other work

  • worked with riley on dreamscape, getting close to getting the windows working
  • caught up with raymond zhong for gather work, a much clearer direction fleshed out now



  • finish basket collection view ✅ 2023-09-27
  • write down ideas for designs to explore tomorrow ✅ 2023-09-28
  • setup repo for soundscape, make playhtml work for it ✅ 2023-09-28
  • publicize playhtml react support
  • make a playground for playing with the spectrum of state persistence state persistence playground


Intention: working on basket today, get things working

  • for basket
    • 2 core parts
      1. foraging: a toolkit / accessory / (this is what needs to replace arena and how people use it currently)
        • maybe good time to test input methods for structured data like a plain-text / potluck-esque input for structured data plain text transfer protocol
      2. found object creations: extending on top of what you have already foraged to create new interesting combinations, archives, apps, practices, rituals, etc. (revisiting what you find important, tiny social networks, folk archives)
    • two core motivations ^a03202
      1. a medium for curating your taste and expressing your creativity even (and especially) if you don’t consider yourself creative (through enabling creating and tending to named collections).
      2. place to publish these things safely for the people i care about to see them and make spontaneous connections with what other people are thinking about (relating to them through what they are paying attention to and what is catching their eye)
    • positioning: an app for notes app poets, for hobbyist collectors, for digital foragers, for home archivists, for scrapbookers, for tumblr homies, for twitter thread obsessives ^564ce9
  • i really like the theme that mmm page is using for their branding


  • #ideas/website which is just a dom that is playhtml layouteditable / contenteditable
    • this relates to iframe quilt and ran into ^09d300 from a year ago. Something is in the water here.
  • I want to think about what I want from my work. It’s okay that it comes in ebbs and flows but maybe it’s time to revisit my purpose and my purpose… Thinking about the Marina Abramovic quote of another guy’s quote about how “if you’re a good artist, you may have one good idea, if you’re a genius you may have two.” What is the singular “good idea” that I want to work my life towards finding?


  • #ideas/website colophon where it actually functions like it used to where people could leave detailed comments. More broadly, creating a generic solution for having a core “host” that moderates things that people submit, but still everything people submit is kept locally in localstorage and pending until accepted by the host. hosting on the web (being a website host)
    • should playhtml treat this as a first-class feature?
    • also see “moderating” and “moderation” re: ^185537
  • #ideas/writing a case for the open and cozy internet: increasingly the dialogue around these two concepts has been to show that they are on two ends of a spectrum. You can either choose an open internet, where you are at risk of getting barraged by millions of people, harassed, and taken advantage of, OR you can choose a private cozy internet that is invite-only (but also can be inherently stifling and exclusive). There’s an in-between I’m reaching for that feels like your local cafe, library, or community center. Where it does feel cozy, private to a degree (you can’t just come in and cause a ruckus without consequences), but it is also inherently (and radically so) open to everyone, which is something we need more of in this increasingly hyper-capitalist and transactional world.
  • thinking about archipelago and iframe quilt#toremember
  • chia made a new memorial site to the phillippines with a bunch of candles that people have to collectively light together. very playhtml-esque but with greater reverance and intention with each lighting of candle. good inspiration for twitter funeral and the performance part and having people gather their tweets and plant flowers (seeds??) and then have them sprout after the funeral?


  • starting on gather work, where the logs will be captured in gather log
  • thinking about the meta infrastructure for people to do things (anything) and live at their full potential and how asana founder talked this up as for why asana was critical but this really applies to things like poetry and art that enables the capacity to dream and imagine.. maybe thats what i care about and want to enable. the infrastructure for human imagination and resilience



  • for today:
    • get playhtml react working
    • fill out html garden bio, draft promo post ✅ 2023-09-11
    • send out AT application for SFPC ✅ 2023-09-09
    • toolshed app?
    • interaccess?
    • letter to matt ✅ 2023-09-15


  • call with raymond zhong, i think about to have foundation to get going on forage (fka list protocol), created an channel for inspo
  • looking at domain names for my website and frustrated that the “official” list of TLDs from ICANN includes ones that are proposed (from like 8 years ago) that have not been integrated or actually supported in any capacity. Includes some bangers like .play, .room, .joy.
    • Talked about the idea of WECANN with jacky zhao, apparently they did something similar for distributed press
    • Researched this more and would need an alternative DNS root, and even then, it would require users to manually change their DNS settings to point to a name server that you host (preferably at edge around the world).
    • Tried registering with OpenNIC, an existing alternative DNS root, and got stuck at the registration phase because their registration email sender is broken 💀
    • #ideas/art would be a fun art project to allow anyone to register their own domain, but it’s kinda useless bc then no one else can access it? unless you can proxy somehow..
  • writing bio for folk programming essay and filling out an app to be an AT for solidarity infrastructures sfpc class in the next session
  • #ideas/writing i should write as some point about how to set up participatory / communal websites that handle moderation easily ^185537
    • my coda moderation combo is really nice but i need to figure out some way to make this scale in the data layer (an actual database that feeds into coda and then coda is the final source of truth..?). This only works because it’s append-only.


  • reading Notes on Creative Context at prompting from matthew siu and it is incredibly good.
    • “Creative projects are primarily an emotional event, not an intellectual event, no matter the external form, and emotional and intellectual problems are intertwined.”
    • This has been the driving force behind the making of bulletin, i love living, and generally archival practices. They give you the infrastructure to cultivate these emotional tupperware you care about. And why I’m so attracted to projects like glance back, hijack your feed, anything that has to do with widgets and ambient computing
  • figure out performance part of twitter funeral
  • playhtml add react support? ✅ 2023-09-11
    • researching this and also web component support and getting really confused about the best API and model here to make everything work across platform. I want
      1. a generic and easy way to store state specific to a component where I can programmatically determine how its syncing and persistence (sync collaboratively & persist, sync collaboratively & don’t persist, don’t sync & persist (locally), don’t sync and persist (remotely)). Ideally I can also easily add on specific capabilities that other people have already created state handlers for without having to code it myself (can-move)
        • the first part points strongly to a state management library that sort of goes on top of Yjs so you don’t have to worry about their collaborative types.. but can you really abstract that away? It seems like this only works for simple data structures that are just keys in an object, but once you get to actual complex objects and arrays, i think the end-programmer needs ultimate control on how to merge new synced data… So how much can you really abstract away?
      2. a way to get wholesale components from people who have designed it (with state management, styling, and everything included).
        • i guess this isn’t really new but the new part is that you have all the state sync and persistence built in?
    • can i get this with pure web components and stencil? it seems like they support children natively (just not any knowledge of them)
      • I could bundle all the capabilities into web components to make it react-like and then it would just work across all platforms, like <moveable>



  • finish memory pouch stuff and submit ✅ 2023-09-03
  • finish final edits for folk programming essay ✅ 2023-09-05
  • make fridge poetry generator ✅ 2023-09-15
  • finish research post for the week ✅ 2023-09-05
  • ive been looking at the htmx guy lately, an indie developer based out of montana. He’s been doing his stuff for over 10 years now.. starting with intercooler.js (which depended on JQuery) which then became htmx that removed that jquery dependency. and he also teaches at Montana State (presumably to make ends meet?). This is giving me a lot of renewed hope in my explorations because they really just take a lot of time. I can’t expect for things to magically work out for me in only 6 months of doing things… and in that much time, I’ve been able to accomplish so much.


  • was feeling very restless and existential today and wondering what amounts of my work mattered. what am i doing with my life anyway??
  • I was thinking about playhtml and what would make it “successful” in my eyes. I think it has the intended cultural impact already. When people first see it, it’s the exact kind of reaction that I would want—for many, it challenges their entire notions of how software and websites are supposed to work. They have to take some time to actually understand everything that is happening on the screen. To others, it just looks like a silly example for fun. And I started wondering about whether the critics were right… After all, I don’t know of anyone else using it besides me. (I need to ask friends who have seen this why they haven’t used it). But in the end, I’m doing it because it feels interesting to me and points towards the kind of world that I care about. As long as I’m finding more about myself in the process and doing things that feel right and important in every moment, it’s okay if it doesn’t have the reach that I was hoping for.
  • For so many of my projects, I seem to set out with the wrong criteria… In that I am using impressions and virality and (mostly) Twitter numbers to judge the success of things on. But in my independent state, I don’t really know what else to judge things on besides the highest signal thing which is people actually reaching out to me or using things actively.. There’s no measure for how things actually impact people’s perspectives on things. For playhtml, maybe I just need to keep banging the drum and showing people and making it easier and easier to use. Probably the next thing is going even lower-level to expose general event listeners
    • can-pointer-over should broadcast to all clients… Need some way to attach a listener to the top-level firehose and then switch case on the kind of event and target.
  • I’m reminded of how to judge the success of my independent moments: every day should feel like fun and a gift. I should feel love, curiosity, wonder, gratitude, and excitement all come to me easily. I should feel like I’m living each day true to myself.


  • watched the sunset and then the blue moon rise with matthew siu on top of corona heights
    • im starting to test my own memory pouch practices, starting by saving my order slip from El Farolito in my Neighbor Totoro pouch designated for meaningful papers
    • I’m learning how to vocalize this obsession with containers for holding things… It’s like what laurel says in her talk on eggs, where eggs are containers that you have to nurture and grow… Creating the container for something does so much work in actually making you pay attention to what you want to fill that container with, so when you make a container for a specific purpose of collection, you start to notice all those purposes in the world around you. (laurel’s How to Build a Bird Kite NYTimes piece was a wonderful inspiration for my pouch work.
      • This same impetus is what’s driving me to work on forage (fka list protocol) and gather… They are giving you the basic tools for creating containers. And those containers when shared among many people become incredibly fertile material to create social networks around. has so much potential to do this but it doesn’t do it well.
      • So then we need to give people the ability to create containers, name them (and designate their purpose with ritual significance), and cultivate and nourish their containers such that they flourish. The first two are pretty common around “collection” apps and tools, but the last one is really where you have to focus energies. What does it take to actually garden collections such as these?
        1. Revisiting: You probably have to have some customizable mechanism for revisiting, pruning, and doubling down on things that keep popping up. You have to be able to pick out the promising seeds among the bad
        2. You need some way to add extra metadata to keep track of everything that you care about (ideally the easy, rote kinds of these things become automated by little geists or Taylor Rogalski’s pico)
        3. You need an easy way to plant new seeds, to trial them and then prune (see 1)
        4. sharing with people, inspires new ideas, transforms the garden
        5. the collection needs to synthesize somehow into an artifact (or other kinds of “output” checkpoints) that form solid markers in your head for single addressable entities
      • in Laurel’s latest piece On Eggs — Part 3, she says “I only make odes.” She means that she makes things to honor the things that already exist. I align heavily with this philosophy. I believe that there’s already overwhelming, uncomphrensible beauty and wonder in this world. I believe in creating new things out of things that already exist (upcycling old things and revitalizing “waste” or “trash”). I believe that we have incredible inherent power to transform the world, that celebrating the wonder, capability, and beauty of the existing world, we’ll see more of that in the world and use that newly “found” capacity to make the world better for all of us.


  • ohhh im in a weird but productive place with memory pouch stuff. Prototyping many physical things using found objects in my room. this is so fun lol


  • feedback on playhtml from dom
    • never imagined that spaces could act like this before
    • want to see this more in my existing websites or applications i use
  • went to stochastic labs for dinner courtesy of nagle and met max bittker in real life


  • #ideas/website make a The Doc Web search engine, that uses several sources
  • watching more about sarah tze’s philosophy towards art. studio and laboratory as art
    • she likes to set up in places where you normally wouldn’t expect art, to let the everyday shine as art, re-contextualize the mundane into the profound
      • the ventilation line for Tokyo exhibit, next to the freight elevator in the guggenheim exhibit
    • true testament to her ability to make her pieces accessible is that people have apparently left things form their pockets with her exhibit as sorts of offerings.
    • the highline exhibit was both art piece and environmental habitat, actually had seeds in containers to function as bird feeders
    • also this concept of nesting unexpectedly in that people can walk into the structure and only notice subtly that they are within a container


  • listened to the Metamuse podcast with martin kleppman about local-first software.
    • the part about the impact of local-first on the economics of software. right now people pay for SaaS because their data is trapped. Also open-source works because people provide a “hosted service” so that people don’t have to self-host (but they have the option with open-source). How would this work in a local-first world where all users own their data and can do with it what they please?
      • There is certainly a market for the data providers and federators (which is likely what bluesky is going to capture)
      • but what about app makers and software providers? will people pay for it even while they have to pay for data? will you end up having to pay a lot more than you’re used to for software?
      • playhtml and partykit are an interesting first example for this. partykit is the pipes and infrastructure, while playhtml is more like an app (though it’s still more like a toolkit and a bit infrastructure because im hosting a partykit server and persistence for them)


  • full day at dia beacon, and first time seeing one of robert irwin’s works in real life. I’m not sure if it’s my preexisting bias but I really loved seeing how simple it really is, and it was telling watching people interact with it (including an audible “wow”). There’s a concentration of works here that feel larger than life and/or are seemingly ordinary and as such betray how much work and dedication is inherent in the work (walls of white-paint paintings and seemingly cookie-cutter typed out dates which were actually painstakingly created on the date listed (or destroyed if unfinished).
    • I’m thinking a lot about presentation of works and immediate impact while walking around in the galleries. I think the impact for all art is personal, and the danger of “fine art” is that you lose touch with what is actually personal to people at a wide-scale outside of the art world (which to me, is the only thing that is really important). I value things that resonate to me and to other people who are not in the art world. I especially value things that resonate to (or provoke) people who would never expect to “like art.”
    • Watching the dia beacon video of robert irwin explaining his philosophy around the design of the museum, he explains that he “instigates, responding to a situation like responding to a question”


thinking about what I am uniquely good at and what I care about that I want to bring into the world.. that’s the kind of work that fits the most for an independent research phase—the kind that is uncommon, unpopular, and underfunded but at the same time is important and urgent. in my last research memo (people and computers), I extended that one-page tweet that I made in response to visakanv’s prompt.

I’m revisiting this now and want to explore why it matters and what I contribute towards it that I am uniquely suited to do so. I think this question of “how does the internet become more hospitable for and actively shaped (or governed) by the people who inhabit it?” is completely underfunded (it is not very legible and certainly not profitable work) and simultaneously feels so important as more and more of our live are not only lived but conducted and dictated through digital mediums. People may lament the loss of face-to-face interaction for so many of the important things that affect our lives, but it’s inevitable that more of the things that affect our real lives (the things we eat, the way we live, the government services we access, and the way we connect to other people and maintain communities) will continue to be more reliant on online mediums. When goes down, it is affecting real people with real health problems. When Twitter dies, it is the loss of space for real relationships and communities that may never feel the same again.

I think my unique capability is the combination of an imaginative design attitude towards imagining products and interfaces and the generalist ability to make those what-ifs reality. I’m not the absolute best programmer and I certainly won’t be the best specialist in a certain area of programming, but I can imagine something end-to-end that will make people feel something and enable them to do something they couldn’t do before. I think I’m also good at gathering people together. I am an optimist and a believer in people, and I fight for dreams I have that feel compelling even as they have no active incentive for someone to work on them. I think that’s what makes people feel drawn towards and safe sharing their dreams with me. I hold their dreams with gentle care.





  • starting work on memory pouch today.. and chatting with Aaron Lewis about the best way to do this.
  • forage (fka list protocol)
  • a realization! I’ve been having a tough time comparing and contrasting all the movements I see happening across multiplayer library space (partykit, yjs, liveblocks, drifting space, etc.), the decentralized database space (canvas, gun, hypercore, etc.) and the local-first reactive state space (tinybase, pouchdb, instant, etc.) but one core thing tying them all together is that application code should never have to worry about networking logic in complex online multiplayer use cases
  • reading at protocol docs again in preparation of working with raymond zhong on new project
  • discovered shoelace, a library of common web components, which is great inspiration for playhtml, which should eventually offer web components to “templatize” the web (e.g. the noguchi lamps should be one)


  • launched playhtml officially (see tweet) and spread it around in my channels. doing decent rounds
    • unfortunately someone defaced it with racist words… I had to add a profanity checklist (which i will probably have to add to every single one of my user-input sites from now on)
    • idk if anyone will actually use it but 🤷 it’s been awesome to visit it every once in a while and see things moving around.. There’s a life to the site that isn’t apparent with other sites.
  • finished reading Madness Rack and Honey. What a wonderful tome collecting wandering drifts of sound that felt compelling to Mary. This is one of those books that I will revisit over and over throughout my life and probably increasingly fill with notes and little checks and timestamps.
    • Mary writes the book as if she would write a letter to a dear one. She does not hold back on anything she believes in and she contradicts herself even as she speaks. She embodies the paradox that is poetry. Where it can be both the most meaningful piece of someone’s life and nothing at all, all simultaneously. Poetry would find a home in quantum mechanics. It is well acquainted with the concept of superposition.



  • last night, finished handling awareness protocol for playhtml stuff and got the typing indicators working. After that, i worked on the fridge poetry and got that working too


  • talk with mike masnick for summer of protocols
    • protocol is centralized (comes out of centralization, decentralizes, pushes power to the edges, generates economic growth)
      • everything built on top is decentralized
    • What should be centralized and what shouldn’t?
      • stable things that dont change that much (can be upgraded slowly by committee)
      • enhances value “create more value than capture”


  • revisiting Specifying Spring ‘83 and I found a lot of new content that I guess I hadn’t read since the first time?
    • robin really cares about the end-interface for this—the protocol bakes the interface in in this case, such that instead of a monolithic timeline, the “board” is the main vehicle for communication
    • Reading through the replies by people that I hadn’t saw before either
      • brings up an interesting comparable in web gardens which entail a “greenhouse” of 250x250 with a simple HTML file there to give to others to embed a “window” of their site on yours
      • darius kazemi of course brings up that moderation needs to be a core part of the protocol itself
    • in other news, yaml is bad. It is unsafe by default, the spec is 23k words long (compared to 2k for JSON)


  • watching a documentary about Sky Ladder by Cai Guo-Qiang
    • he attempted to make it all the way back in the 1990s, up to 4 times which all ended up getting cancelled for a variety of reasons.


  • fleshed out the maintenance project for summer of protocols, lot of good stuff from the retreat today
  • for playhtml thinking about more examples and futures
    • need playground
    • would be cool to convert seven 8 nine pacman poem into using this. good challenge of playing with local state branch vs. a single global shared state
  • FINALLY FOUND THE FONT FOR Madness Rack and Honey. I had to ask someone on /r/identifythisfont on reddit in order to find it because the cover did not properly credit the typeface the book was set in.




  • progress on playhtml. Really getting into the depths of it
    • starting on getting a react hook working for it.. Struggling with the existing infrastructure of yjs hooks
    • i really need to get the custom element thing working. That is the only thing preventing me from “launching” it. Hopefully can get that working tomorrow
  • fixed up we-bsite bleeding lol. looking back it was terrible decisions architecturally
  • i did not work on the folk programming essay piece oops. I need to stop putting it off and actually do it.


  • talked with toby and kara for summer of protocols about maintenance work and how that relates to credit culture. I also got the low-down about why independent research is… not sustainable lol and how even the most established people are fleeing to institutional attachments
  • kept working at my folk programming essay piece… trying to figure out best way to arrange everything. jacky zhao gave some more examples and feedback about whether they are useful or not. one possible divide is useful vs. aesthetic. the malleability piece is also very important.
  • getting close to the end of halt and catch fire.. at an interesting point in the series where outside of the core personal drama there is this inherent tension between an machine-first (algorithmic) approach and the human-first (curatorial) approach in the first search engines.
    • i should review the syllabus for all the episodes I missed…


  • need to figure out how to fit a project into the summer of protocols work… i think something in relation to playhtml should work because so many “protocols” of relating to each other are emerging from it.
    • reached out to toby shorin about his and kara’s project
    • I should reach out to kei and rafa next probably
  • reading through the shelter protocol docs
  • progress on playhtml
    • got the localData separation working
    • got a forum component working via can-post
    • added README instructions for all the available capabilities
    • i tried to get custom capabilities working but passing functions through plain HTML was so infuriating almost made me want to ditch the advanced capabilities for HTML and just do React, but then jacky zhao told me about how you can just add global data to the window context, without even referencing it! (it’s implicit). And that every element with an id automatically becomes a variable on the window context. that’s absolutely wild
      • also got some good thinking on how to make a robust ID without a specific one provided. Take the tag name (or combination of tags?) with the index of elements of that tag and hash it to generate an ID… somehow this requires tracking the original order though
  • a lot of inspiration for playhtml and archipelago which makes me want to work on archipelago! but i still am not clear what the final form is…


  • omar + folk from Metamuse
    • “ambiently available state”
      • easy to connect universes
    • visual programming where state is embedded visually enables ambient awareness of what the computer is doing and where
    • folk programming: always already programming
      • everyone wants to program because everyone has opinions on what they want to change in their environments
    • unlocking latent demand (buttons system)
    • challenge w “just make learning it fun” is that some things (esp programming) requires you to familiarize with a whole diff environment, so then we need to make programming environments that are fun while not losing any expressiveness / hiding what is going on



  • 2023-07-14 Greg Slepak: potential work partnership. Need to research shelter protocol
  • thinking about what is the best experience for playhtml. The issue is that I’m sort of serving two audiences currently. 1) html energy people who like to just write a plain html site by hand and 2) developers (even beginning ones) who have inherent preferences about the tools that they want to get things done with (myself being one of these people). Right now the tool is split because I want to make it as easy as possible for group 1 but i’m really in group 2 and also building for group 2 means you need to abstract away a lot less of the logic which also gives you the benefit of making it more extensible for these people.
    • In the ideal world, the group 2 people are able to make such cool extensions that then they bundle that up into a “template” for group 1 people to use by merging back into the open library. This is essential to the growth loop and long-term sustainability of this because it seems like this will eventually cost money due to the reliance on partykit.
    • back to 2… the big comparable that keeps coming up in my mind as a form of reference is the wish system in Dynamicland. The concept of global saved variables seems powerful here. Like I want to be able to just save the states of different objects and then I get to have them interact with each other all of the sudden. So maybe my lamp will turn on when someone presses the button because it’s programmed to change light when button pressed is set.
      • this is much more advanced than the state of the library right now… and would require an entire dependency graph and listener system. soo maybe for version 2 that is the “open world” version of it. I would probably need funding at that point lol
    • so for now… what am i left with for the developer ergonomics? It needs to be more expressive than simply using an existing function in the library.
  • give 2 noguchi lamps to yitong’s demos website ✅ 2023-08-24


  • the threats to the open internet, tim hwang and tianyu are arguing that rising interest rates are one big factor
    • business and open data have had a convenient relationship since web 2.0 because of zero interest rates policy (ZIRP). Now companies are closing off their stuff.
    • they argue that the answer is increased regulation
  • working with raymond zhong
    • personal data collection + distillation of cultivation (working in public)
    • custom feeds of your data + what others are doing
    • broken link for things that you no longer want to see
    • one missing layer is the “personal” collection side, like what is your activity feed of things done? can you collate people’s activity feeds
      • raymond wants to build a personal browser that uses your logins to scrape all info from your various sites
    • bluesky bridge
      • you can use app password to login to somewhere else and then make posts? leverage AT protocol and their servers in order to serve / host data?
    • i want something like for everyone and for all my friends. i want to hear their unfiltered thoughts streaming through.
      • interfaces for this?
        • the best interface is the fastest interface
          • (or what people are already programmed to pull up immediately)
          • notes app
          • text app
          • social media of choice (so bluesky may actually become the best option here in the future…)
        • a single obsidian text file separated by --- and with a common schema
        • i need a way to scrape this…
          • can do it locally and then upload
          • can do it via API but limited depending on your API provider
            • could also potentially leverage one of those plugins to automatically API relevant files up
      • i guess this is the premise of Twitter-style social networks.. but why don’t they feel safe to do this? We want different identities I guess and this definitely feels like a more intimate flavor of identity?
      • this forms a yin/yang with the personal browser idea. one has very distinct vibes and is easily programmable and wants a single-purpose interface. the other is the underlying infrastructure that i want all my data saved to.
      • what does a personal database actually look like? (is this actually what the personal browser is?)
        • how to get around TOS against scraping?
          • build a phantom process that keeps all relevant tabs active and magically scrapes them?
  • alternative twitter frontend that just leverages all of the internal API in order to not be bound by developer agreement / API to render in a no-javascript / no ads interface:
    • this is what the personal browser should do effectively
  • Resurfacing my quickly written dream of what I care about that I posted in response to visa’s question


Intention: need to read the rest of the summer of protocols papers

  • reading Saving Time
    • Pieper’s concept of “vertical time” “running at right angles to work.” This is the promise of “leisure,” the interrupt, break, comma, etc. in the always-on life of a capitalist lifestyle that gives you the opportunity to see where you are, to situate in the grand scheme of things. What kind of space for rupture can we create in imagining a new future for computers?
  • great suggestion from julius tarng on playhtml
    • it’s almost like building a dynamicland-esque system on top of the web and HTML elements. This is equivalent to wanting to depend on “global” variables that are just events emitted by normal HTML elements and make wishes based on those events.
    • this would involve a non-trivial revamp of how the library is currently structured… Currently, the can-capabiity syntax is an entire package of input method, state management, and functionality. julius’ suggestion means having some will-click structure that will broadcast events for the affected object. giving that element can-move means installing a “move package” that will listen to all events from the universal event stream that affect can-move elements and require
      • where do you store all these events or how do you broadcast them (how do you know what is listening)?
        • localstorage / indexeddb / etc. (optionally with pruning over time).
      • will this complicate the library too much? i feel like it adds modularity at the expense of simplicity.
      • i could always upgrade the library to support these lower-level functions at a later date and refactor everything existing to use them lol



  • from dorian taylor’s artifact: “The media theorist Lev Manovich presaged over two decades ago that the database—​by which he meant navigable hypermedia environment—​would be the principal medium of the 21st century, in the way that film was the medium of the 20th.”


  • researching RDF and why it’s so polarizing
    • joel Gustafson says it “in practice RDF is just data modeling but 100x more complex and annoying than it has to be, with none of the alleged benefits ever materializing”
    • also oops i was getting tuple store and triple store confused at some point. Tuple stores are a generic for n-tuple ordered sets. Triple stores are a 3-ordered set
      • a subject - predicate - object structure is only good at very simple data, but anything more complex becomes exponentially harder
  • reading Out of the Tar Pit recommended by steve krouse


  • reading about URL vs. CID
    • URLs are…
      • nice because they
        • easily updated
        • human-readable
      • bad because they
        • can disappear
        • can point to entirely different content
    • CIDs are…
      • nice because they
        • are resilient
      • bad because they
        • are not human-readable (can be addressed with an overlay system)
  • discovered portal constellation, an effort to “revive the webring,” through sarah frend’s site. It embeds a window from the web ring into a site web ring evolution
  • posted about playhtml on twitter and actually got a decent response. I was worried how evocative it would feel because I felt like I got a pretty mild response from people i shared it to originally
    • I’m excited for the potential of this to start an entirely open, public “social media” (tiny social networks) in the interactions that naturally evolve. This kind of thing feels like elemental material, in that it offers so much for people to insert their own personalities into the meaning of the actions. That’s the problem with a lot of existing social media sites, where the actions become so prescripted that there’s no room left for people to invent their own language.
  • I also learned about NPM publishing more (mostly by copying what jacky zhao did with telescopic text and cursor chat)


  • chatted with sunil pai today about partykit and their ambitions for it. Sounds like eventually it’ll handle auth too.
  • I need to figure out how to find users for playhtml. I personally find it very evocative… but im not sure it’s resonating as much as I want it too even though there’s so much cool composability
  • I am feeling a bit lost lately in terms of how to pull together everything that I’ve found and think is interesting. I feel like I need to spend some time reorienting my focus this week before summer of protocols starts (wednesday!! ahh!!)


  • very good progress on playhtml so far… got it working end-to-end!
    • also partykit is incredibly nice with yjs. It effectively just adds an easy persistence layer on top of yjs data. This is basically a lot of what i wanted with small persistent data.. It just seems like a simple key-value store from the UX-side and it abstracts away all the super fast, low-latency real-time syncing (except I do have to listen for updates unlike in React where it handles reactively updating state upon change of the variables).


  • investigate partykit 📅 2023-06-28 ✅ 2023-07-02


  • reading the at protocol docs again
  • reading about multiverse plus and the attraction of a tiny directory to bring people together (this is almost effectively the niche that occupies). They have a very nice interface for picking your profile picture (hand-drawn placeholder) and for customizing your posts. It’s like a mix between mmm page and bluesky by having a single feed (with various configurable privacy settings) for people to post their updates to but the actual content of the message is a multimedia (no-code editor) bulletin, (sort of like what spring 83 created as a protocol except people had to actually write the HTML themselves there).
  • also finished opencoda, first time using cloudflare workers and it was actually quite easy! it also seems like billing is trivial with this
    • release opencoda to twitter 📅 2023-06-27 ✅ 2023-09-19


  • Noguchi’s emphasis on play and participation is just like all the other artists that I find inspiration in. fka twigs also created a music video for the foundation about his philosophy. His light lanterns (read: sculptures), known as Akari, were ridiculed in the fine arts world when he premiered them at the Biennale in 1984 but now are viral across the world. They are truly one of the most accessible pieces of sculpture and beyond their elegance are made to go viral in the aesthetic of today’s age. I’m thinking now about what is an even more accessible level of art and something inviting play and contemplation, and of course, I think of Nintendo. One could consider Nintendo’s products a form of interactive sculpture. A handheld piece of art that captures the room for those who notice it.


  • i visited today and caught up with Omar Rizwan. they’ve come a long way since I last saw them and have full interactivity that works like a circuit with a folk tag that is split apart and only comes together from “pressing” down a paper button
  • I played around and created a program that had a lot of external dependencies. It was a ticking bomb that drew a circle that kept increasing in thickness and flashing colors until the timer was up at which point (if i had more time) it would explode into a bunch of tiny blobs. Pressing on the button would “defuse” the bomb. It felt so cool to be able to literally go through pieces of paper to find the correct reference and then also just be able to create new “programs” on the fly from the web interface.
    • the UX around dragging the program editor window around to control where it appears in the projection was superrr cool
  • omar also advised me to just do the things that i care about now. that the important things will return, that he just chases whatever immediately feels valuable to him
  • finally read Kyle Chayka’s The Dream of the Personal Machine and#ideas/writing is to create a counterpart of “the dream of the communal machine” in that nothing was ever really “personal” the computers were always communal due 📅 2023-06-23 ^6ca81e


  • talking with james addison (silicon jungle) in email and he mentions something very relevant to computing shrines
    • “For a few years now I’ve had an idea for a little app where you can get a QR code and stick it in a book and it acts as a little guestbook for all of the owners of “that exact copy” of that book. So it ties physical space to digital space. I love that it shows the “history” of a physical object and encourages people to pass books on after reading. I think I still have many questions around what are the most interesting ways for people to express themselves in that sort of medium. (It reminds me a bit of geocaching as well as there is mystery and you never really know when you would uncover one of these spaces when you get an old book from a second hand bookstore, etc).”



talk with humphrey about communal computing or digital gardens revitalized. I realized that we’re effectively tackling the same problem from different sides. We both want to give agency to people to self-determine. He is looking a lot from the civic-side and how we can change policy and empower communities to affect policy. The main things he talked about were sensemaking, collective decision-making, and ultimately, communal self-determination. These often involve putting formal structures in place such that people can feel the trust necessary to do these things. He wants to create sweeping changes that involve empowering people to “future.” I also care fundamentally and deeply about empowering people to “future” but I focus my efforts on participatory experiences such that people get practice doing this sort of futuring, imagining, and collective creation that shows them not only that it’s possible but that it’s important. I focus instead on the “small” and extremely emergent, and my thesis is that the upswell will create the dramatic change that I care about.

We talked about the concept of public computing, which refers to any kind of computing in the public. Humphrey gave a great example of ATMs which are an unexpected form of this kind of computing device in public.


I finished Internet for the People and it captures a lot of my concerns and gestures at the future. We need to imagine new forms and ecosystems for computing and technology, following abolitionist logic. Now I’m reading the latest from Ben Tarnoff who still resonates a lot with what he wrote but feels like his focus has gone to somewhere else. He talks of The Technologies of All Dead Generations and how we are currently in a third-wave of technological accountability. He thinks this is critically necessary to imagine a new alternative but also that we must do so without losing sight of the critique of the existing system and the awareness that we are always operating inside of it. Dialectics specifically is the “self-consciousness of the objective context of delusion; it does not mean to have escaped from that context.” (incorporate into communal computing or digital gardens revitalized)

I want to create this “wake” for more people. this is the kind of agency that I speak of towards computing.


Intention: Conclusions:


  • finalize html garden stuff
    • dandelion fields?
    • from jessica zhou, it looks like a petri dish right now, problem is no depth, and html elements are 3d rather than 2d lines
    • maybe group the species together




Intention: for tomorrow, work on html garden and finish summer of protocols and work on some stuff for the for love and science sfpc class project Conclusions:


  • There is certainly a lot of hype over the LLM stuff, increasingly so with the release of GPT-4 lately and its ability to accept multimodal input (images)
  • idk how I lost this reference, i guess I never wrote it down? but thinking about Ise Jingu
  • #ideas/art a communal website which the community gathers to rebuild every 20 years like Ise Jingu so that we pass down our handmade processes for creating sites to new generations
    • we need to cultivate more of this in digital spaces: “tokowaka (常若), which means renewing objects to maintain a strong sense of divine prestige in pursuit of eternity, and as a way of passing building techniques from one generation to the next.”
  • talking to raymond zhong about summer of protocols
    • take all the diff movements and collectives and founding arcs and try to come up with metaframework around them . ICO culture
    • venkat vs. soft people
    • im going to write a 2500 word essay on chill
    • do the plain-text protocol one, but in application focus on the GPT aspect of it
      • find diff examples of GPT as emergent protocolness
      • make your investigation about emergent protoclness




  • #ideas/website a plant shop for your website where it gives you a plant that grows over time without requiring any state management of ur own using a seed date and an L-system and an interval specification. you have to “prune” it by updating the url it pulls from with a new seed date
  • #ideas/website konami code for websites where you have a simple API call that gets the code key, anyone who does it can have access to elevated privileges
  • tools for ritual making
  • field notes on being a creative 02 (the art of collecting)
  • #ideas/software riff on my coda trojan horse thing where you have a table that is append-only when embedded to replace lists that you want to be collaborative inside an essay. e.g. wanting to make a list of spectrums of collaboration and wanting to solicit communal feedback. (or can you easily add these from a twitter thread where you ask? also thinking about instagram polls and wanting to convert those)
    • our sites of distribution and collection are completely disconnected from our sites of storage and preservation small persistent data
  • interesting method people use to keep repl.its active by using different schedulers to consistently ping a replit so it doesn’t go down.
    • this circumvents their pricing plans and needing to fund an always on repl
    • #ideas/software a replit/database-like wrapper on top of coda? Cambria-style transformations for schema upgrades


  • mathu wrote up some thoughts inspired by bulletin that she sent over to me. core idea is struggling to find a place for dream lists rather than todo lists. She writes, “The thing is, the tasks I’m doing instead aren’t things I even want to be doing. It’s because they’re easy.” This reminds me of the prioritization matrix and the constant struggle to carve out time for non-urgent essential things.
    • This also makes me think about the underrated effectiveness of group chats for accountability and the folk practices of sending an emoji or picture whenever you’re at the gym.
  • #ideas/software simple “recorder” thats a stopwatch x apple watch tracker where you just click a simple button to track things in a simple burst. when you want to count things but also get the time of each count. ^16d588
  • #ideas/software make a simple iphone app that is the app-version of my i love living practice? it could function as a tiny social network site in of itself, where you could see the logs of people nearby. or some global feed of it all happening? ^f542f9
  • #ideas/software a tool that takes in a list of things and surfaces them to you over an interval via some communication method. spin-off of bulletin?
  • added a homepage for bulletin. honestly idk if worth but whatever its there now lol.
  • actually got something working for html garden at like 3am lmao
    • didn’t use bhavik’s method because it got too complicated to keep track of all the things. just added elements procedurally wherever the L-system was already drawing


  • posted my research memos for today, yay! ✅ 2023-03-14
  • manny’s training session and worked until my head was hurting too much. revived with taishoken solo meal
  • things to do later today when im out of energy
    • email henry zhu with notes ✅ 2023-09-05
    • email may li about spaces for internet research lab popup ✅ 2023-09-05
      • write something that captures the essence of this
    • reply to kristoffer + elan ✅ 2023-09-05
  • what is the public good version of VC? — sent out to some people
  • [03-14-23 01:43:19] ok i need to go to sleep now. I finished my sfpc link and sent it out, responded to a bunch of emails, and actually started and finished an idea draft.
    • I need to find a better way to share my ideas and thoughts. I need my own garden on the internet. Something that feeds from my obsidian out?


Intention: new inc, parallel play in digital spaces

  • finished new inc finally. for tomorrow, publish post on play, update unintended commons with the internet checkpoint stuff, progress on html garden.



Conclusions: I need to stick with something for at least a few days of concentrated effort

  • all morning working html garden, learning about l-system and implementing a basic page.
    • next up need to try what bhavik suggested. It’s so nice and such an exponential boost to have people that i immediately “go to” for help about certain things
  • 2023-03-06 sahil
  • small tools should write something about small tools and making them accessible to people without programming
  • comments section



  • 2023-03-04 raymond ef schemes
    • invisible protocols — all social protocols are like this. there are a lot of protocols that govern our behavior. a lot of norms around protocols fall away when you consider them like this
    • summer of protocols
    • how to allow for intersection between different social worlds in a way that feels right?
      • right now its frenetic and competitive


  • I’m thinking about the poetry of computing as I read Upstream
    • she writes about an elemental poetry that concerns the spiritual condition of the body. It refers to a wakefulness, an awareness, an attitude towards the world.
    • #research/questions What is the equivalent of this sort of attitude towards computing? I think it is right to categorize agentic attitudes towards computing under this, but there’s something else beyond agency, where you look at computing and the internet as a medium for beautiful things. Is it that you look at the people and the emergent, natural phenomenon that come from it? This is a bit different (and maybe dangerous?) compared to the way you would look at the natural world because it is, after all, not natural. It is a product of man, and by power-hungry corporations and militant nations, no less. It is poetic to bear witness to and honor the very human, poetic parts of the web, but we also need to remember and work to correct the flawed bases upon which these come from.
  • #ideas/software general purpose sync protocol / service. just write reducers between two things, it will sync for you. general-purpose, community-run api layer of readwise small persistent data
    • so u can “seed” new app w data and keep in sync
    • like fastmail or packs
  • cursor chat bur custom svgs
  • im trying to order a cat thermal printer from aliexpress and failing
  • a hot take on small persistent data is using html. It is very whole data and human-readable, and structured! It is also something people making the web are already familiar with
  • went to a HCI event hosted by Taylor Rogalski
    • met derreck chow too, who is an inventor and digital media artist.
    • his roommate, andrew sutherland, is working on poker chips as tangible computing, qr codes with an aesthetic hexagonal wood thing with a mini camera inside that scans the qr and automaticall y activates a set of actions.
      • e.g. person of someone’s face opens up their telegram chat and adds a note in their note-taking software about them
      • or a spotify record label plays that album
    • also had a paper email system, at 9am every day, it prints out all the emails (that are relevant, personal, etc.) and you can respond inline
      • also fun ideas around using a seal / stamp, etc. for special features.
    • #research/speculations is there a future where everyone has a printer connected automatically to their machine? and that becomes a new digital-native mailbox that is also embodied?
    • also had a thermal printer which he wanted to carry the group chat around
    • I had an idea of hooking up the thermal printer for each other, like we chatted about on poetic computation server
    • very cool set of digital and analog tools to help him in these explorations
      • atherford
      • anybeam


  • make a feed for your window updates, add RSS feed / API for it
  • figure out my new newsletter styles research newsletters or distribution
  • #ideas/software bag of tools ^ffb5e2
    • contextual to a site, eg twitter should have italic generator
    • iframes? can you store local state for people?
    • how to easy input between? can you automate that?
    • functions that take schema..?
    • #research/questions can you turn websites into functions?


Intention: learn how tuple stores work, if time, prototype a super simple version of one. Send out the bulletin stuff. Conclusions: data stuff is hard. but i think i have something to add, unless I don’t lose sight of my frustrations and my limitations in not being super deep on database stuff.

  • internet research lab meeting 2
  • steve krouse is heavily cautioning me from going too deep into databases without doing a proper survey and understanding exactly the shape of the problem that I am trying to solve
    • Some good technical points around:
      • small data (~10k rows): use in-memory JS objects
        • fails if you need to do any sort of joins
      • joins and/or larger data: SQL
        • sucks to do any sort of advanced querying
      • tuple stores: ??? in theory, the best of both key-value stores and relational stores
  • on datalog and tuple stores
    • The biggest motivation of a new “database” is the ease of interfacing, creating, actively shaping it as you are starting out.


Intention: Figure out what is most pressing for me to spend time on this week Conclusions: I will answer the data question to the best of my ability. Mostly I’m changing the question to be “what is the stack that works for me.” In pursuit of that question, it’ll be mostly trying out a bunch of existing frameworks, noting what feels hard with them, and maybe a final breakdown post around what I would pick based on the shape of project I’m imagining.

  • #ideas/software color check-in
    • “what color are you feeling?” visualized as a color wheel ala poline
    • what if my website color theme changed based on what color I picked for the day?
  • I need to set some priorities beyond just the log. I feel a bit ungrounded in what I’m exploring and doing. Let’s try dedicating the first two hours of the morning to just unfettered exploration, and then the afternoon can be dedicated to miscellaneous coding tasks that I know I need to do
  • Interesting to see how often liberal arts are paired with “save the world”-esque questions that grapple with the state of humanity and ask themselves, what can poetry do? Why is this never done for computing? or when it is done, you see a corrupted version (or people automatically assume that Silicon Valley -> Venture Capitalists -> Facebook -> Bad).
  • Started reading through steve krouse’s immense research log when he first started future of coding
    • Stumbled upon StreamSheets, which has the hypothesis that it is “spreadsheets all the way down”
      • static websites are solved, but dynamic ones are not because of the view update loop problem (“the fact that interacting with the interface will affect that very interface.”). This seems to be solved by all the new work on creating natively reactive programming environments.
      • Steve notes that in spreadsheets, “there are no events that modify data. The only way to modify data is to directly modify the data in a cell.” The implied condition here is “programmatically” or in response to user input that is not directly modifying the end-data itself. This is notably different in the advanced spreadsheet-like interfaces of today like in Coda, where “stateful actions” are run outside of the core calculation loop.
      • Steve calls out FRP systems and how to wrap your head around what makes a programming language declarative vs. imperative. Here’s a post from Huayi, a core author for Scala, that talks about it
        • It is not extracting out code into helper functions
        • functional programming is about knowing the dependency graph of each step in advance.
        • functional programming is the kind where it is clear from the code what dependencies are for each step. This means it is much harder to make easy mistakes because your linter / code editor will catch unresolved dependencies or variables.
        • The core of Functional Programming is thinking about data-flow rather than control-flow.”
    • Also reading about his startup before zaplib (Compose)
      • basically a new database / development system for easily building full-stack apps
      • Interesting concept of full-stack components, things that span both front-end and back-end rather than one or the other.
      • his concept of end-programmer programming which is the “mission” of makes an appearance here
        • End-users that are also programmers will be able to live-edit Compose apps that others have built, bringing their live data with them. The data is in the component, so simply plop the component where you want it, and edit it how you see fit. The data flows through, no matter where the component lives: in the original app or in a totally different one.

      • pivot to focus on junior React developers. Framing as a “severless backend framework”
        • also relevant that the proof that it’s better than just Firebase.
      • Our pitch is a whole backend without leaving React

        • I think this is missing the ability to actually see the data and play with it and modify it manually? like I want a smart, automatic flexible “admin” panel for your data effectively
      • boundary-less apps. Open address-book
  • found crul, which markets itself as giving the ability to “Query any Webpage or API”
    • It leverages using your local machine / your own hosted server (via docker image) seemingly to keep it free?
    • Interesting to see all these products launch in the past few months
  • Reading Götz Bachmann’s Ethnographic Research on Dynamicland
    • An articulation of artifacts which resonates a lot with the kinds of things I want to create in my research. They are about promises that are still open for people’s hopes and dreams”
      • These prototypes were “working artefacts” and “traps for potentialities”, a form of poking in a “space of possibilities” ​Bachmann, 2019a, p. 284; citing Lucy Suchman and Alberto Corsin Jiménez: “It was about speculating together and in the form of artifacts, in order to gain some intuitions for properties of the new medium.”
      • “prototypes were also “promise-artefacts, which are to be read as a promise, as evidence for the promise, and as promising even more than what it evidences, all at the same time.” ​”
      • bootstrapping: use what they build to boost their own effectiveness
  • scheming for the html review, need to convince max that i can get these in for this issue.


  • Finally watching the Coco talk or blog post and lots of crucial details that are important inspirations for thinking about communal computing
    • Co-creation over Collaboration
    • We consciously chose to design the CoCo space as a shared digital space for co-creating projects in real-time and not necessarily for collaborating on the same project in real-time.

    • parallel play in digital spaces
    • “signals” for talking to each other.
      • Creators can use these blocks to make their project trigger something in their peers’ projects in real-time and also get to see the outcome instantly

    • Collaborative experience where you move in-between people’s spaces rather than all sharing the same space
      • in this image, each square grid is another person’s space:
    • “programmable material that young people can tinker with and use to build new kinds of shared creative experiences with their peers.”
    • Focus on being truly alive. This really gets at the crux of the co-option of language and imagination of possibilities by large platforms and companies. Coco shows that spaces are live, not when audio and video is shared, but when people can play together in parallel. It is the difference between a playground and an arts and crafts workshop with a lecture and a rigid workshop
    • concept of “Corridors”
      • Inspired by MIT Infinite Corridor
      • this is not super imaginative tbh. it just looks like any other product design space with infinite scroll and grouped by archived vs. active.
        • #research/questions the only way to stroll on the internet right now is scrolling and opening new tabs. what does internet walking look like if we try to emulate the richness and openness of walking physically?
          • how do you get the safety and the curiosity of exploration?
    • good call-out on saying what you are trying to do is not the same as achieving it. The end result is vastly different based on the context and environment and what kinds of behaviors they encourage
    • “self-less” social platform
      • no individual profiles, everything is inextricable from the shared space
      • can this be destabilizing though? what if you don’t have a group to start with? How can you retain individual expression but also have the group?
        • Their phrasing is more generous than I am making it out to be. They are talking about how to become “free from the self” which is free from the anxieties and pressures to be special and unique and stand out.
  • #ideas/software infinite canvas layer for


  • deep-dive into the projects and research of vincent li
    • He wrote a lot about making space digitally, like a home or a garden.
      • On the home, he provokes how we can create communal spaces, ones where parts of it are inherently apparent with who shaped them
      • On the garden, he draws the spectrum from wilderness -> garden -> lawn
        • Garden strikes the right middle balance between too manicured and fake and wildness. It’s not quite taming the wilderness but cultivating it in a way that preserves the natural beauty
        • It incorporates revisiting (memex, spaced repetition, etc.) and growing via sharing it out to people (distribution)
  • smile exchange is super interesting
  • discovered open stories format, which is “a syndication format for distributing stories to friends and families.” It consists of a web component (<open-stories>), a JSON Feed 1.1 file,
    • it also has a corresponding open-hearts format for an open protocol for “liking”
      • the example set-up for this just uses a glitch project with a persistent JSON file for storage
    • what does the equivalent of this look like for general-purpose data collections?
  • for personal website, i should add a blogroll
  • serializing to text for streams, I really want it to merge with texting journal. I want to be able to cultivate this research log in plain-text (and mostly in private), while also being able to cultivate and contribute to legible, living collections that are public for me to get feedback from others and connect with the real world. ^c7214e
    • Deep research has to be done in a quiet place, where you can cultivate your own, original thought, but it is meaningless if you do it all in a hole where no one can understand you.
    • This is how you bridge the tension that is inherent in chet’s philosophy of the “individual genius.” It is true that it is hard to nurture what you really think if you are always surrounded by other people (and naturally their opinions). But it is also true that seeds of ideas flourish and exponentially grow when brought into contact with the world and everyone else who are generous and critical with them. You need both the original “hermit” thought as well as the cambrian explosion that results from wild, unmeditated encounters.
    • What could syntax look like for this?
  • found this note from 2022-10-19#ideas/writing
    • i want to create creativity infrastructure, art infrastructure, gardening infrastructure, connection/intimacy infrastructure
      • “we shape our tools and thereafter our tools shape us” has always been used as a reminder from a functional and creative lens—bret victor championed fast feedback cycles and traversable abstraction and embodied interfaces
      • what about from an emotional aspect, from a human connection perspective? what do these principles applied to space making look like? what does it mean to make a home on the internet? what does it mean to make a cozy library in your software, in your tools and apps? 
    • how can technology become a shapeless medium for expression, something that we can use to make beauty and function, to remember and celebrate, to love and bump into.
  • email to maxwell neely-cohen about the html review
    • #ideas/art#ideas/software i would love to make a participatory, ever-evolving poem or set of poems using the open-source library i made (demonstration: | source: or everest pipkin’s ravel. Currently is “participatory” in that each person can submit a new poem of their own, but I’d like to explore what it looks like to take that another level deeper. What would it look like to create poems that are ever-changing, where people can contribute and add to the same source? What does an infinite canvas look like or unfold when it blooms in the context of a poem? I imagine having a seed of a poem(s) that is(are) open-ended in bullet point / expanding format that people can add sub-bullets to.
    • This could also potentially take the form of a seasonal website where every day a new poem is released over the course of 7 days (perhaps over the length of a japanese microseason
    • #ideas/art#ideas/software another riff on the seasonal website idea, i’d love to make an artifact that explores what a “seasonal” website looks like. I’m taking inspiration from robert irwin’s design of the Getty Museum’s Central Garden, which changes with the seasons (different plantings for each season, so the shape and look of the garden dramatically changes). It rewards the visitor for coming back and noticing, something that is scarcely the case with digital spaces. I imagine a website that changes over time, that grows and rewards people for coming back over and over. Perhaps a literal generative “garden” that evolves with your visits, each time yielding more seed growth.
    • #ideas/art#ideas/software final idea that popped in my head, something that is an ode to the comments section. I’ve been writing and thinking about how these are always in the liminal space (stuck on the side, an add-on) but it is also the one space where people can find agency and express themselves. What would a net art piece where the comments section is the “main piece” and the “content” is on the side look like? maybe a long essay or video or something about this very phenomenon goes on the side and the comments section is the main thing. comments section ^e39dbc


Intention: ok actually reach out to ppl interested in bulletin


Intention: get bulletin in a place to be make open-source and submit to chrome store

  • so close to getting bulletin open for people to start using
  • 2023-02-22 rishabh
  • #ideas/website a guide / companion to taking walks on the internet
    • riff of
    • could be a browser extension that has a little window every once in a while, or how else could you “take it with you” as you walk on the internet?
    • could it be collaborative and you could see other people’s walks?
    • if you really wanted you could make it such that you could follow other people’s walks too
    • this is very related to the explorations around tiny internets and waypoints, especially to the “roller-coaster” idea of getting taken on a ride
      • could you leave little things for people to pick up on your walks? that lead them into your own walk?
      • lead into tiny internet-esque scavenger hunts..
  • #ideas/software natural advertisement / distribution the fight for the open internet and AI
    • prompting with other related websites (“sibling” websites) when relevant. e.g. the guide to walking on the internet could prompt to go to to take a walk in real life.
  • it’s cool to see people incrementally peeling back layers of computing
  • conversation with raymond
    • talking about streams
    • everyone should be able to make their own streams
    • bullet points for database journaling
      • diff personas
      • nested bullets are threads
    • bullet points are the easiest database interface
      • what if JSON was just bullet points
      • YAML? too granular not fine-grained, too fragile / breaks things
        • why does no one use YAML
      • what is a good (safe) separator for this?
    • subconscious = computer history museum urbit
    • when’s the last time you made a database(?)
      • when’s the last time you made a list?
      • “CRM” - bullet point list of emoji, name
    • two kinds of solidness out there
      1. local-first solidness
      2. everyone uses it (regardless of whether good or not)
    • sf is the right place for communal development
      • new york ppl are not actually publicly-oriented or for the commons
        • 0xparc used to be good but 2nd generation all about creating own fiefdom
    • pureness of craft / people / companies
      • rauno is pure, browser co is not pure
  • texting journal
  • #ideas/interaction a plant that grows with the number of unique visitors
    • a lot of live / evolving interactions come from turning live data into some generative / artistic thing


Intention: get bulletin in a place to be make open-source and submit to chrome store

  • 2023-02-21 rob hardy rabbit holes session
    • people who believe that we need a beautiful internet and need to do it by all independently creating our own spaces, but how do we plug into actually collective spaces? how do we honor the ways people are already showing their own personalities?
  • personal / communal search engines
  • #ideas/website#ideas/art “” - returns a bunch of different sites randomly using DNS records (i guess you could also do this via redirect but that’s less fun)
  • #ideas/interaction take deep breaths and press spacebar each time you swap from inhale to exhale and average them to make a custom-tailored breathing animation (could use for bulletin)
  • the structure of data must allow manipulators of that data to be embedded in-context. whole data is critical to a new, better data interface
    • chrome browser tools is a very good example of this. you have so many affordances for manipulating the data with it in-context. And not only is it in-context, but the actual tools for manipulating the data are contextual and specialized to the kind of data it is.
      • a slider for numbers
      • rotator for ???
      • color picker


Intention: send out employment status, final touches for we-bsite, get bulletin in a place to be make open-source and submit to chrome store


Intention: send out the research update!!!


  • update the bulletin to just automatically keep going and cycle the prompt ✅ 2023-02-18
  • ^c49039
    • What if you really just had a whole setup phase of copying a doc, creating API token, and then having them paste the API token. The API token doesn’t need to be encrypted because it’s completely local to their machine. It doesn’t work unless you provide your own database and there’s a temporary service for making your own database
      • could do this with airtable, google sheets.
      • This is effectively what people do with localstorage (like with glance back), but it’s a little more stable since it’s duplicated somewhere else
      • Maybe for bulletin, by default it all stores locally only with a fetch from some remote source (with optional authentication), and optionally you can add a remote “persister”
  • added a bunch more stuff to employment status, ready to send out to people and get distribution
  • almost done with the unintended commons post. Need to send out tomorrow.
    • Set up obsidian/quartz for publishing weekly research note digests? 📅 2023-02-24 ✅ 2023-07-12


Intention: send out laid off project to people, send out research log update, reply about we-bsite stuff

  • Investigate and fix the personal website loading time ✅ 2023-09-05
  • bulletin auto-embed for links with matcher (can possibly use iframely) and then further control over the actual embed, remove the annoying parts
  • #ideas/software how to make lichen-like digital noise?
    • l-system lichen
    • noise backgrounds
  • all morning on we-bsite where I merged the past fingerprints, fixed the data, and did misc other styling improvements
    • i looked up distributions and tested a bunch of different ones for deterministically (for each color) but randomly positioned putting the points everywhere
    • it’s been nice having this very live moment of jamming with jacky zhao and learning more about our collaboration style together. it’s very smooth and super generative and also has growing moments like when i gave honest feedback and he felt very disappointed and had to step away
  • I set a 15 min timer at 1230 when i noticed the time to remind myself to take a break. I kept pushing it back because i was in the flow and went for another hour until I finally was like im at a good stopping point
    • would be really nice if you could use coda to provision user databases to each person. ^c49039
    • wait what if i just build this exact thing? a simplified table editor in the same way as coda that users can spin up and then take anywhere. each table has a unique API url that is protected by certain access tokens.
    • this is basically a super super simple version of supabase where instead of being based on any sort of scale thing (that comes with a bunch of complexity like postgres), it uses some super simple backing database like… sqlite? json? idk need to figure this part out small persistent data 📅 2023-02-19


Intention: Today I want to finish the laid off project and send it out in earnest and also send out my first research log update. I also would like to go for a run since it’s been a while since i’ve exercised. I think I need to cut down on the number of meetings I take every day and actually set aside some dedicated time for meetings all at once.

  • 2023-02-16 jon borchevsky
  • #ideas/writing question to ask yourself is “do you want to be known as X-company guy” or do you want to be known as “spencer”? a reflection on setting out on your own
    • even when the things are so close to your heart, even when there is so much foundation to build off of, in the world of work and craft, you have to sometimes let you darling rest and violently separate from what nurtured your wings and form your own nest
  • when you have follow-up questions and ideas burst from engaging with a material is when you know you’ve gotten to some basic understanding of it. this as a critical threshold for learning
  • 2023-02-16 kevin chang
  • we-bsite working with jacky zhao in person!! it was super energizing to jam in person and reminded me just how well we work together and how generative it is.
    • in the span of a few hours we did
      • revamped wax seal
      • fun sheen effect
      • random procedural rotations
      • past fingerprints


  • internet research lab conversations, the plan is a july pop-up! so many exciting ideas including a shelf of living, communal prototypes, a communal code sidewalk library, and having a public art gallery-esque interactive computing gallery.
    • the core is that there is a safety and fulfillment in going once and knowing that your work will be saved, that you can come back and pick up right where you started at any point. That’s the magic that digital mediums offer


  • lots of work on employment status, got the diff modals working and better understanding now of framer motion, radix ui, and nextJS
    • i do feel like im learning so much more about actual useful technologies here than in my coda work lol
  • desire paths on websites, how do you create trails of cursors past?
    • what if links were darker depending on how much they were clicked on or how much time people spent there?
  • #ideas/software tiny npm library that helps with input / textareas that act like live preview where you want to display the text diff from how you edit it
  • there’s such an intimacy in reading people’s code just like reading someone’s prose or poetry.
    • reading glance back’s unminified source code and I find all these easter eggs maya has buried in here, like console-logging a random computer thought or scrambled gibberish to signify the transcoding process
  • #ideas/website website idea: graveyard of words that have been co-opted by capitalist ends
    • exs:
      • 3rd space
      • alignment
      • hacker
    • can poetry somehow reclaim those?
  • what is the world where database engineers are rendered obsolete?
    • ex: we had a guy at coda who was our “database guy” who has worked on database systems for 20+ years, doing heavy optimization of postgres, etc. He manually fixes a lot of things too. What if this role was entirely obviated by the state of infrastructure?
  • databases are probably the ultimate killer of app ideas.
    • amelia wattenberger: ^d49068
    • used a google sheet to scale up to millions of users
    • most apps are just CRUD and just need a simple database and don’t have a “concrete” schema in mind at the very start. The most important thing at the start is having a rough schema that you can easily change
      • easily change = be able to add, update, delete columns as well as easily map existing values to other new column values.
        • Database migrations are the opposite example of this. You get a lot more expressibility, but that is because it is designed to handle migrating any scale of data without data loss, but at the beginning, it’s mostly hard-coded data anyways that you is small enough to manually correct. How could we loosen the margin for error here to yield a lot more flexibility and ease of use?
      • Most apps just need the form layer as an input and a table layer as a database. If you want to get fancy, you can wrap the form in your own custom website and hit the API yourself. If you want to get fancy on the server-side, you can have your own server handle requests to the “database” and add caching, static site regeneration, and more.


  • #ideas/software incremental static site regeneration but for github pages, by leveraging some workflow to continually push to git
  • got the fingerprint working for we-bsite. Honestly, I don’t know what to make of it, but it’s provocative
    • it was cool to really dig into yjs docs for the first time today too. Beyond the shared document that stores an entire list of operations in a persistent manner, with the use of a signaling server to propagate new changes to peers, there is a real-time-only awareness layer that just propagates live changes between peers. This is used for local state that doesn’t need to live in the document, where changes don’t need to be recorded and just communicated between peers like cursor positions, active highlights, etc.
    • I still really want to experiment with a persistent server for these lasting effects that go beyond linear things like text editing
  • #ideas/art/exhibit two rooms: 1) room with very expensive items but with low quality LED lights so everything looks dull and bad 2) another room that you enter next that has everyday objects and “trash” strewn around but with super high quality LED lights so they look beautiful.
    • ideally these combine into one room and somehow you can achieve the effect with just strategically placing the LED lights?
    • low quality LEDs cant reflect light so things are dull
      • cri - metric for color spectrum
      • light pipe
  • #ideas/software “human search” where it leverages google but gets rid of all the SEO-farming websites. talk to it like ChatGPT rather than google bc you can actually assume its human
    • e.g. “fun ways to type up a poem and print it”
    • filter to sites / places that are not SEO-friendly
      • regex to ignore “X ways”
      • regex to encourage certain TLDs (.me, etc.)
      • leverage a communal index for things that are good and bad


  • progress on bulletin, got the prompts working and actually storing the answers
    • thinking again about open databases and the easiest way to persist data for a new app in a way that you can also easily change.. it has been such a trouble getting it for this, using the chrome storage is a PITA because of storage limits and storing it in coda was actually one of the easiest
      • the big simplifying mechanism is if you are able to bring your own data storage or persistence method (like with Shortcuts and using iCloud or Dropbox or even Notes as your persistence method, this is obviously not great for structured data though, but you could imagine doing it with something like JSON or csv or sqlite even..)
      • coda for ex would be amazing as a store for apps if everyone could just bring their own coda database for it
        • You could imagine an app flow where you click a button to create your own database using X thing where it automatically uses the API to set up your “database” in a file for you and also generate an access token to that specific file for reading and writing. then the app just stores everything in the format that it needs to that file, relying on your access token and your persistor’s APIs
      • this only works because everyone bringing their own databases removes the need for scale… if you don’t need to host everyone’s data for them then you get around all the complexity of scale and permissioning and translation (because you are just persisting the exact state)?
      • see jacky’s much more comprehensive and technical thoughts on this
    • next for bulletin - add the prompt stuff to new tab page ✅ 2023-09-05
  • imagining a communal software future
  • thinking about how to make use of the old mac that i saved from the streets of SF
  • also how to apply the principles of tarot (a conversation with your latent / subconscious self through the medium of what you notice in a specific card you pull) to creating rituals for reflection and cultivating growth


  • announcement post went out! a lot of encouragement from my network
  • a lot of resonance specifically with the modular networks and folk computing stuff
  • demos and chill SF gathering event


  • session with with jamie for feedback on bulletin
    • desire for freeform metadata about rich media
      • prompts: “what do you notice” (about art)
      • some way to share the same artifacts.
    • guy at SPC who makes minutiae app, nice prompt for all the minutes of the day, got me to pay at least lol
  • #ideas/software easy polaroid image maker (drag + drop images and style them in a polaroid like aaron lewis does)
    • thick white border, apply some color styling, optional grain, and randomized bent along specified range, should support easy galleries too and then exporting the whole thing as an image or as html?
  • 2023-02-10 matthew siu


  • we-bsite almost persisting fingerprint and user color
    • had to deal with stupid bug around creating a new object re-triggering and infinite render loop ugh
  • great conversation with jacky and raymond about the future of data
    • “we have all the right ingredients, if we keep meeting, soup will emerge”
  • walk with andy which spanned games and authored environments, social broadcasting and safety and what is truly async communication, ambient awareness, stochastic data gathering and attention processes.a


  • bulletin first prototype almost fully working!!!
    • had to fix bug with next directory conflicting with the extension stuff
    • moderate refactor got things showing up
    • then had to deal with reloading it each time the url went back to home and also only showing it once
      • tried a bunch of diff solutions including mutationObserver on the page and a semaphore but only got it working reliably by using the chrome API for tabs updating and keeping track of the old URL to de-dupe
  • for love and science sfpc class where we talked about ancient technology and bodies as technologies and technologies as emerging from collective desire. its a really beautiful look at what technology could be


  • worked on we-bsite, almost there, got the fingerprint working and contacted kevin chang about the bugs for not letting helena’s manifesto show up
  • Thi Nguyen Games as Agency book club event: learning how to make different games that stretch and test your agency in different ways to push you to grow and see in different ways. the right kind of gamification (striving gameplay) rather than the point-oriented, goal-chasing kind that is often referred to as “gaming” now
  • discussion of pubsub with raymond zhong and jacky zhao. Everything is pubsub?
  • thinking more about small persistent data and my arena wishlist in hopes of making a better
    • shared tab groups is one super easy entrypoint for shared persistent data collection
  • almost finished my announcement post
  • almost done with employment status too, sending around for final rounds of feedback
    • send to person 📅 2023-02-15 ✅ 2023-02-23
    • send around to people who got laid off that i know? ✅ 2023-09-05