Read more on the Malleable Systems Forum.
Aug 22, 2023
You can now make any app end-user-programmable -- as long as it's built in LÖVE
* *
Aug 11, 2023
Yesterday was a good day. I built a little app for someone to connect to their R server, plot a dataset based on different dimensions. Pretty trivial, but hopefully easier for them to modify than other similar apps out there.
* *
Aug 4, 2023
Finding Meaning in Christopher Alexander's "The Nature of Order"
This is the most insightful talk I've watched in recent memory.
* *
Aug 1, 2023
Pulling out an old tool to read a long thread on Mastodon.
Not pictured: keyboard shortcuts for structured navigation.
* *
Jul 16, 2023
Fun puzzle:
$ echo "never worn" |sed 's/ /^M/g' wornr
What is going on here?
* *
Jul 15, 2023
Personal digital infrastructure
I've been performing some long overdue computer maintenance activities:
- I've had a server with Linode forever and been very happy. But I recently noticed it would periodically go inaccessible, perhaps after some idleness. Perhaps it had something to do with their acquisition. So I decided to switch providers.
- Back in 2009 when I created my website I built it in Rails (backed by files rather than a database) Last week I replaced all that with raw html, generated with a tiny Lua script. It's nice to be able to unsubscribe from some mailing lists of vulnerability notifications.
- I've been backing up my local laptop to my server, but that was causing me to overflow my disk. Cloud servers are a relatively expensive way to get storage. So I decoupled those concerns and now back up my laptop to rsync.net.
All in all, I'm much happier with my server. It's leaner, runs less stuff, and it'll be easier to move next time. With the way we've been seeing services degrade lately, I think it's useful to be thoughtful about how we cobble together our personal digital infrastructure, architect it to be nimble and easy to move around. If you keep options open you'll be less likely to need to use them.
* *
Jul 14, 2023
After 10+ years on Rails, I've finally gotten around to switching my website to static files.
Hopefully there's no discernable difference from the outside :crossed_fingers:
* *
Jul 3, 2023
The most common footgun I run into with Lua isn't the 1-indexing. It's the wildcard nature of '-'
.
Today's head-scratcher:
> ('00-43'):match('^(%d%d)-(%d%d)') 00 43 > ('00-43'):match('^%d%d-(%d%d)') nil
I should just always escape it ('%-'
) as a matter of course.
* *