Monday, January 4, 2021

keeping a log: 9 months / ~1k entries in

Previously: org mode, vimwiki, timeslice.

Back in March, in the throes of a bunch of rabbitholing about note-taking, I roughed out a system for keeping short, granular log entries in my VimWiki. I agonized for quite a while about how to do this before deciding to start with the stupidest thing that could possibly work.

The short version is that I have a hotkey to create datestamped files in a log/ directory, like these:


A new entry opens with a template like the following:

%date 2021-01-04 21:46:40.056011313-07:00

I then give the entry a human-readable title, links to relevant topics, and as much text description as seems useful. A typical entry looks something like:

%date 2020-12-11 16:49:51.356943342-07:00
%title Configuring digiKam again

[[/configuration]] [[/photos]] [[/digikam]]

Digging around in the guts of an old `digikam4.db`.  Changed the album root to
point to the new path in `~/workspace/photos`.

Then, when I’m viewing a topic page like digikam or photos, I can press another hotkey to pull up a window with any linked log entries. When I’m viewing the diary page for a given day, a bit of shell boilerplate shows me all the log entries for that date.

I’ve elaborated on this all a bit since March, but the underpinnings are still just a few hundred lines of hacky scripting and Vim configuration. Before I put any work into cleaning it up, I thought I’d try to outline some stuff I’ve learned.

I’ll use the time-honored form of “answers to questions no one has actually asked me”:

Why a log? Because in taking notes, I’m worried about two dimensions: Subject matter and time. A single flat wiki namespace can be workable for navigating the who/what/where, but it’s lousy for navigating the when.

I’ve also spent a lot of my life keeping logbooks, looking at logfiles on computers, writing a journal, and publishing a datestamped blog. At Wikimedia, I’ve been particularly impressed by how useful the server admin logs are, and I pretty much live and die by command-line history and bookmarks. It’s a notion with an overwhelming amount of precedent in my life.

What distinguishes a log entry from any other wiki page? Its placement in the log/ namespace and a handful of formatting conventions.

Was this actually a good way to approach the problem? Yeah, I think so, with caveats.

Is the implementation sound? Not by miles, but it holds up better than I expected. Eventually the flat directory structure will get cumbersome in the shell, and grepping through files like I’m doing some places might get less practical.

How are the ergonomics? Not that bad, but there should be as few keystrokes as possible involved in writing a new entry, and this doesn’t quite cut it.

What’s a good fit for this kind of log entry? Finding a new piece of software, writing a letter, taking notes on a meeting, setting up or decommissioning a piece of gear, finishing a book, garden/yard work, house and vehicle maintenance, phone calls, general life events, sysadmin work, etc.

What’s not? The single thing I’ve done the most of that probably makes the least sense in this format is logging individual expenses and financial transactions. This has been useful enough to convince me that tracking what I’m doing with money is a good idea, but clunky enough that I’ve learned stuff like “paid the mortgage” and “bought groceries” should be structured, query-able data. The most that I have to bash out with a keyboard in that context should be an annotation on a specific record or group of records. That’s not to say I’m thrilled at the prospect of keeping a rigorous double-entry ledger that balances out for every transaction in my life, but I can see the appeal in a way I couldn’t really before.

This generalizes I guess: A lot of the history I care about lives in structured, formal-ish systems like version control, banking, various databases — and other parts of it should. Like sometimes I log specific weather events, but usually when I want to know about weather in the past, what I’d really like is a way to quickly aggregate a bunch of data points.

That points at two categories of “log entry”: The loosely-typed human-readable kind that make sense as wiki pages, and the granular, highly-structured and repetitive kind that make more sense in something like a database table. Then there’s a third that doesn’t quite fit in either box. Sometimes I paste a lengthy shell transcript into a log entry, for example, and while that’s more or less fine, it points at a gap in the tools I use. It would be way nicer just to push a button when I’m doing something in the terminal that it’s important to remember exactly, and then it can record until I tell it to stop and let me add some tags and a summary to the session.

So what next? Well, I’ve arrived at something I’m going to keep using. I’d miss it if I quit, and it’s easy to accumulate a useful record this way. I might clean up the mess a bit and package its components as a VimWiki addon. After that, I’m going to spackle more stupidest-things-that-could-possibly-work on top to augment it, and think about more ways to surface and integrate other parts of the meta-log that are scattered all over the systems I use.

p1k3 / 2021 / 1 / 4
tags: topics/data, topics/logging, topics/notes, topics/technical, topics/vimwiki

Saturday, January 2, 2021

reading in 2020 (books edition)

As I look over the set of books I’ve piled up in my house, the other thing that strikes me is that, in the years these books have been accumulating, both the relationship of books to the culture and the nature of reading itself have been rearranged. Like I wrote three years ago:

Because really what I read in 2017, in most of the last several years, was the internet. Not even, in any real sense that registers, individual documents hosted on the network, or the work of authors I can clearly identify. Just the endless scroll.

…it’s like that but more so, now.

The last book I read in 2020 was Kim Stanley Robinson’s The Ministry for the Future, which has this bit (chapter 30):

So how you feel about your time is partly or even largely a result of that time’s structure of feeling. When time passes and that structure changes, how you feel will also change— both in your body and in how you understand it as a meaning. Say the order of your time feels unjust and unsustainable and yet massively entrenched, but also falling apart before your eyes. The obvious contradictions in this list might yet still describe the feeling of your time quite accurately, if we are not mistaken. Or put it this way; it feels that way to us. But a little contemplation of history will reveal that this feeling too will not last for long. Unless of course the feeling of things falling apart is itself massively entrenched, to the point of being the eternal or eternally recurrent individual human’s reaction to history. Which may just mean the reinscription of the biological onto the historical, for we are all definitely always falling apart, and not massively entrenched in anything at all.

The moment’s structure of feeling has changed, and you can tell it in just about every text you encounter. It’s also pretty hard to stop encountering texts even if you want to. The stuff is inescapable and much of it has a quality of self-replicating churn that makes me feel kind of queasy about the entire enterprise of human thought.

I wonder if it felt something like this when literacy really took off as a technology in the first place.

Anyhow, what booklike objects did I read this past year?

February: I ordered a copy of Sönke Ahrens' How to Take Smart Notes. Note-taking was on my mind a lot over the course of the year, and I spent too much time reading other people’s ideas about it. By July I managed to post some notes on the idea of the Zettelkasten that serves as a partial review / summary of Smart Notes and related things.

May: I binged my way through Martha Wells' Murderbot Diaries. Popcorn SF, socially anxious heart-of-gold protagonist. I started The Elephant in the Cornfield: The Politics of Agriculture and Climate Change, by Chris Clayton, which I should probably revisit.

October: Meghan O'Gieblyn’s Interior States (essays), Vanessa Veselka’s The Great Offshore Grounds (a novel), Ron Chernow’s Grant (biography). The first two were quite good and I still haven’t finished the Grant biography.

November: Arkady Martine’s A Memory Called Empire, first of a trilogy. The first two of a trilogy by Eden Robinson: Son of a Trickster and Trickster Drift. All recommended.

December: Trail of Lightning, Rebecca Roanhorse. I liked some characters and scenes and ideas in this, and didn’t exactly love it as a novel. Mileage might vary.

And then The Ministry for the Future. Near future SF, barely a novel at all for a lot of its length. A book that seems more deliberately pitched to be read right now than a lot of short-shelf-life fiction is just by accident. Among other things, it’s partly an argument that the end of ecocidal capitalism is achievable, partly a claim that eco-terrorist violence is likely (and quite possibly necessary) as the climate struggle intensifies, and partly a fantasy that cryptocurrency might have some kind of pro-social role to play in engineering a survivable economy. I will be thinking about this one for a while.

p1k3 / 2021 / 1 / 2
tags: topics/books, topics/climate, topics/murderbot, topics/reading, topics/sfnal

Friday, January 1, 2021


I rearranged my office back in mid-December. This is always tricky because we have more stuff (hand-me-down furniture, old computers, bins full of electronics) than we really have house to put it in. As per usual one thing led to another and I wound up moving all of my books.

I’ve finally got just enough room to shelve most of them again, thanks to secondhand bookshelves and a partner who went on a building spree for her own collection over the summer. It’s been a couple of houses since they were anything like organized, though. Half of them have been trapped behind a cat tree and an armchair for years.

I went for alpha-by-author ordering, with a handful of category exceptions: Poetry, reference works, religious texts, computer stuff, a bottom shelf for the oversized volumes. It’s a mess because I’m doubling up to fit everything and the books are wildly different sizes. I can see one of the flimsier sets of shelves coming apart under the load as I type this, and the U–Z stacks are still sitting on the bedroom floor because I ran out of space.

So it’s imperfect, but it’s also really the first comprehensive view I’ve had of this set of books since I was 6 or 7 years younger and it was a much smaller set. It’s kind of a strange experience.

From the time I started reading on my own until pretty far into college, I lived in books. As a kid I read and re-read my dad’s pile of genre paperbacks, thrived on trips to the library, spent hours arranging things on shelves, was always in the process of reading something. Once my friends and I could drive, it meant I could go to B. Dalton and Waldenbooks before we saw whatever the movie was that week. Eventually the internet started to tell me about writers and my personal canon expanded slowly outward, one novel-length trip at a time. It felt so weird to leave a book unfinished that until at least my early 20s I could remember everything I’d ever bailed on (a Hardy Boys mystery with a scene containing a skeleton that wigged me out, the copy of Cujo that my mom got banned from the school library after I accidentally left it where she could find it, …).

The books I have physically to hand in middle adulthood are a different kind of animal. There are, sure, beloved volumes from childhood, things that have changed how I think, the kinds of books I go to for solace and perspective. But looking at the whole spread, I’m honestly not sure I’ve even read more than half of this stuff.

Some of it I read but hated, or liked fine but never actually finished. There must be 30 lbs of assigned reading I’ve been lugging around since college. A dozen literary relics of relationships (romantic or otherwise) that have been defunct for many multiples of the brief time they existed. Detritus like the copy of Jordan Peterson’s 12 Rules for Life: An Antidote to Chaos that I bought used and hate-read for reasons that now escape me but must surely reflect poorly on my character. Books about math that I own because I liked the idea of being a person who would read them. Poets who just leave me with a sour feeling in the pit of my stomach. Things that looked mildly interesting on the book swap shelf at a coffeeshop I frequented in 2003, but which are in fact bad. I have a copy of Battlefield Earth for some reason. (It was probably on the free table at SparkFun.)

There’s at least as much dross in this collection as there is gold waiting to be found, and then it’s funny how much of it belongs to some now-distant idea of who I was — or wanted to be — as a reader or a thinker or a person in general.

I suppose all of that’s pretty normal for a stack of books sitting around going into one’s 5th decade. If you hold still for very long in this culture, stuff accumulates around you, and plenty of it outlasts the parts of your life that it attached to in the first place. A library is a kind of memory and an index to memory, but what it remembers can often be strangely fractured and unevenly focused across time. Not unlike the way things actually go in a given life I guess.

Still and all: I haven’t let go of the idea of a personal library, and I doubt I will.

Putting this stuff on shelves makes me think of what it was like at 10 or 12 years of age, crouching on the floor halfway through reordering a stack of paperbacks, accidentally caught up in reading The Green Hills of Earth or The Call of the Wild over again. It also reminds me of what it was like at 21, wandering deep in the stacks of a big university research library: All those weird pathways and strange wonders. Outcroppings of the sublime or the sturdily useful in the most unexpected places, amidst treacherous pools of boredom and fossilized nonsense. All the times I intersected with some decades-old choice in curation and bounced off of it as a slightly different person.

I think a library should be a refuge, but it should also be something with the capacity to surprise and unsettle you. Maybe a personal one should serve as a reservoir of things you used to think and things you still might.

p1k3 / 2021 / 1 / 1
tags: topics/books, topics/libraries

Monday, December 28, 2020

the yak queue: end of year 2020

Yak shaving:

Noun: yak shaving (uncountable)

  1. Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.
    I was doing a bit of yak shaving this morning, and it looks like it might have paid off.
  2. A less useful activity done consciously or subconsciously to procrastinate about a larger but more useful task.
    I looked at a reference manual for my car just to answer one question, but I spent the whole afternoon with my nose buried in it, just yak shaving, and got no work done on the car itself.

As Lars is fond of saying, “queue your yaks, don’t stack them”.

That’s good advice which I’m bad at following, but early in 2019 I started a list of yaks where I can stash problems as they come up. Sometimes, at least, I manage to put something on that list and then go back to whatever I was nominally working on. I think I would recommend this practice as a way to eliminate some brain clutter.

It’s the tail end of the year now, cold and snowy outside, and I have some days off of work, so it seemed like a good time to go through the yak-shaving list and try some things. Here then is brief documentation of some problems solved (or further complicated) along the way.

linux audio: pacmd, pavucontrol, and pasystray

I have a Behringer UMC404HD audio interface for recording synthesizer output and other audio. You plug it into USB and it gives you some new interfaces. Works out of the box with Audacity and Ardour, no driver fiddling required. You can plug headphones into it and monitor what it’s recording, or use it as an output from the computer.

This all works pretty well, but at least on my Debian Buster system, it made juggling the builtin sound card, a set of external speakers, and the headphones plugged into the UMC404HD kind of clunky.

I searched and found out that you can use pacmd at the command line to switch which audio streams are going to which “sink”:

# Get a list of sinks - i.e. output devices, I guess:
pacmd list-sinks

# List sink inputs, i.e. apps sending audio somewhere:
pacmd list-sink-inputs

# Move an input to a different sink, for example from external
# sound card to builtin:
pacmd move-sink-input 79 0

Unfortunately, pacmd has verbose output and is tedious to work with. I was afraid I was going to wind up writing some kind of hacky wrapper script, but then people on Mastodon told me about pasystray and pavucontrol, which expose GUIs with a view of what’s playing and let you select what hardware it goes to. pasystray in particular gives you a little tray icon, which is pretty much what I wanted. There’s also pamix, which seems to expose some of the same info in a terminal interface.

These are in Debian, so:

sudo apt install pavucontrol pasystray

Not perfect, but much improved. I added pasystray to my xmonad startup script.

limiting wacom tablet pen input to a single screen under X.Org

I have a Wacom Intuos pen & touch drawing tablet. I don’t think this version has been made for a while, but it’s probably similar to current models. It acts as both a pen input device and a trackpad. I’ve always had the problem, when using two displays, where the pen input is mapped across both screens so that (typically) whatever image I’m working on I can only use half the tablet for.

I haven’t done much drawing on the computer since I got a second monitor anyway, so I never dug into it all that deeply. This time when I looked I found a blog post from 2017 on with pretty clear instructions.

I wound up running (sample output in comments):

# I didn't have this installed:
sudo apt install xinput

xrandr | grep primary 
# DisplayPort-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm

xinput | grep -i Wacom
# ⎜   ↳ Wacom Intuos PT M Pad pad                   id=16   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Pen stylus                id=17   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Pen eraser                id=18   [slave  pointer  (2)]
# ⎜   ↳ Wacom Intuos PT M Finger touch              id=19   [slave  pointer  (2)]

xinput map-to-output 16 DisplayPort-0
xinput map-to-output 17 DisplayPort-0
xinput map-to-output 18 DisplayPort-0

I left the “Finger touch” input alone, and sure enough the pen input winds up locked to my primary display while the tablet can still be used as a trackpad across both displays.

Not totally perfect and I’m not sure what the appropriate way to make this permanent is, but at any rate it removes a frustration and makes MyPaint fun to use again.

google pagespeed metrics for

I don’t generally worry about Google’s opinion of this website, but it seemed vaguely useful to be aware of the things they’re tracking here. Profiling usually reveals something you’ve missed. So I read through the PageSpeed Insights for A few things:

  • They suggest inlining CSS and JavaScript files. This would be easy enough, I guess, but I’m probably not going to do it. It’d bulk up each page with a bunch of boilerplate and anyway it kind of grosses me out.

  • Enable text compression: Ok, easy enough. I uncommented the line gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; in /etc/nginx/nginx.conf, which upped the score from 90 to 98, so I guess it just wasn’t enabled for… Some type. See also: nginx docs on compression.

  • They suggest minifying JavaScript. There’s a copy of jQuery on here - used for almost nothing, but handy every now and then. I swapped it out for the minified version of the latest version from the official download page. That got the score to 100.

  • It looks like I could tweak cache lifetimes on some files, but I think I won’t bother.

displaying moon phase emojis for current phase of moon

A while back I learned about the moon phase emojis:

🌑 🌒 🌓 🌔 🌕 🌖 🌗 🌘 🌑

I immediately wanted a way to display these in the terminal for (approximately) the current phase, but I didn’t initially have much luck finding a utility that would just spit out the phase of the moon without calling a web API or anything.

I realized while digging into this that gcal will display moon phases, although the documentation is impenetrable and trying to construct the right format string gave me a headache, so on to other approaches…

Paul Carleton wrote up a solution in Rust which uses a US Navy Observatory API, but I’d rather network access not be a requirement.

I did find a handful of libraries:

Of these, Samir Shah’s PHP code was the least hassle to work with. It doesn’t really satisfy my goal of “a shell script I can toss in ~/bin and use for whatever”, but it lets me stop thinking about the problem, so here’s a few lines of PHP called phasemoji (also on packagist, though that distribution isn’t set up in any kind of useful way).

Also, because I’m a dumbass, I bought a novelty domain and set up a web service. Behold:

p1k3 / 2020 / 12 / 28
tags: topics/audio, topics/emoji, topics/google, topics/linux, topics/moon, topics/phase-city, topics/phasemoji, topics/php, topics/technical, topics/yak-shaving

Saturday, December 5, 2020

the garden cart

the short version

I’ve been lugging a lot of heavy stuff around the place lately, which has had me wanting a utility item that was a staple of the gardening and building projects of my childhood: A garden cart.

My parents own several of these by now, but there’s a specific version I think of as The Cart. It’s probably been around for 30 years, give or take. I wrote about it back in 2009:

It consists of two wheels, four pieces of plywood, and some metal tubing + trim. Its construction is far less complex than that of most bicycles. It’s easy to load, capacious, and surprisingly sturdy. The wheels are positioned so that the cart seems almost to lift itself when you tug upwards on the handle. It moves easily over broken ground. It stands square on one end for dumping or storage.

Theirs turns out to be a Garden Way cart; unfortunately a company that went bankrupt a while back. Looking for the closest approximation I could find, these are what I came up with:

I’ll probably order one of those (although reading reviews of both has me nervous about materials & build quality). I’d also be remiss not to mention the Whizbang Garden Cart, a wooden do-it-yourself design (by a guy also notable for his homebrew chicken plucker):

the long version

I’ve wanted one of these for years, but I spent a lot of this summer & fall dragging tools, dirt, and building materials around our yard, and when I saw a recent Mastodon post with a cart in the background I decided to do something about it. I spent an evening grubbing through search results, and bookmarked a bunch of stuff along the way.

Garden Way seems to have been out of business since 2001, at least under that brand name, which it appears was once the parent company of Troy-Bilt. From the depths of Troy-Bilt’s support site, an article about parts for Garden Way carts:

Problem Where can I order parts for Troy-Bilt & Garden Way Garden Carts?

Solution These garden carts are products that we have licensed another company to build and support. Service, parts and/or warranty inquiries should be directed to the phone numbers and address below: …

Older Models: Prior to the 2001 closure of Garden Way Inc., similar garden carts were sold as “Garden Way Garden Carts”.

And one about Garden Way’s bankruptcy:

Problem What happened to the OLD Troy-Bilt manufacturing company?

Solution The product brand names Troy-Bilt® and Bolens® were formerly manufactured under the parent company Garden Way Inc. of Troy, NY.

In 2001 Garden Way Inc., filed for bankruptcy and is no longer in business.

On September 1, 2001 MTD Products Inc. out of Cleveland, Ohio purchased most of the remaining assets under the Troy-Bilt® and Bolens® names from the bankruptcy court.

MTD Products Inc. then transferred the Troy-Bilt® brand to the Troy-Bilt LLC Corporation. Troy-Bilt LLC Inc. is now manufacturing Troy-Bilt® brand outdoor power equipment.

There’s a New York Times obituary for Lyman P. Wood, the founder of Garden Way:

“Lyman was an incredible mix of entrepreneur, futurist and marketer,” said David Schaefer, a Burlington public relations man who was once host to a syndicated gardening television program about Mr. Wood’s company. “Our last conversation was about how are the political systems and resources of Earth going to stand up to increased population growth.” …

Mr. Wood is known for his book, “The Have More Plan,” a 1944 volume offering a thrifty wartime population a way to live off the land.

In the 1960’s he founded the privately held Garden Way Manufacturing Company, expanding New York’s Troy-Bilt rototiller company into publishing, retail stores and other ventures.

Which brings us to the carts themselves, in their current incarnations:

  • Gardener’s Supply Company
    • Large Gardener’s Supply Cart - USD 349.00
    • 66″ long, 42.25″ wide, 30″ high
    • “For over 25 years, our garden carts have been a beloved tool of gardeners everywhere.”
  • Carts Vermont
    • Large Garden Cart - USD 399.95
    • 67.25″ long, 41.50″ wide, 30.25″ high
    • “Home of the original “made in Vermont” garden cart and multi-purpose hauler. Carts Vermont has the tried and true garden, firewood, and utility carts for over 30 years!”

Based on photos and slightly differing measurements, I don’t think those are exactly the same cart off of the same assembly line, but they’re close enough they must have originated from the same plans somewhere along the way.

I got closer to an origin story with this piece by Nancy Wood - Lyman Wood’s daughter:

But first, here’s a bit of clarification about the origin of Country Home Products. The article says it was founded by Lyman Wood (my father) in the 1960s and that it “became known as Garden Way.” In fact, they were two completely separate companies. Lyman and others founded Garden Way in the 1960s with the rebirth of the original Rototiller, which became the Troy-Bilt rear-end tiller manufactured in Troy, New York. That successful mail-order business provided the funding for the growth of several Garden Way divisions in Vermont, including Garden Way Publishing (books for country living), Garden Way Research (manufacturer of the Garden Way carts) in Charlotte, plus the Garden Way Living Center retail store and the nonprofit Gardens For All in Burlington.

Unfortunately, as it grew larger, not everyone ascribed to that mission. A group of dissidents in Troy who were more concerned about profits masterminded an internal takeover on January 28, 1982, ousting Lyman and other key employees in Vermont on that day. Within two years, all of the Vermont operations had been sold or closed and over 200 employees relieved of their jobs. The nonprofit, Gardens for All, was the one exception, and it continues today as the National Gardening Association.

Many of those Vermont employees started new businesses (such as Vermont Teddy Bear, Gardeners Supply and Williamson Publishing), and Lyman was no exception. Even though he was forced out of Garden Way, he was still subject to a non-compete agreement. Garden-related products were out, so he investigated other possibilities. With his friends John Gibbons (former owner of Harrington’s) and Dick Raymond (former gardening guru and author at Garden Way) he came up with the name Country Home Products.

Drama, intrigue, garden industry strife!

Anyway, based on this, it seems like the Gardener’s Supply cart is a clear lineal descendant of the original. I’m pretty much assuming the same is true of the Carts Vermont one — though I haven’t seen anything to indicate what, if any, relationship they’ve got to the original company / factory.

directions for further research

I wound up ordering a copy of What a Way to Live and Make a Living: The Lyman P. Wood Story, by Roger Griffin.

Mostly I just want to buy a cart, but there’re hints of a cultural history lurking in this kind of thing. Back-to-the-land ideas that were circulating in the 1960s–70s, mail-order retail, the ubiquitous rototiller infomercials of the 1990s, whatever it is that leads people to do things like burn wood for heat and can their own green beans. It’s probably roughly one step from the Garden Way garden cart to, say, the Whole Earth Catalog.

I’m not sure how much I’m really going to pull on any of those threads, but it’s a good reminder that most things run deeper than it seems at first.

p1k3 / 2020 / 12 / 5
tags: topics/garden, topics/garden-carts, topics/lawn-and-garden, topics/tools


Bullseye freeze

Show Us Your Junk! Ep. 23 - Steve Albini (Shellac, Electrical Audio) | EarthQuaker Devices - YouTube — This shit is fascinating.

Steve Albini's Drum Machine (Big Black) - YouTube

Change EnWiki logo for Wikipedia 20 (I0c1f6930) · Gerrit Code Review

Kinesis Freestyle 2 and Linux, Part 1: Debugging – Waldon — A list of contact info for Republican senators/reps who voted for objections to the 2020 election.

Environment variables in Compose | Docker Documentation

BeagleV™ — "The First Affordable RISC-V Computer Designed to Run Linux"

mouse-reeve/bookwyrm: Social reading and reviewing, decentralized with ActivityPub

Joint Chiefs call riot a ‘direct assault’ on the constitutional process, affirm Biden as next commander in chief - The Washington Post — case you wondered how that was going...

Star Maker - Wikipedia

Puppet/Pontoon - Wikitech

Remote Directory Tree Comparison, Optionally Asynchronous and Airgapped | The Changelog

Wikidough - Wikitech

Git - Git Objects

Everything pundits are getting wrong about this current moment in content moderation: An ongoing list – Jillian C. York

Use Your Cast Iron Pan and a Tortilla for Extra-Crispy Pizza in Just 12 Minutes | Serious Eats

The Pizza Lab: Foolproof Pan Pizza | Serious Eats

My Git Aliases

Insurrection and misinformation is tearing the country into three Americas

Vaccines won’t significantly affect COVID-19 hospitalizations for ‘several months’ - The Longmont Leader