Mar 2024

I love Moana. I liked it when I first watched it, after it had left theaters. But the birth of my kids and everything else over the last 8 years keeps bringing it back to my thoughts.

Yes, my tastes are not very refined. The kids have already outgrown it.

Anyway, a few months ago I asked myself, "do you know who you are?"

Moana eventually gets to this answer for herself:

I am the daughter of the village chief
We are descended from voyagers
Who found their way across the world
They call me

When I first came to the US 20 years+ ago, my self-identity was, I was the oldest son of the oldest son of the oldest son, as far back as we could recall, I had a large family all around me (all those other kids of other kids of other kids) that were all 100% behind me, that I was smart and could do anything I set my mind to. And nice too, who wouldn't like me?

[Yes, narcissistic and snooty. We weren't rich, but we could snoot with anyone.]

Today, my self-identity is: I am a denizen of a star in the Milky Way, a primate that only got a chance to be because an asteroid hit my planet 65 million years ago. Privileged to live in a comfortable environment, and to have grown up with lots of support that still makes me tend to think others care more about what I think than they really do. Even when I try to account for it. Operating 99% of the time with unconscious desires and instincts, trying to make the world better with the remaining 1%, as my world warms due to my unconscious actions. Spreading the good news about thinking in terms of systems, planning beyond immediate consequences. And trying above all to be kind.

[Yes, still pretty smug.]

I am who I am because of the environment that has been poured into me.

I used to hang out in the Arc Forum. Arc is a Lisp, but the 6 or so of us who hung out on the Arc Forum aren't quite a Lisp subculture. Arc and the conversations about it gave me a sense that humans discovered a burning core of computation back in 1960, but human nature has caused us to forget all its implications that we uncovered in the first decade since. We tie ourselves up in knots because we keep cargo-culting older solutions to problems when we don't need to anymore. In particular, we organize more tightly than we need to, now that we have computers.

I used to hang out in the penumbra around the Ribbonfarm community, and I've been finding my way back there lately. It reinforced my bull-headed tendency to try to think through things from first principles without giving in to social pressures, but also exposed me to a bunch of "soft stuff" I would otherwise have been utterly blind to.

Since the birth of my kids, I've been spending the most time in Future of Coding, and in the Merveilles Town Extended Universe it introduced me to. They have transformed the media I work with. I used to work almost exclusively with text, to the extent that I blinded myself to everything text couldn't do. For 15 years I even stopped writing on paper. Being in these communities has exposed me to the possibilities of media beyond plain ASCII text:

  • I now draw a bit. My schooling deemphasized art, and the few art teachers I intermittently had taught me to have low self-esteem in that area, but I am surprised to find I can elicit oohs from my wife and (very young) kids. It feels good, and this has led to some surprising "soft" places.
  • I've been working with video for 4 years now, something I never thought I'd do. You can find the links, I'm a show-off, nothing is private here.
  • I used to think the Right Way to teach programming was in plain text over tmux to a shared server, writing programs in (very nice) Assembly (until we got to the ideal Lisp). These days I am much more likely to actually try to apply all the Bret Victor I read, to try to make the computer work a little harder for the learner while they're working hard learning.
  • I still can't listen to podcasts, though. Sorry guys, I tried.

I tend to think I have all the answers, and my snooty background and natural introversion tends to reinforce that tendency. Finding these communities has been a point of singularity akin to having kids. I can't remember who I was before them, and have no idea who I'd be now without them.

I am who I am now because of where I've been.

2020: big changes, bracing for things to get worse, then feeling grateful that they didn't, but also waiting for the other shoe to drop.

2021: other shoe dropped; kind of a shitty year. Still lots to be grateful for, but also questioning everything by the end of it. I'm a pretty narcissistic guy, why should anyone care about anything I say.

2022: processing, lots of changes, one particularly gut-wrenching war. Rebound project, then real next project. I started taking better care of my body. Lots of time off, which was really nice. Lots of nice memories now, even if I didn't notice at the time.

2023: feeling optimistic at the start, but the year didn't really fulfill that initial promise. It was a good year, but my standards were just too high, you know?

2024: a fragile sort of serenity. Yes, this is all there is. Yes, there's the abyss of mortality over there, yes people probably shouldn't and won't listen to you. Don't worry about it, life is short, spend the time available being you. I'm going to spend some time trying not to be, but I'm fairly fundamentally narcissistic. I can't change it, so I'm just going to own it.

I am everything I've learned and more
Still it calls me

And the call isn't out there at all
It's inside me
It's like the tide
Always falling and rising
I will carry you here in my heart
You'll remind me
That come what may
I know the way

Everything in these last few years has been colored by the knowledge of two things: the warming of the earth, and the wars and population displacements it's already starting to cause.

Right after Oct 7 my thoughts were often with Israel alongside Ukraine. But in the months since, they have turned almost entirely to Gaza (alongside Ukraine). There is something momentous going on here, and we will all regret it when it has done with us. I just hope my Jewish friends don't consider me anti-semitic. Perhaps we need a new word for the growing set of people like me, like Sam Kriss.

While having kids has softened me somewhat (tears come more often), growing up playing chess and other strategy games still exerts a fairly bloody-minded tendency to constantly ask which way my selfish interest lies. All while my experiences and influences have radically reframed what "selfish interest" is for me.

Today my primary working frame is that the Earth will hold a lot fewer people a hundred years from now, and there is a War on to decide who those people will be. My primary goal is to ensure "my tribe" is represented. But then I'm lazy, so all that goal translates to is putting out the values that matter to me. I struggle to put a name to it. Pluralism, open mindedness, valuing diversity. Taking the thought experiment of "the veil of ignorance" seriously.

But my allegiance is to a tribe, not just the values. I want my particular puddle of pluralism to not die. I'm happy to see the puddle grow, but if I imagine my puddle dying out but pluralism propagating somewhere else disconnected from my actions, that doesn't feel good.

A critical question for the next hundred years is going to be how to manage the population migrations that will accompany all the inevitable upheaval. Steve Randy Waldman has, I think, given us a blueprint for navigating this transition:

No law can make the immigration problem go away. The world is as it is, and the drivers of mass migration are likely to get stronger not weaker. The question before us is not “whether” or “how many”, but “how?” What set of practices and institutions might bring natives and migrants together under a version of national identity sufficiently nimble and attractive and adaptive to join and guide us all?

For nation-states capable of answering this question, the coming era will be a time of growth, opportunity, and national greatness. For nation-states whose identities and self-understandings are incapable of adapting to integrate large numbers of new migrants, it will be a time of crisis, authoritarianism, decline, bitterness, and shame.

I think about what Trump has done to this country. Ten years ago I stood aloof from a value like "kindness", but the unthinkable has happened, and it has become a non-vapid, non-tautological thing to stand for. Alright, I guess I'll stand up. So tedious. But these are the times I find myself in.

I think about what it would take to at least restore the economic equilibrium of my (adopted) country. For Trump is a consequence of economic malpractice. Fixing the economics won't immediately fix the culture, but I pray that it will dampen the widening gyre. Waldman's inflation-protected bank account seems like a particularly applicable — and politically workable — intervention here.

Enough hot air, time for some slightly less hot air. I don't do anything about the above, I program computers.

My "thing" is computational literacy. I think our society would be radically improved if everyone shared a better understanding of how complex systems can interlock. It would cause them to make more of an effort to anticipate secondary consequences of interventions, I think. Computers are a great way to explore this stuff. This has been said before, but past attempts have failed. I think they have failed due to fairly fundamental problems with much of the computational infrastructure the world runs on: it's not durable, and so the great projects of the past that might have yielded compounding improvements to computational literacy just don't work anymore. Everyone will know when we fix this: your software won't need to auto-update so damn often. It'll also be more trustworthy; constant change is great camouflage for your computer to grow hostile to you.

Tech companies are good for many things, but they've had enough opportunities at this particular problem that I feel confident the cycle of birth and death of for-profit companies is not going to solve it. There just isn't a sufficiently big short-term incentive to stay the course. This particular change will have to come from people. And it needs to continue working reliably in the face of a computing substrate built by tech companies that will be hostile to it in many ways.

(I think there's nothing wrong in working for a tech company. But then I do, and perhaps my salary depends on me not understanding certain things. I try to look out for those things. It is increasingly uncomfortable to hope a company goes IPO while seeing the capacity for evil down the road if it does.)

Over the course of 2022 and 2023, I think I have hit upon a great candidate substrate for durable programs. It's something I didn't consider for the longest time: a game engine and gaming community. LÖVE is tiny, cross-platform, easy to install, rarely changes, and functional enough that I don't keep needing to pop open the hood to add to it. I've even recently gotten it running on phones and tablets (though iOS still requires jumping through some extra hoops). You can read the details elsewhere; I usually can't stop talking about this stuff, but I'm going to resist here. Broadly, my plan is to just keep writing weird unique programs that others don't seem to be writing, in hopes of getting people to give LÖVE a closer look. So far I've built little toys, simulations, editors, rigged out my note-taking setup with it. I'm editing this post with it, I can draw pictures with it. It's a lot like my early years getting my computer set up just so. If I'm honest I'll be happy just doing that with the dream of more to sustain me. But I also try to keep myself honest to the long term by ensuring my setup is easy for others to try out.

One limitation at the moment: LÖVE doesn't support network requests. (https in particular, but practically the whole world has moved to it so the distinction is academic.) So if you have your data locked inside some tech company's silo today, LÖVE can't currently help unlock it for you. I'm eagerly waiting for the next version which will fix this. But that can be a while. Minor sharp edge of infrequent updates, but it's ok. We waited this long, I can wait another month or year.

Not having a network has some advantages. It has nudged me to gradually move a lot of my stuff and habits to my local machine. I still like the cloud for backups; that feels like the best possible use for somebody else's computer.

But I have so many ideas waiting on this update. I want to learn to build better forum software for many of my circles. I want better tooling for Mastodon. I can/do still work on these ideas; there are preliminary builds of LÖVE that can support them. They're just not easy for others to install.

One idea I've been mulling that isn't waiting on any update is a way to draw diagrams, share them and reconcile changes from others to them. This seems interesting. There's some desire for it, nobody's doing anything about it, I have some parts of it built out already. I might work on it.

Another idea I've recently been mulling is to go back to the idea of computational literacy and face that terrifying problem square in the face. Build little explorable explanations that are more open-ended than others have built so far, and that allow people to explore the consequences of their interventions in a sandbox.

I think what makes it so terrifying is: you lift mountains and at the end of it you have a toy about a topic that will appeal to 0.001% of people likely to encounter it. Do I really believe that doing this 10 times will help me learn enough to make the 11th time an order of magnitude easier to build? Bah, I'm not actually good at this. Let others work on it. But then they'll probably use some shitty substrate just because they know it well. (I feel I have moral high ground here; I didn't know anything about Lua 2 years ago, so I'm not just pushing what I know. On the other hand, I have the zeal of the convert.)

Over the past 10 years I've grown from a booster of the web to pretty opposed to it, but this tiny bit of html by Cristóbal Rodríguez has really got me questioning that posture. You can write into it with all the expressivity of html, and save your changes locally at the press of a button. It has that quality of the best ideas: it leaves me wondering how the heck did I miss that. I mistrust the web because I mistrust browser manufacturers. But perhaps something this simple and this fundamental to the web will be hard for them to mess up?

An anchor influence over the past year has been "Finding Meaning in the Nature of Order" by Stefan Lesser. I go back to it often, when I'm feeling blue and I wonder why I bother to do anything. It reminds me of the psychophysical benefits of building, independent of anything it accomplishes.

RSS (?)
twtxt (?)
Station (?)