RSS/Atom Feed Analyzer
Analysis of https://www.tbray.org/ongoing/ongoing.atom
Feed fetched in 472 ms.
Warning Content type is application/atom+xml, not text/xml or applicaton/xml.
Feed is 190,175 characters long.
Feed has an ETag of "2f09b-657c331c11599".
Feed has a last modified date of Wed, 29 Jul 2026 17:22:05 GMT.
Feed is well-formed XML.
Warning Feed has no styling.
This is an Atom feed.
Feed title: ongoing by Tim Bray
Feed self link matches feed URL.
Feed has an image at rsslogo.jpg.
Feed has 20 items.
First item published on 2026-07-28T20:11:40.000Z
Last item published on 2026-02-16T20:00:00.000Z
All items have published dates.
Newest item was published on 2026-07-28T20:11:40.000Z.
Info Feed's Last-Modified date is newer than the newest item's published date (2026-07-29T17:22:05.000Z > 2026-07-28T20:11:40.000Z).
Home page URL: https://www.tbray.org/ongoing/
Home page has feed discovery link in <head>.
Home page has a link to the feed in the <body>
Formatted XML
<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0" xml:lang="en-us">
<title>ongoing by Tim Bray</title>
<link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
<id>https://www.tbray.org/ongoing/</id>
<link href="https://www.tbray.org/ongoing/"/>
<link rel="self" href="https://www.tbray.org/ongoing/ongoing.atom"/>
<link rel="replies" thr:count="101" href="https://www.tbray.org/ongoing/comments.atom"/>
<logo>rsslogo.jpg</logo>
<icon>/favicon.ico</icon>
<updated>2026-07-29T10:22:05-07:00</updated>
<author>
<name>Tim Bray</name>
</author>
<subtitle>ongoing fragmented essay by Tim Bray</subtitle>
<rights>All content written by Tim Bray and photos by Tim Bray Copyright Tim Bray, some rights reserved, see /ongoing/misc/Copyright</rights>
<generator uri="/misc/Colophon">Generated from XML source code using Perl, Expat, Emacs, Mysql, Ruby, and ImageMagick. Industrial-strength technology, baby.</generator>
<entry>
<title>Six Summer Days of Music</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp"/>
<link rel="replies" thr:count="2" type="application/xhtml+xml" href="/ongoing/When/202x/2026/07/26/Music-Camp#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp</id>
<published>2026-07-26T12:00:00-07:00</published>
<updated>2026-07-28T13:11:40-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts/Music"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Music"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced “Wickams”. My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female, worrying about mental fitness, and having time available to invest as you please rather than as you must</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced
“Wickams”.
My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one
near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female,
worrying about mental fitness, and having time available to invest as you please rather than as you must.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/camp-booklet-cover.png" alt="Cover of the WCAMS 2026 camp booklet"/>
<h2 id="p-1">The facts</h2>
<p>
250 attendees, a couple of dozen faculty (all professional musicians), a lovely waterfront venue at a swanky
boarding school campus in an
<a href="https://en.wikipedia.org/wiki/Mill_Bay,_British_Columbia">isolated small town</a>
.
The picture above is the cover of the
<a href="https://www.wcams.ca/PDFs/CAMP%20BOOKLET%202026.pdf">camp booklet</a>
.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260719_184302214.png" alt="View from the Malahat highway to Mill Bay"/>
<div class="caption">
<p>On the way to the camp.</p>
</div>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260720_015242804.png" alt="well-manicured lawns stretch down to the Pacific"/>
<div class="caption">
<p>
This space, while the camp is running,
<br/>
usually contains at least one person
<br/>
or group emitting
music.
</p>
</div>
<p>Let me should expand on that list above.</p>
<ol>
<li>
<p>
If you love music, there are multiple concerts per day, some quickies by whoever wants to between sessions, some highly
polished offerings from the faculty. They all offer
<a href="/ongoing/When/202x/2026/03/16/Pure-Sound-Please">pure sound</a>
; unamplified and in music-friendly spaces. The volume
and balance and tone are achieved by the performers’ technique and love, nothing is digitized or amplified.
</p>
<p>Then there are the concerts you’ll be practicing for and playing in.</p>
</li>
<li>
<p>The most common hair color was gray. I mean, there were kids and teens and thirtysomethings, but I’d say
more than half the
people were at least semi-retired. Not sure why, but it may have to do with retirees having spare time and
no childcare duties, and music having been more widely taught back when us Olds were kids, and the price, $1300 Canadian
(about a thousand US) per person, bed and board and music all-in. The venue was a private boarding school, thus “bed and board” was
of a school-dorm standard, clean and complete but very basic.</p>
<p>There were attendees who were unsteady on their feet and needed a golf-cart to get around and help on the stairs, but they
could still play the hell out of their fiddle or trombone or whatever.</p>
</li>
<li>
<p>The place was a matriarchy. My small string ensemble had three men and ten women, my cello seminar eight and two.
Don’t have a glib explanation except that music teachers were plentiful, and women are over-represented in the teaching
professions. So, it’s a space where (I’m guessing of course) women are less likely to feel crowded out
or bossed around.</p>
</li>
<li>
<p>
As for mental fitness while aging, the research is in and it’s not subtle. Music, both listening and performing, is
good for your mind/brain generally, and specifically
<a href="https://www.monash.edu/medicine/news/latest/2025-articles/music-can-stave-off-dementia-by-up-to-40-per-cent,-monash-study-finds">reduces
the risk of dementia</a>
.
</p>
</li>
</ol>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260723_164158227.png" alt="A woman is towing a large horn behind her in a small cart"/>
<div class="caption">
<p>For privacy reasons, we were all asked not to share photos from the camp in public, but I think this
one is safe.</p>
</div>
<h2 id="p-4">The music</h2>
<p>
I found the choice of tunes contrarian; did not hear a single Mozart chestnut.
I think this works because everyone at the place is musically literate and many are erudite; they’ve heard enough Mozart
classics.
Let me sort the choices.
One basket: Works written in the
attendees’ lifetimes, including a lot of female composers and Canadian stuff. Another: Oddments from the back pages of the usual
titans, for example Beethoven’s
<a href="https://en.wikipedia.org/wiki/Septet_(Beethoven)">Septet</a>
(his first big hit, he came to hate it), and
the graceful but weird second movement of Stravinsky’s
<a href="https://en.wikipedia.org/wiki/Concerto_in_D_(Stravinsky)">Concerto in D</a>
.
Another: Popular-music classics arranged for acoustic instruments. I heard (and will have more to say about)
<cite>Bohemian
Rhapsody</cite>
for woodwind quintet, Cohen’s
<cite>Hallelujah</cite>
for seven violas, and the Cowboy Junkies’
<cite>Cold Tea
Blues</cite>
for four female voices and ukulele.
</p>
<p>
The big final choir-and-orchestra blowout, with 110 people on stage, was
<a href="https://en.wikipedia.org/wiki/Schicksalslied">Brahms’ <cite>Schicksalslied</cite></a>
, which I bet almost none of the people
reading this have ever heard of (I hadn’t).
</p>
<p>And also Bach. Because of course.</p>
<h2 id="p-6">How it works</h2>
<p>You join as many ensembles as you care to. Most people will find themselves in one chamber group or another, an orchestra or choir,
and some sideline track like for instance, Early Music, Celtic, or Vocal Jazz. The organizers try to get the music mailed out a
few weeks before the camp, but some lags and some only arrives when you hit the first session on Monday. You get five hours
of rehearsal and then you perform it on Friday night or Saturday.</p>
<p>Obviously this calls for quite a bit of practice; there’s plenty of space for that. As you walk from wherever to wherever
around the joint, you always hear the call of some instrument or voice, often running repeatedly through a tricky bit.
Noobs join as many groups as they can fit in the schedule.
Veterans have learned to dial it back a bit; I took their advice, signed up for only five tracks and performed only twice.</p>
<p>All this is a pretty fucking intense experience, let me tell you. And here’s what I’ll take away: The radiant and heartfelt
smile on the face of nearly every musician when they finish their performance. And
basically every piece gets thunderous applause, with hollering. Usually but not always deserved.</p>
<h2 id="p-2">My adventure</h2>
<p>I am not particularly gifted at music. I’m old and have pursued the cello on and off since I was a kid, with much more off
than on and multiple no-cello decades.
What happened was, my wife Lauren is a gifted singer with a powerful soprano who enjoys participating in choral music. Her
choir buddies have been encouraging her to come to WCAMS for years. I wanted to support her and it sounded like fun, so I ended a
25-year gap and started cello lessons again last October. It’s been painful clawing my way back toward my previous level of
skill, which was never that great. But WCAMS makes it clear that beginners are welcome, will be encouraged and
supported. So we signed up.</p>
<p>Anyhow, my cello skills were solidly in the bottom quartile of the couple of dozen cellists in attendance. Which was humbling
but not a problem actually, because of that encouragement and support I just mentioned.</p>
<p>But during that 25-year cello gap I took up the study of West-African and Afro-Cuban drumming, with weekly lessons, and
then for the last year or so, regular participation in a multi-hour by-invitation-only weekly drum jam. Judging one’s own
talents is tough, but I seem to get musically further with less work on the drumming side. I even get the occasional spontaneous compliment
that isn’t just politeness; something that has rarely-to-never happened in my cello career. So I see drums as my primary musical
hobby.</p>
<p>But WCAMS doesn’t have an African-music group; thus my cello lessons. Then when we got the initial program I spotted
the Celtic track, and I know that music comes with drums.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/Bodhran.png" alt="A basic bodhrán" class="inline"/>
<p>
So, without asking anyone whether it was a good idea, the week before
the camp I rented a
<a href="https://en.wikipedia.org/wiki/Bodhrán">bodhrán</a>
. It came with a “how to play” DVD that I watched all of, then I went
and typed “bodhrán practice music” into YouTube and of course there’s plenty. After a few hours I was
confident that I could keep up if they didn’t go too fast (they didn’t).
It’s pretty easy to play even though the actual strike-the-drum
motion is eccentric, unlike any other percussion instrument of my acquaintance.
</p>
<p>I should mention that “bodhrán” is pronounced with the “dh” silent, “bo” as in “bother” and “rán” as in “roan”.</p>
<p>
At the opening-night gathering, I tracked down Amy, the Celtic-track leader, and asked if it would be OK if I
showed up with the drum. She was welcoming (
<em>everyone</em>
at WCAMS seems permanently welcoming).
When we struck up the first tune at the beginning of our Monday gathering, she looked a little nervous but when I joined in
she nodded emphatically; it turned out the last time a fresh face equipped with a bodhrán had turned up, they couldn’t actually
find or stay with the beat.
</p>
<p>
Anyhow, I joined Amy’s Beginner and Advanced classes, learned a whole lot about Celtic music (starting from
zero helps), and had more fun than ought to be legal. Got unsolicited compliments.
Our performance was at the wind-up party after
the big final Brahmstravaganza, and the crowd yelled and whistled, dancing broke out. I was full of
joy
<span class="dashes"> —</span>
I think the whole band was. I’ll never forget it.
</p>
<h2 id="p-7">Musical take-aways</h2>
<p>Here are the ones that I can still hear when I think back on them.</p>
<p>
The woodwind quintet (who came to camp together as a group) played
<cite>Bohemian Rhapsody</cite>
on that little waterfront
auditorium in the picture above. The arrangement was respectful and skilful and it highlighted what a wonderful, complex, piece
of music that is. 100% by Freddy Mercury, who we all think of as Queen’s muscle, but this is a masterpiece by one of the last
century’s top composers, any genre.
</p>
<p>
Arvo Pärt’s
<cite>Spiegel in Spiegel</cite>
by faculty cellist
<a href="https://marinahasselberg.com">Marina Hasselberg</a>
and percussion pro
<a href="https://www.rcmusic.com/teachers/g/greg-samek">Greg Samek</a>
, the latter on vibraphone. Exquisite, the notes suspended
in space like rays of light.
</p>
<p><cite>Krunk</cite>, an Armenian folk song full of tragedy, on solo flute. Impossible to keep your eyes dry.</p>
<p>A Ukrainian song, lyrics by Shevchenko (there are lots, not sure which) delivered by Eric Hominick, a great singer and
pianist who is about to retire from the West to East coast, and will be much missed.</p>
<p>
<a href="https://thesession.org/tunes/82">Pride of Petravore</a>
is a hornpipe, the song that the awesome
<a href="https://www.amystephenmusic.com">Amy Stephen</a>
used to launch the Celtic-music track. She projected the music on the
whiteboard but wouldn’t make a print-out, insisting that we learn it so that when we opened our set we’d be focused on the music
not the notes. It’s the song that Amy used to teach me I could get along on bodhrán.
</p>
<p>
I’ll be honest, I’ve always liked
Irish-traditional music, have even been lucky enough to hear it in its natural habitat, a rundown pub in a remote corner of
Ireland. But I’d never actually
<em>thought</em>
about it much. Now I have, and it’s deeper and stranger than I’d imagined. I’m pretty sure I’ll be investing
time in it.
</p>
<p>I really hope I get a chance to learn from Amy again, one way or another.</p>
<p>
<a href="https://www.didchoi.com">D.I.D. Choi</a>
is a young Canadian composer who, in his twenties, is off in LA, working on
music for films and games and so on. His
<a href="https://www.didchoi.com/remembrance">Remembrance</a>
, written in 2019, played by a wind ensemble,
created a cloud of music magic in the air over the stage. I found my eyes closed, better to take it in. I’m going to suggest if
you notice a concert anywhere near you with something by Choi, run don’t walk to the ticket booth.
</p>
<p>
I already mentioned the Cowboy Junkies’
<cite>Cold Tea Blues</cite>
and it’s the one that hit me the hardest. The four
singers had lovely light voices, the ukulele swung gracefully, and they did a bit of gentle choreography. The harmonies were
fabulous. Anyone who’s heard this (and you can guess from the title) knows it’s not a happy song, but they shuffled
that under the
covers, casting a spell of light-hearted romance. Then when they planted the cruel razor sharp-hook at the end of the line of lyrics
they’d been dangling so invitingly, there were audible gasps and cries of sorrow from the crowd. Never experienced anything
like it.
</p>
<h2 id="p-8">Big band!</h2>
<p>I’m old, but this is the music my parents listened to. I’d always thought of it as boring fuddy-duddy stuff. That was,
until I got in a theater with good acoustics and a live 20-piece brass band. This stuff is loud and aggressive at a level that
approaches Rock&roll, the arrangements are better, and the tunes are strong.</p>
<p>The way it works is, the different horn sections hand the melody and chorus back and forth, never the same twice, then
somebody stands up and plays a solo, a pre-assigned number of bars. There was this one solo by a young trombonist that pretty
well melted my mind. I wonder if this stuff retains any commercial viability, as in, is there somewhere I can go out and see it?</p>
<h2 id="p-9">Anyhow…</h2>
<p>Earlier today I bought the rental bodhrán, it’s a basic model and was pretty cheap. I think it’s full of happiness.</p>
</div>
</content>
</entry>
<entry>
<title>Sports and Truth</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports"/>
<link rel="replies" thr:count="3" type="application/xhtml+xml" href="/ongoing/When/202x/2026/07/10/Summer-Sports#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports</id>
<published>2026-07-10T12:00:00-07:00</published>
<updated>2026-07-16T10:08:37-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Sports/Soccer"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Sports"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Soccer"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Sports/Baseball"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Baseball"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league baseball game. Took pictures and thought about enjoying this stuff</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league
baseball game. Took pictures and thought about enjoying this stuff.</p>
<h2 id="p-1">“Haha, sportsball…</h2>
<p>I know that a whole lot of people, including not a few among my online audience, see neither joy nor virtue in fandom.
That’s an attitude they’re entitled to have assuming they realize the absence of joy is a them thing.</p>
<p>After joy there’s virtue. Yes, organized professional sport raises serious ethical issues. That’s putting
it politely. Many-to-most branches of commercial sport are rife with exploitation, oppression, and corruption. I’m not going to
push back, and in fact I sometimes feel guilty about enjoying the spectacle as much as I do.</p>
<p>More to come on that.</p>
<h2 id="p-2">On hating FIFA</h2>
<p>I’m not going to re-tell the tales of galaxy-scale corruption, the ostentatious displays of wealth and privilege,
and the cozying-up to dictators, both real and wannabe. Attending the 2026 World Cup gave me more reasons to
hate; in particular the ticket-buying experience.</p>
<p>
I have always loved fútbol generally and the World Cup in particular, as witness the
<a href="/ongoing/What/Sports/Soccer/">plentiful digital ink</a>
I’ve spilled on the subject here on the blog. So when we
learned that there were going to be games in Vancouver, I determined that I’d attend one. It was obvious they’d be
popular so I decided to pounce on the first opportunity. Which is how I ended up buying (no, really) an NFT.
</p>
<p>
FIFA’s first round of sales wasn’t tickets, but NFTs, some of which came in packages that included a right to buy tickets for
a game, participants unknown.
<a href="https://collect.fifa.com/collectible/427320121710592">Here</a>
<span class="dashes"> —</span>
the first and
I fervently hope the last time I link to an NFT
<span class="dashes"> —</span>
is part of the
package. Can’t show you the right-to-buy NFT because I had to “burn it” to turn it into tickets.
</p>
<p>Neither the NFT nor the tickets were cheap; my son and I attending that game cost well over a thousand
(Canadian) bucks. (At this point, other attendees are scoffing at me for having paid so little.)
For what it’s worth, the seats were good.</p>
<p>And let’s further enhance our basket of reasons to hate FIFA by noting that the ticket prices exclude everyone who’s not
a member of a very privileged demographic.</p>
<h2 id="p-3">The match</h2>
<p>
It was
<a href="https://www.fifa.com/en/match-centre/match/17/285023/289273/400021480">Egypt vs New Zealand</a>
, played at Vancouver’s
“BC Place” stadium on June 21st.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_005115695.png" alt="Preparation for Egypt vs New Zealand at the 2026 World Cup"/>
<div class="caption">
<p>The march-in ceremonies.</p>
</div>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_010008011.png" alt="New Zealand kicks off vs Egypt at the 2026 World Cup"/>
<div class="caption">
<p>New Zealand kicks off.</p>
</div>
<p>Confession: My son and I had a blast, can’t think of it without smiling. Most of downtown Vancouver had become a swirl of
happiness, people dressed up in all sorts of fanciful outfits, singing, chanting, drinking, dancing, photographing. I
particularly liked the pharaoh’s-headdress the Egypt fans were wearing.</p>
<p>
The game was great fun
<span class="dashes"> —</span>
<a href="https://www.fifa.com/en/watch/30AjAOgeWPeCcjnTx6hdH0">watch
the highlights</a>
. NZ played better than their international rating would suggest and we got to watch
<a href="https://en.wikipedia.org/wiki/Mohamed_Salah">Mo Salah</a>
carve his way
into the defense and put away a lethal strike.
</p>
<p>
There were way more fans from Egypt than from NZ, but the Kiwis had better-organized cheering; they’ve figured out how to set the
syllables of “Aotearoa” to the
<cite>Seven Nation Army</cite>
riff, and does it ever sound great.
</p>
<p>And, while FIFA are assholes, those assholes really know how to run a
tournament. They had sold out BC Place to the last seat, but never for a moment did I feel scarily crowded. I even managed
to grab a decent beer and sandwich at half-time without feeling crushed or catching Covid; it helped that I masked up.</p>
<p>I’ve watched a lot of the tournament on TV and enjoyed it. The games, to be frank, have become less and less
interesting as the idiosyncratic minor players (in particular the non-European ones) get eliminated by the better-funded Euros with
their crushingly-precise and often-boring game. It would’ve been nice if the final four included an outsider.</p>
<p>And if you can set that FIFA issue aside, at some level it’s a beautiful thing; nations competing against each other in a
framework built on raw aggression, physical virtuosity, disciplined teamwork, and kicking a ball around.</p>
<h2 id="p-7">World Cup without FIFA?</h2>
<p>It could be done and it’d be politically popular. The nations of the world get together, dissolve FIFA on the evidence of its
many sins, and run the tourney on some sort of co-op basis. They could slash most of the ticket prices and
there’d still be buckets of money to go around to the national associations and some selected charities, based on the
sponsorships and TV rights. Some of it would go to peacekeeping and Doctors Without Borders.</p>
<p>I can dream.</p>
<h2 id="p-4">The game</h2>
<p>(One says “football match” and “baseball game”. Sounds wrong the other way around. Yay English.)</p>
<p>
It was my son’s birthday so nine of us went off to watch the
<a href="https://en.wikipedia.org/wiki/Vancouver_Canadians">Vancouver Canadians</a>
host the
<a href="https://en.wikipedia.org/wiki/Eugene_Emeralds">Eugene Emeralds</a>
in what’s called the “High-A” minor league.
Oh my goodness, you can actually watch
<a href="https://www.milb.com/live-stream-games/g819076">video of the whole game</a>
. I don’t recommend it.
The tickets for nine, decent seats, cost $276 all in.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/TXT56290.png" alt="Vancouver Canadians vs Eugene Emeralds, July 1, 2026"/>
<p>It was an OK game. Vancouver leapt to an early lead, then the pitching collapsed and the Emeralds got 12 runs; the home team
brought it back to within three by game’s end.</p>
<p>But, what a happy place! Kids everywhere, dressed in hot-dog condiments and pop stains. Snuggling couples. Beer
vendors. Hollering hosers.</p>
<p>Since, in baseball, nothing is happening most of the time, the emphasis is on chit-chat and eating and drinking and
people-watching. I noticed that when I wasn’t talking I was usually smiling.</p>
<p>
This happened: My son’s partner, let’s call them “X”, is of East-Asian
extraction
<span class="dashes"> —</span>
a Richmond kid, for the Vancouver-savvy.
Born here, perfectly Canadian, but sports-oblivious and had never been to a ball game.
When the seventh-inning stretch came along, I tapped X’s shoulder and said “time to get up and sing”. The crowd charged lustily
into
<cite>Take me out to the ball game</cite>
, and X’s face got this absolutely hilarious I’m-on-an-alien-planet look.
Later, X told me “That’s the whitest thing I’ve ever seen.”
</p>
<p>After the game, fireworks. They were pretty minor-league.</p>
<h2 id="p-5">So MLB is OK?</h2>
<p>I have a bit of back story. While working at Sun and then for AWS, I helped MLB evaluate and use various
bits of Internet technology. Of all the world’s sports organizations, MLB is apparently the leader in using the Net to
promote and deliver their product. Plus the people I worked with were nice and highly competent. It was one of the highlights
of my career.</p>
<p>
You will have noticed an absence of the sort of ranting that FIFA provoked above. Does this mean that the MLB
organization is honorable and nice? Not at all. They are a gaggle of billionaires
with
<a href="https://en.wikipedia.org/wiki/Federal_Baseball_Club_v._National_League">an explicit grant</a>
of monopoly
privileges in the USA.
</p>
<p>The Vancouver Canadians are the only surviving minor-league team in Canada; MLB has shut down many minor-league teams because
while they make people happy they don’t make much money. Baseball is a big business and, just like any other big business
these days, often acts in ways that most people would consider unethical.</p>
<p>
There’s what looks like a really good book about all this,
<a href="https://www.penguinrandomhouse.ca/books/719997/homestand-by-will-bardenwerper/9780385549653">Homestand:
Small Town Baseball and the Fight for the Soul of America</a>
by Will Bardenwerper. I haven’t read it yet, but you can get the
gist in
<a href="https://walkingtheworld.substack.com/p/two-interviews-an-author-and-a-painter">this conversation</a>
between
Bardenwerper and Chris Arnade.
</p>
<h2 id="p-6">The problem is…</h2>
<p>…not baseball, nor fútbol, it’s late-stage capitalism, which reliably makes anything it gets its hands on worse.
If we don’t like the way those guys behave, and in particular if
we think some of it should be illegal (it should!) that’s a political problem that has to be addressed with politics.
Feels like it would be a pretty popular party platform plank.</p>
<p>I’m not one who’ll preach “no ethical consumption under capitalism” at you, but I don’t have a good come-back when someone
challenges me on sending money to the FIFA or MLB scum. Is there anyone reading this who is entirely comfortable with all the
places and practices that bring them enjoyment?</p>
<h2 id="p-8">The truth is on the field</h2>
<p>The worlds of business and politics never contain a sentence that’s unscripted or incautious. The substrate of
trust that a society needs to function is today weakened and still weakening. There’s a pervasive belief
that what’s on our screen is at least in part self-interested untruth or, put another way, marketing. I often think of this as
“The LinkedIn pathology”.</p>
<p>Not out on the field. When Mo Salah’s got the ball at his feet and charges at the NZ back line,
nobody in the world knows what’s going to happen in the next few seconds. When the Canadians’ pitcher walks in the fifth run of
the inning, nobody can tell which way his search for the strike zone will turn.</p>
<p>It’s unpackaged, unvarnished, and unedited. It’s physical truth, being created in real time.</p>
<p>Put another way: Live unscripted improvised drama. It’s not like anything else in most people’s lives; the only thing I
can think of that comes close is an instrumental break in a jam, whether that’s in your basement on a stage before thousands.</p>
<p>It thrills and entertains me. I make no apologies for that. I’d sure like to improve the societal basis that poisons it,
and increasingly more and more aspects of our lives, so I don’t have to feel bad about being a fan.</p>
<p>In the meantime, 🎵<i>Take me out to the ball game…</i>🎵</p>
</div>
</content>
</entry>
<entry>
<title>Mastodon, The Only Good Choice</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon"/>
<link rel="replies" thr:count="0" type="application/xhtml+xml" href="/ongoing/When/202x/2026/07/05/Choose-Mastodon#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon</id>
<published>2026-07-05T12:00:00-07:00</published>
<updated>2026-07-09T11:23:45-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Business/Publishing"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Business"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Publishing"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World/Social Media"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Social Media"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean any combination of less useful, less safe, or less fun. It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say, offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean
any combination of less useful, less safe, or less fun.
It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say,
offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed.</p>
<p>
By “Mastodon” I mean the many servers, mostly (but not all) running the
<a href="https://github.com/mastodon/mastodon">Mastodon software</a>
, that
communicate using the
<a href="https://en.wikipedia.org/wiki/ActivityPub">ActivityPub protocol</a>
. Now I’ll try to convince you to start using one of
them.
</p>
<p>
<i>
[I posted an earlier version of this essay called
<a href="/ongoing/When/202x/2025/11/03/Time-to-Migrate">Time To Migrate</a>
last year, but enough things have changed
that it’s worthwhile revising and reposting.]
</i>
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/join-mastodon.png" alt="join-mastodon.org"/>
<div class="caption">
<p>
Start at
<a href="https://joinmastodon.org">joinmastodon.org</a>
</p>
</div>
<h2 id="p-4">The simplest argument</h2>
<p>Have you noticed that social-media products, in the long term, seem inevitably to enshittify?
I have. But there’s a major exception, a tool that’s been serving billions of us for
decades, and works about as well as it ever did. I’m talking about email.</p>
<p>Why does email stay reasonably healthy? Because nobody owns it. Anyone on any server can communicate with anyone else on any
other. Nobody can buy it and make it a vehicle for their politics. Nobody can crank up the ads or
make things worse to improve their profit margin.</p>
<p>
Mastodon’s like email that way. Plus it does all the Post and Repost and Quote and Follow and Reply and Like and Block stuff
that you’re used to, and there are thousands of servers. Anyone can run one and nobody can own the whole thing. It doesn’t have
ads and it won’t. It’s dead easy to use and it’s fun and you should
<a href="https://joinmastodon.org">give it a try</a>
.
</p>
<p>
The rest of this essay goes into detail about why Mastodon is generally great and why the alternatives have little future.
But if the pitch sounds good so far, stop reading,
<a href="https://joinmastodon.org/">go get an account</a>
, and climb on board.
</p>
<!--
<p>But first…</p>
<h2 id='p-5'>Is social media worth saving?</h2>
<p>I regularly read that it’s pernicious and evil, damaging the mental health of young people,
and should be stamped out or foregone. I disagree. I think the problem is late-stage capitalism; every company that
offers a social-media product is under relentless financial pressure to yield steadily-growing profits, going on forever.</p>
<p>Since
there’s a global limit to the number of customers that any service can attract, that means they have to suck more out of each
user. Where by “suck more out of” I mean what social-media professionals call “increase engagement”.</p>
<p>So, engagement is increased at literally any cost, notably including the
<a href="https://erinkissane.com/meta-in-myanmar-part-i-the-setup">slaughter of the Rohingya</a>.</p>
<p>I for one do <em>not</em> agree that there’s anything essentially pernicious about having networked online
conversations. Once again, I appeal to email, which generally doesn’t exhibit the usual social-media pathologies.</p>
<p>I’d even appeal to Twitter-that-was, when authoritative voices were
talking about any subject from every angle, and when you could find out if you’d just felt an earthquake and be horrified or overjoyed
about Maple Leafs playoff collapse. It was fun and useful and educational.</p>
<p>So, Social Media? Yes. Centralized corporate social media? No.</p>
<p>Now, here are a bunch of great things about Mastodon, if that pitch above didn’t quite convince you to switch now.</p> -->
<h2 id="p-18">Why now?</h2>
<p>Along with that “can’t be owned” and “no ads” stuff,
the software is getting really good, particularly in the last couple of releases. It’s got cool features you won’t find
elsewhere, and there’s very little cool stuff from elsewhere that’s not here.</p>
<p>There was a time when newly-arrived people had
confusing or unfriendly experiences, or missed features that were important to them.
It looks to me like those days are over.</p>
<h2 id="p-6">Migration</h2>
<p>
Mastodon is many thousands of servers, and you can join the biggest,
<a href="https://mastodon.social/explore">mastodon.social</a>
, or
<a href="https://joinmastodon.org/servers">shop around for another</a>
. But here’s the magic thing: If you end up disliking the
server you’re on, or find a better one, you can migrate and
<em>take your followers with you</em>
! You can’t ever get locked
in.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/serveres.png" alt="Choosing a Mastodon server"/>
<div class="caption">
<p>The server-selection menu has lots of options.</p>
</div>
<p>Migration is probably Mastodon’s most important feature. It’s why no billionaire can buy it and no corporation can enshittify it. As
far as I know, Mastodon is the first widely-adopted social software ever to offer it.</p>
<h2 id="p-7">Interaction</h2>
<p>You hear it over and over: “I had <a big number> of followers on Twitter and now I have <a less-big number> on
Mastodon, but I get so much more conversation and interaction when I post here.”</p>
<p>One of the people you’ll hear that from is me.
My follower count is a bit less than half the 45K I had on Twitter-that-was, but I get immensely more intelligent, friendly
interaction than I ever got there. (And sometimes I get told firmly that I’m completely wrong, but hey.) It’s
the best social-media experience I’ve ever had.</p>
<p>Dunno about you, but conversation and interaction
seem like a big deal to me. One reason things are lively is…</p>
<h2 id="p-8">Sex</h2>
<p>Here’s an axiom: An ad-supported service can’t have sex-positive or explicit content. Advertisers simply won’t tolerate
having their message appear beside NSFW images or Gay-Leatherman tales or exuberant trans-positivity. Mastodon
has all that stuff.</p>
<p>Of course, you gotta be reasonable, posting anything actually illegal will get your ass perma-blocked and your account
suspended. So will posting anything that’s NSFW etc without a “Content Warning”. That’s a built-in feature of Mastodon which
puts a little warning (“#NSFW” and “#Lewd” are popular) above your post, which is tastefully blurred-out until whoever’s
looking at it clicks on “Show content”.
I use these all the time when
I post about #baseball or #fútbol because a lot of the geeks and greens who follow me are pointedly uninterested in sports.</p>
<p>
(Oh, typing that in reminds me that you can subscribe to hashtags on Mastodon: Let’s see, I currently subscribe to, among
others,
<a href="https://mastodon.social/tags/vancouver">#Vancouver</a>
,
<a href="https://mastodon.social/tags/murderbot">#Murderbot</a>
, and
<a href="https://mastodon.social/tags/Fujifilm">#Fujifilm</a>
.)
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/ivory.png" alt="The Ivory For Mastodon app for Apple platforms"/>
<div class="caption">
<p>The “Ivory for Mastodon” app for Apple platforms,<br/>one of the many fine alternative clients.</p>
</div>
<h2 id="p-9">Moderation and defederation</h2>
<p>Did I just mention, two paragraphs up, getting blocked? Mastodon isn’t free of griefers, but the tools to fight them are good
and getting better.</p>
<p>The good news is that each server moderates its own members. There’s variation
of the standards from server to server, but less than you’d think. Since there are thousands of servers, there are
thousands of moderators, which is a lot.</p>
<p>If you act in a way that others find offensive, you’ll probably get blocked by the offended people and also reported; the
report can come from any server and it’ll go to the moderators on yours. On a well-run server, those mods will have a look and
if you’ve actually been bad, your post might get yanked and you might get warned, or in an extreme case, booted off.</p>
<p>(I’ve been reported for saying unkind things about Bibi Netanyahu and for posting too many photos of my
cats (no, really) but that kind of thing is cheerfully ignored by good moderation teams.)</p>
<p>
Then there’s Mastodon’s nuclear weapon: Defederation.
Suppose you’re prone to nasty bigotry in public and you get reported a lot and your server’s moderators
<em>don’t</em>
rein
you in. Eventually, word will get around, and if things aren’t cleaned up, most servers will defederate yours, so that
<em>nobody</em>
on their server can see posts from anyone on yours. Your site is no longer part of the “Fediverse”; this is a powerful
incentive for server owners to take moderation seriously.
</p>
<p>
The effect is that the haters and scammers and Nazis who show up mostly get shuffled off-stage PDQ. Not
always, unfortunately; a couple of years ago a wave of incoming Black people had bad experiences with racist abuse. Ouch. Is
there
<em>anywhere</em>
in the world that a loud-voiced Black woman won’t provoke a chud eruption?
<i>[sigh]</i>
</p>
<p>But the good news is that recent Mastodon releases have been shutting prone-to-abuse channels
down, so things are better than then and should continue to improve.</p>
<h2 id="p-11">Links are good</h2>
<p>
Corporate social-media services like to
<a href="https://talkingpointsmemo.com/tpm-25/how-elon-musks-changes-to-x-made-our-discourse-far-stupider">downrank posts with
links</a>
.
Which makes me want
to scream, because my favorite thing to post is a link+reaction to something cool, and so are my favorite posts to read.
</p>
<p>On Mastodon, when your post has a link, the software automatically fetches a preview of whatever you linked to and uses
it to decorate the post.
I mean, it’s the damn Internet, it only got interesting to non-geeks when we figured out how to turn millions of servers
into a great big honking searchable hypertext.</p>
<h2 id="p-12">Search</h2>
<p>Speaking of which, Mastodon search is pretty good these days. It’s become, just like this blog, part of my outboard
memory, and I’m always typing things like “telephoto from:me has:media” into the search box. Fast enough, too.</p>
<h2 id="p-13">Great clients</h2>
<p>Another good thing about Mastodon is that there is plenty of good client software
to choose from, mostly open-source. The best ones are miles ahead of Xitter and Threads and
Bluesky and, really, anything.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/Screenshot_20251110-104045.png" alt="A post from Brian Krebs in the Tusky app"/>
<div class="caption">
<p>Anniversary post in the Android “Tusky” app.</p>
</div>
<p>
There are official Web and mobile clients from the Mastodon team and they’re fine, especially for admin and moderation work.
But iOS people should check out
<a href="https://apps.apple.com/us/app/ivory-for-mastodon-by-tapbots/">Ivory</a>
, Androiders should look at
<a href="https://tusky.app">Tusky</a>
, and everyone should try
<a href="https://phanpy.social">Phanpy</a>
. I live in Phanpy on both my Mac and my Pixel
<span class="dashes"> —</span>
it’s a
Web thing but installable as a PWA.
</p>
<p>
Commercial products, especially social-media services, have
<em>never</em>
been at peace with third-party clients.
Twitter used to be, but then it stabbed those developers in the back. It’s easy to
understand why; every product manager has it drilled into them that they
<em>must control the user experience</em>
. This ignores
the ancient wisdom (I first heard it from
<a href="https://en.wikipedia.org/wiki/Bill_Joy">Bill Joy</a>
) “Wherever you work, most of the smart people are somewhere else.”
</p>
<p>
Mastodon doesn’t have that kind of product manager, but it does have a
<a href="https://docs.joinmastodon.org/api/">fully-capable API</a>
, developed in the open and with no
hidden or restricted features. Which means you’re going to get better clients.
</p>
<h2 id="p-14">Algorithms</h2>
<p>The algorithms that commercial social-media services use to sort your feed have one goal only: Maximize engagement and thus
revenue. They have no concern for quality or morality, and have been widely condemned by people who think about this
stuff. So much so that there’s a feeling that Algorithms Are Bad.</p>
<p>Mastodon has an algorithm: Show the posts from the accounts you follow, latest first. It works pretty
well. It also has “Trending” feeds of the most popular posts, hashtags, and links. I hit those once a
day or so to get a feeling for what’s going on in the world.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/Trending.png" alt="Trending screen in PhanPy"/>
<div class="caption">
<p>The “Trending” display in Phanpy.</p>
</div>
<p>I do think there’s room for improvement here; Bluesky has shown off the idea of pluggable feed-ranking algorithms, with many to
choose from, and I like it. No reason in principle we couldn’t have the same thing on Mastodon.</p>
<h2 id="p-15">Money</h2>
<p>Every other social network has started with a big pot of money, whether from venture-capital investors (Twitter, Instagram,
Bluesky) or from a Big Tech corporate parent (Google+, Threads). The people who provided that money want it back, plus a whole
lot more.
Thus, the manic drive for “engagement” and growth at all costs. They need to build huge data centers and employ an elite
operations team plus an even more elite marketing group.</p>
<p>Mastodon, eh… a gaggle of nonprofits and co-ops and unincorporated affinity groups, financed by Patreon or low annual dues
or Some Random Geek who likes running a server.</p>
<p>Since nobody owns it, nobody can extract a profit from it. Which means that from the big-money point of view, it’s entirely
non-investable. The goal isn’t for anybody to make money, it’s to be instructive and intense and fun. It’s run on the cheap.
You know what they call systems that are cheap and diversified? Resilient. Sustainable. Long-lived.</p>
<p>
Last year
<a href="https://www.tbray.org/ongoing/When/202x/2024/11/15/Not-Bluesky">I wrote</a>
:
“Think of the Fediverse not as just one organism, but a population of mammals, scurrying around the ankles of the bigger and
richer alternatives. And when those alternatives enshittify and fall, the Fediversians will still be there.” After
“scurrying” I should have added “and evolving”.
</p>
<h2 id="p-19">But Bluesky!</h2>
<p>
I like the Bluesky people and their software and some of their ideas. But I don’t see it as a good long-term
option, for two reasons. First, it’s not decentralized, in that it couldn’t survive if
<a href="https://bsky.social/about/faq">Bluesky Social PBC</a>
fell on bad times. Yes, I know about
<a href="https://blackskyweb.xyz">BlackSky</a>
(am a fan) and
<a href="https://eurosky.tech">Eurosky</a>
(dunno enough yet) and they don’t change my opinion.
</p>
<p>
Second, I think it’s inevitable that Bluesky-the-company will indeed go sour. They have raised
<a href="https://techcrunch.com/2026/03/19/bluesky-announces-100m-series-b-after-ceo-transition/">a total of $123M</a>
in
venture-capital investments. The biggest chunk, $100M from
<a href="https://baincapitalcrypto.com">Bain</a>
and friends, was signed in April 2025 but not disclosed
until a year later. Why not, I wonder? Actually, I don’t wonder at all: Because they knew perfectly well that long-term
survivors like me would be horrified.
</p>
<p>You, see the people who coughed up all those millions didn’t do it out of pure love or idealism, they want Bluesky to become
a money machine that emits a fountain of gold so they get a payback in the billions.
Which, OK; that’s what Venture Capital is for. Except for, I see no evidence that Bluesky has anything resembling a business
model. See the problem?</p>
<p>I see two possible outcomes: The company craters when the money runs out, or it builds a
lucrative income stream, probably based on advertising. Which means we can expect to see the pathologies that make X and
Facebook and friends so loathsome.</p>
<h2 id="p-16">Mastodon’s the only option</h2>
<p>The only social-media option, I mean, that’s decentralized, not owned or controlled by anyone, and working well today as you
read this. It’s intense and interactive and fun. Why settle for less?</p>
<p>
<i>(Disclosure: I have no formal connections with the Mastodon organization, aside from being a low-level supporter on
Patreon.)</i>
</p>
</div>
</content>
</entry>
<entry>
<title>Automata, Built For Comfort or Speed</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs"/>
<link rel="replies" thr:count="0" type="application/xhtml+xml" href="/ongoing/When/202x/2026/06/14/DFA-Costs#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs</id>
<published>2026-06-14T12:00:00-07:00</published>
<updated>2026-06-16T14:10:08-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Quamina Diary"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Quamina Diary"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">It’s been a while. February was the last entry in this <a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina Diary</a>; I never stopped working on it but there hasn’t been much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
It’s been a while. February was the last entry in this
<a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina Diary</a>
; I never stopped working on it but there hasn’t been
much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a
pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!
</p>
<p>Since it’s been so long, here’s what Quamina, a Go-language library, does: You can add “Patterns” to a Quamina instance, they
match the values of fields in JSON objects, and then you show Quamina a JSON “Event” and it’ll tell you which Patterns matched
it. It’s pleasingly fast and in many cases the speed is not strongly affected by the number of Patterns you’re trying to
match.</p>
<p>
The last release, V2.0.2 back in March, marked the arrival of a reasonably-full regular-expression dialect into Quamina’s
pattern language, so you can say, for example, that the
<code>Filename</code>
field has to match
<code>map-[0-9]+.(png|pdf|jpe?g)</code>
.
Regular expressions were a lot of work and a lot of fun.
</p>
<h2 id="p-1">Finite-automaton wrangling</h2>
<p>Quamina works by compiling the Patterns into finite automata, then matching the Event fields by traversing them.
To handle multiple Patterns, Quamina merges the automata together, a technique that’s been well-studied in Computer Science for
decades. From a set-theoretic point of view it’s a union; an OR through Boolean lenses. There’s really no limit in theory
for how many patterns you can merge, and Quamina has no problem at all with thousands.</p>
<p>There are two flavors of finite automata: Deterministic (DFAs) and Nondeterministic (NFAs). If you have a university
degree in CS they probably made you study this at some point. Weirdly, many people find the subject boring.</p>
<p>I’m not going to explain the differences, if you want to know it’s easy to look up, and anyhow the story I want to tell
doesn’t need it. Here’s what the story needs:</p>
<ol>
<li>
<p>To implement wildcards and regular expressions, you need NFAs.</p>
</li>
<li>
<p>Matching data with DFAs is generally a whole lot faster than with NFAs.</p>
</li>
<li>
<p>There’s a well-known algorithm for transforming any NFA into a DFA that matches exactly the same data. It’s really a
lovely algorithm, you want to tickle it under its adorable little chin.</p>
</li>
<li>
<p>In some cases, the algorithm can be brutally expensive, along the lines of <code>O(2<sup>N</sup>)</code>.</p>
</li>
</ol>
<h2 id="p-2">The benchmark from Hell</h2>
<p>
I found a data file in the Wordle source code with 13K or so 5-letter words. I inserted a
<code>*</code>
at a random location
in each. To illustrate, here are the first five results:
<code>aah*ed</code>
,
<code>aalii*</code>
,
<code>*aargh</code>
,
<code>aar*ti</code>
, and
<code>abaca*</code>
.
</p>
<p>The benchmark is, you load these into a Quamina instance and measure how fast it is to load them, how much memory the
merged NFA consumes, and how many Patterns per second you can match. Then you repeat the exercise, converting each NFA into
a DFA.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/14/Willie.png" alt="Willie Dixon" class="inline"/>
<p>I loaded 10K Patterns in NFA form, but the NFA-to-DFA conversion got so brutal my patience only allowed me to load and
measure 300 in DFA form. (Which kind of gives away this article’s punchline but stick with me, the details are fun).</p>
<h2 id="p-5">Willie Dixon</h2>
<p>He was a famous bluesman and I need help from him to explain my APIs.</p>
<p>
Quamina’s latest PR adds APIs
to turn the NFA-to-DFA conversion on and off; it’s off by default. There are two
<code>MatcherBuildMode</code>
values,
<code>BuiltForComfort</code>
and
<code>BuiltForSpeed</code>
. Which are out-takes from Willie’s 1959 song
<cite>Built For
Comfort</cite>
, and the lyrics go like this:
</p>
<blockquote>
<p>
Some people built like this, some people built like that,
<br/>
The way I’m built, don’t you call me fat
<br/>
Cause I’m built for comfort, I ain’t built for speed
<br/>
…
</p>
</blockquote>
<p>Willie was a big guy, way over six feet and not exactly slender. I know this because I interviewed him once, but that’s
another story. Lots of others have covered this tune, most of whom are, um, well-rounded.</p>
<p>Speaking of which… here is Quamina’s memory consumption in NFA mode.</p>
<img src="Comfort-size-in-mb.png" alt="Memory cost of many merged NFAs"/>
<p>The memory cost is pretty well linear in the number of patterns. For 10K patterns Quamina uses something over 25M which feels
kind of reasonable to me.</p>
<p>Here’s the story for DFAs.</p>
<img src="Speed-size-in-mb.png" alt="Memory cost of many merged DFAs"/>
<p>
I haven’t run regressions or anything and I don’t think that’s actually
<code>O(2<sup>N</sup>)</code>
, but the second
derivative is solidly positive, which in simple English means “doesn’t scale”.
</p>
<p>Now let’s look at the Pattern-addition time for NFAs and then DFAs.</p>
<img src="Comfort-msec-per-AddPattern.png" alt="Time cost of merging many NFAs"/>
<img src="Speed-msec-per-AddPattern.png" alt="Time cost of merging many DFAs"/>
<p>Once again, the NFA cost increases more or less linearly (albeit interestingly jagged), while for DFAs, look at that
second derivative. This was what eventually made my patience give out and limit the DFA run to 300 Patterns.</p>
<p>Now let’s look at the payoff, the number of Event matches/second in NFA- and DFA-land.</p>
<img src="Comfort-matches-per-second.png" alt="Matching speed of many merged NFAs"/>
<img src="Speed-matches-per-second.png" alt="Matching speed of many merged DFAs"/>
<p>
The NFA performance degrades at something like
<code>O(N<sup>-1</sup>)</code>
, but DFAs just don’t care. After a few lurches
it rolls along at between 500 and 600K/second. Not bad, and based on experience with huge DFAs that were built from
exact string matches, my belief is that the matching speed would eventually drift down, but slowly, not remotely a linear
function of the number of Patterns.
</p>
<h2 id="p-3">Not just pictures but numbers too</h2>
<p>It was maybe a little unfair to compare 10K NFAs against only 300 DFAs, so let’s focus in.
(This is on a 2023 M2 MacBook Pro.)</p>
<table>
<tr valign="top" align="center">
<td class="empty"></td>
<th colspan="3">300 Patterns</th>
</tr>
<tr valign="top">
<td class="empty"></td>
<th>Memory</th>
<th>Add-Pattern time</th>
<th>Matches/sec</th>
</tr>
<tr align="center">
<td>NFAs</td>
<td>860K</td>
<td>0.1 ms</td>
<td>222K</td>
</tr>
<tr align="center">
<td>DFAs</td>
<td>45M</td>
<td>7.7 sec</td>
<td>404K</td>
</tr>
<tr valign="top" align="center">
<td class="empty"></td>
<th colspan="3">10K Patterns</th>
</tr>
<tr align="center">
<td>NFAs</td>
<td>27M</td>
<td>2.3 ms</td>
<td>21K</td>
</tr>
</table>
<p>That’s pretty shocking stuff. 10K NFAs occupy less memory than the DFAs equivalent to 300 NFAs.
And the Add-Pattern time, which is totally dominated by the NFA-to-DFA logic, is getting into intractable territory.
So why would anyone mess with the DFA conversion? Because it matches data twice as fast!</p>
<h2 id="p-4">Practical advice for Quamina users</h2>
<p>First, if you’re a normal human being and only matching a handful of patterns against a few Events/second, ignore all this
and just take the defaults, Quamina latency will vanish in the static.
If you’re matching lots of numeric and string values against many Events/second, don’t lose any sleep, keep on packing in the Patterns
and Quamina probably won’t slow down enough for you to even notice.</p>
<p>
In theory you’d eventually get into memory trouble but in my considerable experience with Quamina and its AWS-built predecessor
<a href="/ongoing/When/202x/2022/09/02/Hello-Ruler">Event Ruler</a>
, you have to be venturing into
extreme-craziness territory for that to happen. (It did happen. An Amazon group added literally a million Patterns. It
still ran way faster than anything else they could find.)
</p>
<p>If you need to match wildcards or regexps, adding Patterns stops being free. The slowdown is roughly linear in the number of
Patterns and isn’t actually terrible, see the data above. But if you’re using a relatively small number of regexp Patterns, go
right ahead and turn on DFA conversion with “BuiltForSpeed” mode.</p>
<h2 id="p-6">What next?</h2>
<p>There’s one minor Quamina feature that’s disabled in BuiltForSpeed mode, so I’ll need to fix that and do a release.</p>
<p>I bet there are still low-hanging fruits that could speed up the Hell benchmark, but anyone looking for those should
bear in mind that they’re fighting settled Computer Science, you’re never going to make NFA-to-DFA conversion reliably
linear.</p>
<p>But to be honest, Quamina is starting to feel fairly feature-complete.
I’d like to see a few adapters so you could use Quamina with Protobufs and Thrift and CBOR and other formats that
aren’t JSON.</p>
<p>But in fact Quamina doesn’t have that many users; I’ve only heard from a handful. Who knows, maybe the problems you learn to solve
when you’re working at AWS, and most of the groups think millions of events per seconds is an ordinary workload, aren’t widely
applicable in the broader world of Open Source?</p>
<p>Which is to say, me working on Quamina isn’t helping that many people. At one level, I don’t care, because it’s been fun and
instructive.
I’d probably enjoy turning this “Quamina Diary” series into a monograph or small book if there were an interested publisher.</p>
<p>And thanks to everyone who’s been reading along.</p>
</div>
</content>
</entry>
<entry>
<title>Long Links (AI-free)</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links"/>
<link rel="replies" thr:count="4" type="application/xhtml+xml" href="/ongoing/When/202x/2026/06/05/Long-Links#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links</id>
<published>2026-06-05T12:00:00-07:00</published>
<updated>2026-06-10T11:40:51-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Hey everyone, I know you’re overloaded because everything has <a href="/ongoing/When/202x/2020/07/05/Too-Efficient">become overly efficient</a>. Long-form reading or writing or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
Hey everyone, I know you’re overloaded because everything has
<a href="/ongoing/When/202x/2020/07/05/Too-Efficient">become overly efficient</a>
. Long-form reading or writing
or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the
link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate
feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok.
</p>
<p>
Now, let’s all take a couple of breaths and gingerly approach the A-word, namely “AI” (as understood in 2026).
Which is occupying much more of my attention and cognition than I would like, and there are gems embedded
in the flood; granted, sparsely but they still add up.
I respect that many of you will have just fucking had it with that subject. So I shuffled that material off into
<a href="/ongoing/When/202x/2026/06/08/Long-Links-AI">Long Links (AI)</a>
, which you can drop by (or not) as you please.
</p>
<h2 id="p-1">Books</h2>
<p>
One of the weirdest and flawed but still good things I’ve read this year is
<a href="https://en.wikipedia.org/wiki/The_Luminaries">The Luminaries</a>
, written by Eleanor Catton back in 2013, a pretty dark
tale of murder and theft and love and oppression in a not-so-great corner of New Zealand during an 1866 gold rush. Really super
intense and hard to put down; even though it’s 900+ pages I never got bored.
But freakishly complicated and I was left puzzled by multiple plot elements. Fortunately (yay
Internet!) there’s
<a href="https://115journals.com/2014/04/05/deconstructing-the-luminaries-a-timeline">Deconstructing The
Luminaries</a>
, an explainer.
</p>
<p>
Other recent books:
<cite>Platform Decay</cite>
, minor Murderbot, but still worth reading.
<cite>The Incandescent</cite>
by
Emily Tesh, yet another highschool-for-magic book, only with the grownups in the foreground and the kids behind them. Way more fun
than the last few instances of that genre. Also, sex. Finally worth mentioning:
<cite>The Everlasting</cite>
by Alix Harrow,
which started slow but eventually got a real grip on me; recommended.
</p>
<p>
I was in the library today and I always cruise past the “featured” table, where I saw
<a href="https://en.wikipedia.org/wiki/Nobody%27s_Girl_(memoir)">Nobody’s Girl</a>
by Epstein victim Virginia Giuffre (R.I.P.)
and
<a href="https://en.wikipedia.org/wiki/Empire_of_AI">Empire of AI</a>
, Karen Hao’s huge takedown of OpenAI and Altman. But
I just now do not have the spoons. Maybe later.
</p>
<p>Hmm, they tell me men can write books too. Must look into some.</p>
<h2 id="p-2">Political economy</h2>
<p>I and many others are deeply discontented with the current flavor of late-stage capitalism, that “late-stage” a
conscious callout to terminal illness. So do we really want to do away with Capitalism as
such, or retain it but try to regulate away inhumane behaviors and effects? Or what? Let’s not forget that there are still
people out there proud to call themselves Socialists and their take is that Capitalism can’t be fixed and must be replaced. With
what?</p>
<p>
Anyhow, if you want to hear what these people are saying the place to go is
<a href="https://jacobin.com">Jacobin</a>
. I’m not a regular visitor but when I do drop by I’m starting to hear the phrase
“market socialism”. Thus
<a href="https://jacobin.com/2026/05/market-socialism-capitalism-ownership-exploitation">How Socialism in the 21st Century
Could Work</a>
. The tone is kind of nonspecific and academic but it’s part of a conversation that
I think the (large, growing) mad-at-Capitalism demographic needs to have.
</p>
<p>
Speaking of the pathologies of late-stage capitalsm, Paul Krugman’s
<a href="https://paulkrugman.substack.com/p/bezos-backlash-and-zombies">Bezos, Backlash and Zombies</a>
describes a Bezos TV
appearance in which Jeff said some really dumb things. Which is a bit surprising because while fewer and fewer people seem to like
him, most people think he’s pretty smart. Krugman tears apart Bezos’s deep and broad misunderstanding of how taxation works. He
attributes it to what he calls “Billionaire Brain”; the notion is plausible. The discussion goes on into popular perceptions
of business in general, technology in particular. And (*sigh*) AI. Good stuff.
</p>
<p>
People like reading books on screens and most public libraries now support that. I believe a high proportion of such loans go
through
<a href="https://libbyapp.com/">Libby</a>
, which is what I use.
But the publishers don’t actually sell e-books to libraries, they rent them,
a price for a fixed number of loans. And as you might expect, that price keeps going up, to the point that public libraries all
over the world are hurting. So,
<a href="https://www.publishersweekly.com/pw/by-topic/industry-news/libraries/article/100488-library-organizations-urge-big-five-to-address-digital-pricing.html">Library Orgs Urge Big Five to Address Digital Pricing</a>
.
Paper books are looking better and better.
</p>
<p>
It turns out that America’s capital is a good experimental platform for crime research. Check out
<a href="https://www.niskanencenter.org/washington-dc-crime-decline-and-its-lessons-for-american-policing/">Washington, D.C.’s
crime decline and its lessons for American policing</a>
from the Niskanen Center. Guess what: There’s little correlation
between the number of cops and the amount of crime. Also, when Trump sent in the National Guard to stand around with their
thumbs up their asses being visible, the effect was tiny and only on “property crimes of opportunity”. Does that mean graffiti?
</p>
<h2 id="p-4">Funnies</h2>
<p>
Staying in the political lanes, here’s an
<a href="https://talkingpointsmemo.com/where-things-stand/bessent-forced-to-defend-treasurys-prep-work-for-a-250-bill-with-trumps-face-on-it">evening
briefing</a>
from
<cite>Talking Points Memo</cite>
, my favorite US-Politics blog. It’s got two unintentional jokes. First of
all, this little sequence on the subject of Trump wanting to print a $250 bill with his face on it.
</p>
<blockquote>
<p>… two political appointees at the Treasury Department … repeatedly urged staff at the agency’s Bureau of Engraving
and Printing to prepare prototypes of the note, according to the employees, who said the move raised concerns because federal
law currently allows only deceased people to appear on bills.</p>
</blockquote>
<p>There’s more than one way to read that… I’m suddenly starting to see the advantages of printing that bill.</p>
<p>Then, a little further down, it turns out JD Vance gave a speech at the Air Force Academy, from which:</p>
<blockquote>
<p>So as AI transforms the battlefield — in some ways positively, in some ways not — I ask that you be jealous and
selfish about your role as a decision-maker in warfare,” he continued. “Use technology to make you better, but never submit to
it. You are the masters of warfare…</p>
</blockquote>
<p>
Yeah well Bob wrote a whole song about
<a href="https://www.bobdylan.com/songs/masters-war-mono/">Masters Of War</a>
and got the trade-offs about right.
JD’s cluelessness is mountainous.
</p>
<p>
OK, here’s an organized-crime story that makes me smile because it’s just so hilariously blatant. It’s like this: Worldwide,
cricket is a big-money sport. Any readers who come from India or English-speaking southern-hemisphere countries are nodding
because well of course. Cricket in Canada is
<em>not</em>
a big deal; our South Asian and Caribbean immigrants may be seen
playing in the park on weekends with nobody but spouses and kids are watching.
</p>
<p>
Nonetheless the International Cricket Council has been sending a few million dollars a year to Cricket Canada to develop the sport
hereabouts. But no longer. It seems that Cricket Canada has been a comical hotbed of theft, fraud, extortion, and
match-fixing. Recently gunshots were fired at its president’s house. The TV segments have been hilarious, with
leaders of Canada’s cricket establishment sweatily denying everything while looking over their shoulders. Anyhow, if you like
colorful true-crime drama, start with
<a href="https://www.cbc.ca/news/canada/icc-suspends-cricket-canada-9.7218815?cmp=rss">Cricket Canada surprised after
“unexpected” suspension by governing body over breaches of membership</a>
.
</p>
<h2 id="p-6">Photography</h2>
<p>
I visit
<a href="https://petapixel.com">Petapixel</a>
more days than not; it’s got the goods in the world of cameras and
photography. There are solid camera and lens reviews, and a lot of focus on individual photographers. Here’s
<a href="https://www.dpreview.com/articles/8507786637/the-photographer-who-never-stopped-chasing-the-perfect-shot">The
photographer who never stopped chasing the perfect shot</a>
(and, on the evidence, got plenty). Next, Jeff Austin has been
shooting the same parts of Tokyo through vintage glass for decades; he contributed
<a href="https://petapixel.com/2026/06/06/twenty-years-one-city-what-tokyo-taught-me-about-patience-and-glass/">Twenty Years,
One City: What Tokyo Taught Me About Patience and Glass</a>
and has a Web site,
<a href="https://www.tokyoforgeries.com/">Tokyo Forgeries</a>
.
</p>
<p>
Not just metal and glass; here’s an interesting camera bag:
<a href="https://petapixel.com/2026/05/21/the-pilot-88-is-a-limited-edition-wotancraft-messenger-designed-by-chris-niccolls/">The
Pilot 88 Is a Limited Edition Wotancraft Messenger Designed by Chris Niccolls</a>
. Finally, the story of Edith
Tudor-Hart, in
<a href="https://petapixel.com/2026/05/03/edith-tudor-hart-photographer-cambridge-five-soviet-spy/">The Hidden History of a
British Female Photographer Turned Soviet Agent</a>
.
</p>
<h2 id="p-7">Disturbing Evidence</h2>
<p>
Now, I said I liked Petapixel, and I do. But there’s a dark side; one
can’t help notice the many
<em>many</em>
stories about the terrible
things that happen to photographers. Then there’s the sub-genre of terrible things that
happen in the context of wedding photography, which seems a swamp of suffering and pain. Well… why not both?
<a href="https://petapixel.com/2026/05/26/wedding-photographer-seriously-injured-after-being-stabbed-by-guest/">Wedding
Photographer Seriously Injured After Being Stabbed by Guest</a>
. I mean, it goes on and on:
<a href="https://petapixel.com/2026/05/26/photographer-bitten-by-shark-or-sea-lion-during-surf-competition/">Photographer
Bitten by “Shark or Sea Lion” During Surf Competition</a>
and
<a href="https://petapixel.com/2026/06/04/woman-pleads-guilty-to-manslaughter-after-gun-themed-polaroid-photo-shoot-ends-with-photographers-death/">Woman Pleads Guilty to Manslaughter After Gun-Themed Polaroid Photo Shoot Ends with Photographer’s Death</a>
!
Mommas, don’t let your babies grow up to be photogs.
</p>
<h2 id="p-3">Personalities & misc</h2>
<p>In the world of Big Biz generally and Big Tech specifically, PR leaders are very near the center of everything. CxOs are
basically never allowed to say anything that isn’t carefully scripted in advance; PR does the scripting. When somebody fucks up
and things (including the share price) go off the rails, PR owns the problem.</p>
<p>During the years when I was a blogging in a
relatively unsupervised way while employed in BigTech, I
became pretty intimate with some of those PR folks.
I remember not too long after I joined Amazon, my manager, a really good person who’d gone to lots of work to hire me,
grabbed me in the hallway and said “PR is pissed about what you wrote about Microsoft” and I said “Don’t worry, talking PR
people down off the ledge is one of my core competences.” He looked worried: “Well, good luck.” But it was OK.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/dont-be-evil.png" alt="Cover of Don’t Be Evil by claire Stapleton" class="inline"/>
<p>
Anyhow, Claire Stapleton was in PR at Google during the glory years, and was close to the center of things. She got laid off
in 2023 and wrote
<a href="https://techsupport.substack.com/p/game-over">game over - some thoughts on layoffs and life</a>
.
A few things in there widened my eyes and I suspect they’ll do the same for anyone else who’s been in the Google ecosystem.
Anyhow, recently she
<a href="https://techsupport.substack.com/p/the-returning-cog">wrote a book</a>
which I have to say looks pretty promising.
</p>
<p>
JA Westenberg’s
<a href="https://www.joanwestenberg.com/p/on-wintering">On wintering</a>
speaks to me. One of the nice things
about being (mostly) retired is I get lots of time for this. It’s hard to see how the machineries of Late Capitalism could allow
this kind of space though; another reason to find something better.
</p>
<p>
At least once a year I point excitedly at something by Paul Ford; this time it’s
<a href="https://ftrain.com/canons">Canons</a>
. Beautiful stuff.
</p>
<h2 id="p-11">Product pitch</h2>
<p>
For the last few years, we’ve had induction stovetops, which I totally love: Responsive, hot, easy to clean, low carbon load.
but, I like to stir-fry and you can’t really balance a wok on an induction top. So we picked up an
<a href="https://abangdun.com/products/induction-wok-cooktop-induction-burner-1700w-85v120v-electric-wok-curved-surface-electronic-cooker-concave-stoves">Abangdun 1700W 100V~185V Induction Cooktop Concave Curved Surface 2026 New Electric Stove Wok</a>
.
It’s great; I stir-fry a couple times a month and get good reviews. Its built-in fan is kinda noisy.
</p>
<h2 id="p-8">Music</h2>
<p>
Recently I ran across
<a href="https://thesleeveens.com/tour/">The Sleeveens</a>
, Irish punks in Nashville. I said “punk” and I mean it, it’s nearly
the pure stuff, somewhere on the Clash-to-Ramones axis, and like those bands, the tunes are good, and like the Clash, the lyrics
are political and gonna make you sit up. Their recent outing
<a href="https://thesleeveens.bandcamp.com/album/national-anthem">National Anthem</a>
is just one banger after another. My
favorites are
<cite>If I Was A Casual</cite>
and
<cite>Cowboy Queen</cite>
and then there’s the title track, which begins “Burn
your fuckin’ country to the ground in the name of love…” oh yeah.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/Sleeveens.png" alt="The Sleeveens"/>
<p>
Now let’s lean into a fertile field of musicological scholarship: Guitar solos!
<cite>Rolling Stone</cite>
let their dimbulb
flag fly with
<a href="https://www.rollingstone.com/music/music-lists/best-guitar-solos-1235519961/st-vincent-rattlesnake-1235520236/">The
100 Greatest Guitar Solos Of All Time</a>
, which unforgivably omits Ry Cooder on
<cite>Amandrai</cite>
, Susan Tedeschi on
<cite>Pity the Fool</cite>
, David Lindley on
<cite>Do Ya Wanna Dance</cite>
, Neil Young on
<cite>Love To Burn</cite>
, Megan
Lovell on
<cite>Preachin’ Blues</cite>
, also
<i>[Tim, enough -Ed.]</i>
.
</p>
<p>
But wait, there’s more. Not to be outdone,
<a href="https://consequence.net">Consequence</a>
(of which I know nothing) came up with
<a href="https://consequence.net/list/best-guitar-riffs-21st-century/">70 Best Guitar Riffs of the 21st Century (So
Far)</a>
, which is full of smiles. I have to confess that I’d heard less than 10% of these.
</p>
<p>
But anyhow Japanese metallistas Boris, about whom I’ve blogged not
<a href="/ongoing/When/201x/2011/10/13/Pictures-of-Wata">once</a>
, not
<a href="/ongoing/When/201x/2018/05/17/SotD-Attention-Please">twice</a>
, but
<a href="/ongoing/When/201x/2017/10/13/Live-Metal">thrice</a>
, are on both lists! #61 on the solos, #7 on the riffs.
Which they noticed, and took a bow. Here’s
<a href="https://boris.bandcamp.com/album/akuma-no-uta-2">Akuma no Uta</a>
and also
<a href="https://www.youtube.com/watch?v=QZ-BTzNsHnA">a pretty hot live capture</a>
.
</p>
<p>
Finally, if you like Arvo Pärt and art that strains at the edges (what other kind is worth liking?) check out
<a href="https://www.youtube.com/watch?v=XvEEeGqPsVA">Robert Wilson’s “Adam’s Passion” (Music of Arvo Pärt)</a>
. An hour and a
half of fine music, well-played, and live human movement following Pärt’s slow pulse. Nakedness is involved.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/Adams-Passion.png" alt="Perfomers in Robert Wilson’s “Adam’s Passion”"/>
<h2 id="p-9">Tech</h2>
<p>
I gather that Marcin Wichary is name to conjure with in design circles; he’s recently launched
<a href="https://unsung.aresluna.org">Unsung, my blog about software craft and quality</a>
and boy, it’s outstanding.
A lot of it is simple celebrations of typographical or UI excellence, but what got my attention was a polite-but-savage takedown
of a recent Photoshop release: Parts
<a href="https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-1/">1</a>
and
<a href="https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-2/">2</a>
.
You’ll learn a lot about how to think about UI construction by reading this.
</p>
<p>
Armin Ronacher, to whom it seems I’ve been linking a lot recently, offers
<a href="https://lucumr.pocoo.org/2026/4/28/before-github/">Before GitHub</a>
, which to be fair contains equal parts of Current GitHub
and After GitHub thinking, pretty well all of which seems good to me. Single points of failure are just bad, we should know
that now, particularly when they start failing.
</p>
<p>
Finally, have a look at
<a href="https://www.construction-physics.com/p/the-age-of-the-amplifier">The Age of the Amplifier</a>
by Brian Potter at a Web
site called “Construction Physics”. There are several different kinds of amplifiers, and most of the interesting ones were developed
at Bell Labs during the 20
<sup>th</sup>
century. This is a history of that, based on the premise that “Amplifiers in general are
important”. They are! The history is interesting, assuming you know what “voltage” and “current” are. It pleases me that people
will still write long-winded pieces about narrow slices of history and apparently have fun doing it.
</p>
<h2 id="p-10">That’s all folks</h2>
<p>Well except for the companion aggregation of <a href="/ongoing/When/202x/2026/06/08/Long-Links-AI">Long AI-related Links</a>.</p>
<p>Until next time.</p>
</div>
</content>
</entry>
<entry>
<title>Long Links (AI)</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI"/>
<link rel="replies" thr:count="5" type="application/xhtml+xml" href="/ongoing/When/202x/2026/06/08/Long-Links-AI#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI</id>
<published>2026-06-08T12:00:00-07:00</published>
<updated>2026-06-10T11:35:01-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/AI"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="AI"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">The piece you’re now looking at exists because <a href="/ongoing/When/202x/2026/06/05/Long-Links">my latest “Long Links”</a> curation of interesting not-lightweight material included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people have had more than enough of this discourse and I thought I’d spare them by moving these bits over here</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
The piece you’re now looking at exists because
<a href="/ongoing/When/202x/2026/06/05/Long-Links">my latest “Long Links”</a>
curation of interesting not-lightweight material
included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people
have had more than enough of this discourse and I thought I’d spare them by moving these bits over here.
</p>
<p>
Let’s start with raw data: Is AI improving people’s lives?
<a href="https://dustycloud.org">Christine Lemmer-Webber</a>
was kind enough to
<a href="https://social.coop/@cwebber/116698488515037678">ask the world</a>
or at least the Mastodon part of it, and the results
weren’t subtle or nuanced at all.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/08/CL-W-poll.png" alt="“genAI has made my life” poll by Christine Lemmer-Webber"/>
<p>I encourage everyone to follow the link and read the conversation that broke out around that poll. It will not cheer you
up.</p>
<p>And for my money that’s the most important take-away I’m offering today. Whether we’re using it or not, “AI” is not a thing
that is making us happy.</p>
<h2 id="p-1">Where I stand</h2>
<p>Currently, I’m a contra. GenAI is being pushed by terrible people who are trafficking in lies and abusing the planet, and
should their far-fetched dreams come true the consequences would be terrible for most people. Because they want to
disempower knowledge workers, remove them from the economy, and cast them loose on the tender mercies of the market.</p>
<p>
The reason for that “Currently” in the paragraph above is that we’re living in a liminal space where everybody I know who has
any brains is convinced that there’s a bubble inflated by trillions of dollars of speculative and likely doomed investment. It’s
<!---->
very near popping, and the consequent miasma of fear and greed makes it absolutely impossible to have a reasonable
discussion of what GenAI might be good for and might not.
</p>
<p>The onrushing terrible trio of IPOs (SpaceX, OpenAI, Anthropic) feels to me like when there’s a 9.2 earthquake 50km offshore and
so far no tsunami has been detected but everyone’s glancing nervously at the horizon.</p>
<p>So anyhow, for now I’m not going to use any GenAI tools myself. Post-pop, it may develop that there ways it can be
ethical and useful, albeit at an immensely smaller scale than the LLM edgelords are pitching. We’ll see.</p>
<p>I have been accepting human-curated Claude-driven PRs on my Quamina hobby project. For which I’ve already been called a Nazi
by someone whose views I take seriously. (But I really don’t think I am.) I do think that when the dust settles,
there will be a role for LLMs in software development, but I also think we haven’t figured out yet what it is. I
absolutely do not believe for a second the claims of 10x improvements in “productivity” (I do not think that word means what you
think it means).</p>
<p>Having said all that, here are morsels of gold from the torrent of AI dross that wants to flood every fucking one of my
input channels.</p>
<h2 id="p-3">Critiques</h2>
<p>
Bram Cohen says
<a href="https://bramcohen.com/p/the-cult-of-vibe-coding-is-insane">The Cult Of Vibe Coding Is Insane</a>
. Yup.
Kyle Kingsbury writes a long sad series:
<a href="https://aphyr.com/posts/411-the-future-of-everything-is-lies-i-guess">The
Future of Everything is Lies, I Guess</a>
. He seems to come out about where I do: Not going there for now.
</p>
<p>
Dr Bethan Tovey-Walsh offers us
<a href="https://linguacelta.com/blog/2026/05/LLMs.html">The Community is the
Achievement; the Achievement is the Community</a>
, subtitled
<cite>An ethical love-letter to distributed technology
communities</cite>
.
It’s long and defies summarization, but light-hearted, a pleasant read. Its bottom line is, and I quote: “The right thing, in my
view, for tech communities and projects to do is to reject contributions of LLM-generated content.” Recommended even if you
disagree.
</p>
<p>
Wow, here’s one that hits hard, academic output from big-name universities:
<a href="https://www.researchgate.net/publication/403562106_AI_Assistance_Reduces_Persistence_and_Hurts_Independent_Performance?utm_source=substack&utm_medium=email">AI Assistance Reduces Persistence and Hurts Independent Performance</a>
.
What’s shocking is that it doesn’t take that much AI exposure before the symptoms start appearing.
</p>
<p>
Corey Quinn’s day job is helping people lower their AWS bills, and he markets it (very successfully) by writing snark-heavy
essays on more or less anything cloud-related generally and AWS-focused specifically. It seems he’s got a new AI-oriented platform
called “Artificial Confidence”, whence
<a href="https://artificialconfidence.com/p/artificial-confidence-xai-the-neocloud">Artificial Confidence: xAI, the
Neocloud</a>
. Corey is a gifted polemicist and xAI is a soft target. It does not come off well. Since xAI is a major chunk of
the looming SpaceX IPO, this piece is highly relevant, possibly to your retirement savings.
</p>
<p>
I know
<a href="https://nooneshappy.com/article/appearing-productive-in-the-workplace/">Appearing Productive in The Workplace</a>
was widely posted and quite likely you’ve seen it; if you haven’t, go read it and if you already have, another visit
might be beneficial.
</p>
<h2 id="p-2">Bug finding</h2>
<p>
From the Linux-kernel world, there’s
<a href="https://www.theregister.com/software/2026/03/26/linux-kernel-czar-says-ai-bug-reports-arent-slop-anymore/5226256">AI
bug reports went from junk to legit overnight, says Linux kernel czar</a>
and
<a href="https://lwn.net/Articles/1065620/">Significant raise of reports</a>
, which says about the same thing with a couple of
plausible and important conclusions.
There was a report about Linus Torvalds criticizing the inflow,
(
<a href="https://lkml.org/lkml/2026/5/17/896">see here</a>
) but it turns out he was after the practice of LLM-script
kiddies reporting them to the “secret” mailing list. Which is a no-brainer because if an LLM that everyone can run finds a bug,
then it’s obviously not a secret.
</p>
<p>Anyhow, looks like GenAI can be put to good use finding vulnerabilities.</p>
<h2 id="p-5">War stories and advice</h2>
<p>Assuming that post-bubble it becomes possible to use AI in coding without being called a Nazi, we have to face the fact
that we really don’t have any consensus best practices for doing that. So I enjoy reading narratives of people who describe
what they did, in detail (no architecture astronautics) what worked, and what didn’t.</p>
<p>
Lalit Maganti’s
<a href="https://lalitm.com/post/building-syntaqlite-ai/">Eight years of wanting, three months of building with AI</a>
which
centers around building an SQL parser that exactly matches SQLite’s. That’s a freaking hard problem and I think Maganti’s
narrative has pointers to a plausible future.
</p>
<p>
The redoubtable and loud-voiced Daniel Stenberg of Curl fame offers us
<a href="https://daniel.haxx.se/blog/2026/06/10/a-human-in-control/">A Human In Control</a>
, which says about what the title
does, with feeling.
</p>
<p>
Nelson Minar posted
<a href="https://nelsonslog.wordpress.com/2026/03/18/first-impressions-of-jules-googles-coding-agent/">First impressions of
Jules, Google’s coding agent</a>
; this will probably be interesting to those living in the Claude or Copilot territory.
</p>
<p>Rails is regarded as a good framework for building certain classes of Web site. Normally, it is considered as Ruby code and
executed using the Ruby runtime. Sam Ruby (the surname is a coincidence) has been doing remarkable work arranging for
Rails app specifications to be executed by other runtime platforms, notably including Typescript, Rust, and Elixir
with no ruby (except for Sam) involved.</p>
<p>
He relies heavily on GenAI and describes his findings in
<a href="https://intertwingly.net/blog/2026/05/22/The-Drucker-Inversion.html">The Drucker Inversion</a>
.
It’s deep, thoughtful stuff.
</p>
<p>
Joe Magerramov’s
<a href="https://blog.joemag.dev/2026/05/the-valley-of-calm.html">The Valley of Calm</a>
makes perfect sense to me because I
spent some years inside AWS. His basic point is that if GenAI ends up increasing the number of commits, your CI/CD pipeline is
likely to cave under pressure. Looks to me like he’s right, and his proposals for how to address the problem sound plausible.
“Plausible” isn’t good enough, this is another area where we just don’t yet know what the best practices are, and there’s only one way
to find out.
</p>
<p>
Hey, two AWS people in a row: Brooke Jamieson is a Developer Advocate, what I used to be at Google.
<a href="https://medium.com/@brookejamieson/make-your-coding-agent-opinionated-10ca175801a9">Make Your Coding Agent
Opinionated</a>
begins “I’ve been using coding agents daily for over a year across Kiro, Claude Code, Cursor, and Codex.”
Here are her lessons.
</p>
<h2 id="p-6">That’s all folks</h2>
<p>We can argue with each other about how best (or if at all) to use this technology. Maybe it’s all irrelevant or (I think) at
best a side-show until the AI-bubble greed and fear dissipates. Which can’t come too soon. Maybe it’s useful to work
on the problem in standby mode while we wait for the bubble to collapse.</p>
<p>I’m pretty sure it will.</p>
</div>
</content>
</entry>
<entry>
<title>XML and JSON in 2026</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026"/>
<link rel="replies" thr:count="15" type="application/xhtml+xml" href="/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026</id>
<published>2026-06-01T12:00:00-07:00</published>
<updated>2026-06-02T16:08:22-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/XML"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="XML"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Software"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Software"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">The best thing about long-lived incumbent technologies like JSON and XML is that nobody really has to think about them much any more. Except for, I do occasionally, because while I’m <a href="/ongoing/When/200x/2008/11/22/Not-the-Inventor-of-XML">not the inventor</a> of either, my name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run! And what ever happened to XML? Let’s shake off the dust and have a look</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
The best thing about long-lived incumbent technologies like JSON and XML
is that nobody really has to think about them much any more. Except for, I do occasionally, because
while I’m
<a href="/ongoing/When/200x/2008/11/22/Not-the-Inventor-of-XML">not the inventor</a>
of either, my
name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run!
And what ever happened to XML? Let’s shake off the dust and have a look.
</p>
<h2 id="p-1">JSONiana</h2>
<p>
<a href="https://datatracker.ietf.org/doc/html/rfc8259">RFC 8259</a>
is now nine years old and, like all the RFCs, is
immutable. And, as is usually the case, a
<a href="https://errata.rfc-editor.org/search/?rfc_number=8259">list of errata</a>
has built up over the years.
</p>
<p>
Until a few days ago, many of the errata apparently hadn’t ever been looked at for a period
measured in years. Now they’ve all been rejected or accepted. Despite a couple having been marked “Held for Document Update”,
nobody is interested in writing a superseding RFC. There are already enough other JSON specs
[
<a href="https://www.json.org/json-en.html">1</a>
][
<a href="https://ecma-international.org/publications-and-standards/standards/ecma-404/">2</a>
]
but fortunately they all say the same thing.
</p>
<p>Which is to say, JSON is what it is and will never be improved or changed in any way. Among other things, there are literally
billions of instances of JSON-reading software out there, most of them embedded in dumb low-rent devices that will never be
updated.</p>
<p>
Granted, it’s irritating that JSON doesn’t have comments (ProTip: Add a “comment” field to your messages) and makes it
hard to get the commas right and doesn’t distinguish between the different flavors of numbers and doesn’t have date/time literals and
<a href="https://www.rfc-editor.org/rfc/rfc9839.html">allows junk Unicode</a>
. Not gonna be fixed. Which is OK because
empirically, it’s good enough. Probably a few megabytes of JSON will have flowed back and forth between your phone or computer
and the Net while you’ve been reading this.
</p>
<p>Of course, there’s YAML and TOML and CBOR and Thrift and Avro and Protobufs and Markdown and more. Maybe for your app one of
them is a better choice than JSON.</p>
<p>
Oh wait, I forgot, there is a new thing:
<a href="https://datatracker.ietf.org/wg/jsonschema/about/">Work is under way</a>
to write an RFC specifying JSON Schema,
which is quite widely used but not well specified. Good luck to the people working on that; I’m not one of them.
</p>
<p>The best thing about JSON is nobody really has to think about it any more.</p>
<h2 id="p-2">XMLitude</h2>
<p>
Last month, on the “xml-dev” mailing list,
<a href="https://en.wikipedia.org/wiki/Elliotte_Rusty_Harold">Elliotte Rusty Harold</a>
remarked, on the subject of XML
generally: “Count me as one
of the people who thinks it’s mostly obsolete and ultimately a failed experiment. People don’t want or need markup
that’s designed to make documents easier for computers to read but harder for humans to write.”
</p>
<p>I replied and here’s an expanded version of what I wrote:</p>
<p>Irrespective of the current uptake, and seen as an experiment, XML has been
a success. It proved that:</p>
<ol>
<li>
<p>You can have a data interchange format that is radically independent
of your computer architecture, operating system, programming language, and
application.</p>
</li>
<li>
<p>The only sane text standard for modern computing is Unicode, which in
practice is affordable and reasonably straightforward to use.</p>
</li>
</ol>
<p>Prior to 1996, neither of these things were widely believed. The only
“interoperable” data format was ASN.1, which is horrible and lacked quality
software support. The resistance to Unicode was significant and
widespread, and adoption was disappointing. Today, #1 and #2 above are the
(low) bar to entry for any data packaging technology.</p>
<p>
As for current use, I guess “office" document formats are XML for the long
haul
[
<a href="https://en.wikipedia.org/wiki/Microsoft_Office_XML_formats">3</a>
]
[
<a href="https://en.wikipedia.org/wiki/OpenDocument#Application_support">4</a>
], but relatively few developers ever have to
look inside them (thank goodness). XML remains a de-facto standard for text-oriented humanities computing
[
<a href="https://tei2026.tei-c.org">5</a>
], and for
legislative data processing [
<a href="https://www.legislation.gov.uk/developer/formats/xml">6</a>
][
<a href="https://www.elegislation.gov.hk/datagovhk/hkel_data-dictionary_en.pdf">7</a>
][
<a href="https://www.govinfo.gov/app/search/curated/uslm">8</a>
].
At one point it dominated things like
aircraft maintenance manuals, don’t know if that’s still true. RSS and Atom
aren’t what they once were, but are far from gone; they’re how I drive my own personal news-reading.
Then of course there’s
<a href="https://en.wikipedia.org/wiki/EPUB">EPUB</a>
; do you read books on screens?
And are
<a href="https://en.wikipedia.org/wiki/XBRL#Lack_of_accuracy">XBRL</a>
and
<a href="https://en.wikipedia.org/wiki/Universal_Business_Language#Global_Adoption_and_Implementation">UBL</a>
still things?
</p>
<p>It is true that there are few-to-no new applications that I know
of that have much reliance on XML.</p>
<p>Eh, it’s OK, it had a good run and moved the needle. It’ll keep a few
folks employed for the foreseeable future.</p>
<p>Like JSON, the best thing about XML is nobody has to think about it any more. Oops, if you got here I guess you just
did. Sorry bout that.</p>
</div>
</content>
</entry>
<entry>
<title>Tab Trick</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore"/>
<link rel="replies" thr:count="5" type="application/xhtml+xml" href="/ongoing/When/202x/2026/05/24/Tab-Lore#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore</id>
<published>2026-05-24T12:00:00-07:00</published>
<updated>2026-05-24T11:36:06-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Web"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Web"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">A person watching over my shoulder asked “How are you switching around so fast?” and I realized that while most readers here know this trick, some may not, and it’s awfully useful</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>A person watching over my shoulder asked “How are you switching
around so fast?” and I realized that while most readers here know this trick,
some may not, and it’s awfully useful.</p>
<p>
<i>
[Update: I published an earlier version of this
<a href="/ongoing/When/201x/2012/04/22/Tab-Lore">in 2012</a>
but have got that “How do you” question a couple times recently, so
maybe it’ll still be new news to a few people.]
</i>
</p>
<p>In all the browers I use, Command-1 takes you to your leftmost tab,
command-2 to the next one over, and so on up to Command-8. Command-9 selects the
rightmost tab. Also, you can right-click on a
tab and “pin” it; which shrinks it down to just the favicon, and moves it as far left as
it can go.</p>
<p>So the trick is, pin the same heavily-used tabs in the same place, and
leave them there forever. In my main browser (currently Safari) it’s like
this:</p>
<ol>
<li>
<p>
<a href="https://messages.google.com/web/">SMS/RCS texts, linked to my Pixel.</a>
This is a Google thing, not sure if you need to be on
Android for it to work. But for those serious conversations that remain in text-land, it’s awfully nice when you can resort to
an actual keyboard.
</p>
</li>
<li>
<p>Calendar.</p>
</li>
<li>
<p>
Mastodon (
<a href="https://cosocial.ca/home">CoSocial</a>
via the
<a href="https://phanpy.social/">Phanpy</a>
client).
</p>
</li>
<li>
<p>The local staging version of this blog, where I review and edit articles.</p>
</li>
<li>
<p>What you are now reading.</p>
</li>
<li>
<p>Blog comment review/approval.</p>
</li>
<li>
<p><a href="https://github.com/timbray/quamina">Quamina</a> (probably moving to Codeberg soon).</p>
</li>
<li>
<p>Bluesky; but it seems I never go there any more unless I’m following links from elsewhere. To be honest, not sure what
I’d replace it with.</p>
</li>
</ol>
<p>Have fun!</p>
</div>
</content>
</entry>
<entry>
<title>Declining America</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America"/>
<link rel="replies" thr:count="11" type="application/xhtml+xml" href="/ongoing/When/202x/2026/05/19/Declining-America#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America</id>
<published>2026-05-19T12:00:00-07:00</published>
<updated>2026-05-20T12:08:48-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World/Politics"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Politics"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/AI"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="AI"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and unbeliever contributions would be welcome. I declined, because it’s in the USA</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s
mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and
unbeliever contributions would be welcome.
I declined, because it’s in the USA.</p>
<p>Here’s the text; maybe someone in a similar situation might find it useful.</p>
<hr/>
<p>Thanks to whoever thought of me for the kind invitation, which I must regretfully decline.</p>
<p>I’m Canadian and as a matter of principle feeling negative about visiting a neighboring country whose leader has repeatedly
threatened our sovereignty and shown massive disrespect for our nationhood. Particularly when that leader has followed up
similar statements about other nations with military action.</p>
<p>I could probably work around that. But there’s also the issue of entering the US; if I roll up at the border and am asked to
disclose my social media output, there’s a significant risk of an extremely negative outcome. I have a family to support and
really can’t afford that risk.</p>
<p>I still consider myself a friend of your organization, and one with strong opinions about the subjects scheduled for
discussion; my regrets about having to decline are entirely sincere.</p>
<p>—Regards, Tim</p>
</div>
</content>
</entry>
<entry>
<title>Life During Class Wartime</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime"/>
<link rel="replies" thr:count="6" type="application/xhtml+xml" href="/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime</id>
<published>2026-05-03T12:00:00-07:00</published>
<updated>2026-05-06T10:28:35-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World/Politics"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Politics"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">War is bad. Don’t start one. But we’re already in a class war and we’re losing. Where by “we” I mean most people; the winning side comprises, roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.] So, what to do in a war one didn’t choose?</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>War is bad. Don’t start one. But we’re already in a class war and we’re losing.
Where by “we” I mean most people; the winning side comprises,
roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.]
So, what to do in a war one didn’t choose?</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/Oxfam-distribution-of-wealth.png" alt="Share of global wealth 2010-2015" class="inline"/>
<h2 id="p-1">How bad is it?</h2>
<p>
It’s really bad, and getting worse fast. I recommend cruising through Wikipedia’s excellent
article on
<a href="https://en.wikipedia.org/wiki/Distribution_of_wealth">Distribution of wealth</a>
; maybe jump straight to the
<a href="https://en.wikipedia.org/wiki/Distribution_of_wealth#Wealth_inequality">Wealth inequality</a>
section.
I’ve pulled one helpful graph,
sourced from Oxfam, into the margin. The article has loads of other statements of the form “The richest X compared to the
poorest Y have Z times️ as much.” The values of X, Y, and Z are uniformly saddening.
</p>
<p>
As a resident of a wealthy West-Coast New-World city, the effects of pathological inequality are in my face every day:
Bentleys gleaming on the road, ragged people huddled in the rain cadging cash outside the drugstores,
<a href="https://homelesshub.ca/community_profile/vancouver/">thousands homeless</a>
.
</p>
<h2 id="p-5">Why is that bad?</h2>
<p>
It’s not only sinful by any sane definition of sin, but stupid, inefficient, and damaging. I turn once again to
Wikipedia:
<a href="https://en.wikipedia.org/wiki/Effects_of_economic_inequality">Effects of economic equality</a>
.
I’ll add one pointer to an effect that is less obvious: It
<a href="https://talkingpointsmemo.com/cafe/inquality-affordability-tax-wealthy">exacerbates the unaffordability crisis</a>
.
</p>
<p>One effect of the increasing imbalance between the ultra-wealthy and
everyone else is the emergence of, effectively, a hereditary aristocracy. “Wait!” you exclaim, “How about high income-tax rates for
the wealthy, and inheritance taxes?” You might well ask. It turns out those are no longer operative. I’ll get into
details about that, but first…</p>
<h2 id="p-3">A parable: Grant Gustavson</h2>
<p>
I am, as previously related (see
<a href="/ongoing/When/202x/2025/05/04/Southsiders">Southsiders</a>
and
<a href="/ongoing/When/202x/2025/11/23/Soccer-vs-Football">Fútbol Joy</a>
) a fan of the Vancouver Whitecaps Football Club (VWFC)
who play in
<a href="https://www.mlssoccer.com">Major League Soccer</a>
. It’s affordable, light-hearted, high-drama, high-quality
entertainment and has lifted my spirits notably in the recent dark years.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023555451.png" alt="Fans with a “Save the Caps” message"/>
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023603197.png" alt="Fans with a “Save the Caps” message"/>
<div class="caption">
<p>Vancouver Whitecaps fans bring the love</p>
</div>
<p>
However, it appears that Vancouver’s about to lose the Whitecaps, at the whim of a Vegas-based purchaser, of whom
<a href="https://www.nytimes.com/athletic/7244005/2026/04/30/las-vegas-vancouver-whitecaps-mls-buyer-gustavson/">The Athletic
writes</a>
:
</p>
<blockquote>
<p>The potential buyer is Grant Gustavson, the son of Kentucky billionaire Tamara Gustavson and grandson of B. Wayne
Hughes, founder of Public Storage, according to multiple sources with knowledge of the discussions. Forbes estimates Tamara
Gustavson’s net worth at $8.5 billion.</p>
<p>Gustavson, 30, lives in Las Vegas. A graduate of the University of Southern California, he has been involved with the
athletic department at his alma mater and helped to develop the Name, Image and Likeness (NIL) program there. He continues to
work with the USC basketball program and is also involved in the management of his family’s farm, “the country’s premier
thoroughbred farm with decades of storied champions throughout the stables.”</p>
</blockquote>
<p>
So this fucking youngster, who has life experience working at the gym at USC (where his Mom’s
<a href="https://boardoftrustees.usc.edu/trustees/">on the Board of Trustees</a>
) and helping out at the family farm, can reach out
his mighty hand and snatch away a popular pleasure from another nation.
<i>Droit du seigneur</i>
in action.
</p>
<h2 id="p-6">Staying rich</h2>
<p>
I highly, highly recommend
<a href="https://www.nytimes.com/2026/04/17/opinion/ezra-klein-podcast-ray-madoff.html">Our Tax System Should Make You
Furious</a>
from the
<cite>NYT</cite>
. By “our” they mean America’s. First, it addresses the canard that the tax system is
actually progressive; people who like things the way they are like to say “Forty percent of people pay no federal income taxes,
and then the top 1 percent pay 40 percent of the income taxes.” (Tl;dr: Somewhere between highly misleading and a big fat lie.)
</p>
<p>Second, it explains the mechanisms by which
generational wealth is accumulated and preserved, effectively in perpetuity. People like Bezos and Musk pay basically no
income tax, and the way they do it isn’t complicated or hard to understand.</p>
<p>
There is actually a family of financial products called
<a href="https://en.wikipedia.org/wiki/Dynasty_trust">Dynasty Trusts</a>
. The first ad that popped
up in response to my Web search had the marketing copy “Dynasty trusts: preserving family assets for future generations”.
Or, put another way, “Dynasty trusts: Starving beggars in your neighborhood.”
</p>
<h2 id="p-2">Revenue from the rich</h2>
<p>
So what can we do about it? Tax expert Ray Madoff, the interviewee in the “Should Make You Furious” piece, has smart things to
say. Then there’s
<a href="https://www.lemonde.fr/en/opinion/article/2025/06/14/thomas-piketty-opponents-of-the-tax-on-the-ultra-wealthy-lack-historical-perspective_6742333_23.html">Thomas
Piketty: “Opponents of the tax on the ultra-wealthy lack historical perspective”</a>
.
</p>
<p>The common thread is taxation of wealth not income, because the arcane abstractions of accounting make income too easy to
hide. The argument is that a wealth tax of say 2%/year, starting at a threshold of a few tens of millions, won’t
impair the lifestyles of the seriously wealthy, but still yield systemically important public-sector revenue</p>
<p>
Also worth reading, from the International Monetary Fund:
<a href="https://www.imf.org/en/blogs/articles/2018/02/13/game-changers-and-whistle-blowers-taxing-wealth">Game-Changers and
Whistle-Blowers: Taxing Wealth</a>
.
Among other things, it reports that the proportion of wealth that is hidden in one offshore tax shelter or another is pretty small,
ranging from 8% in the developed countries up to 30% in poor nations. Apparently it’s harder to hide wealth than income.
</p>
<h2 id="p-7">Good karma</h2>
<p>
If wealth taxation won’t touch wealthy lifestyles and will help build a safer, calmer, happier society, it feels
sort of irrational to oppose it. And some of the wealthy don’t. My favorite example of this is Avi Bryant. Check out
<a href="https://macleans.ca/politics/tax-the-rich/">I’m a Millionaire. Tax Me More, Please</a>
and
<a href="https://thenarwhal.ca/canada-wealth-tax/">Meet a millionaire who wants Canada to tax the rich</a>
. [Disclosure: I made
a nice little chunk of money when my tiny investment in Avi’s startup turned into pre-IPO Twitter shares.] I’m also interested in
<a href="https://patrioticmillionaires.ca">Patriotic Millionaires</a>
, which Avi founded.
</p>
<p>
Also worth checking out: Jeff Atwood’s
<a href="https://blog.codinghorror.com/stay-gold-america/">Stay Gold, America</a>
and
<a href="https://blog.codinghorror.com/launching-the-rural-guaranteed-minimum-income-initiative/">Launching The Rural Guaranteed
Minimum Income Initiative</a>
. So, not all of the 0.1% are The Enemy.
</p>
<h2 id="p-8">It’s not complicated</h2>
<p>Around the world, governments are running up huge debts and cutting back social programs because the taxation revenue doesn’t
come near the amount it requires to provide a livable society. So the choice is stark: Cut and slash deeper (read: starving beggars)
or find more money. There’s lots of money out there basically just playing financial
games; it needs to be put to work doing something useful.</p>
<p>This package of ideas should be easy to sell to voters. Of course, resistance will be ferocious and
extremely well-funded. But the currently-winning side in our class war is actually a soft target. Target for what weapon, you ask?
Democracy. No need for tumbrils and guillotines. Yet.</p>
</div>
</content>
</entry>
<entry>
<title>Corey’s Captives</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives"/>
<link rel="replies" thr:count="0" type="application/xhtml+xml" href="/ongoing/When/202x/2026/04/26/Coreys-Captives#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives</id>
<published>2026-04-26T12:00:00-07:00</published>
<updated>2026-04-27T12:05:14-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts/Books"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Books"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">That’s <a href="https://en.wikipedia.org/wiki/James_S._A._Corey">James S.A. Corey</a>, which is to say Daniel Abraham and Ty Franck, and their new series <a href="https://en.wikipedia.org/wiki/The_Captive%27s_War">The Captive’s War</a>, an in-progress work comprising 2¼ or so novels. The Coreys are of course best-known for their deservedly wildly popular <cite>The Expanse</cite> series and the subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should wade in, the following is for you</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
That’s
<a href="https://en.wikipedia.org/wiki/James_S._A._Corey">James S.A. Corey</a>
, which is to say Daniel Abraham and Ty Franck,
and their new series
<a href="https://en.wikipedia.org/wiki/The_Captive%27s_War">The Captive’s War</a>
, an in-progress work comprising 2¼
or so novels. The Coreys are of course best-known for their deservedly wildly popular
<cite>The Expanse</cite>
series and the
subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should
wade in, the following is for you.
</p>
<h2 id="p-1">Minor and meta spoilers</h2>
<p>Don’t worry, you can go on reading this even if you plan to read the books. Here’s a spoiler that has appeared in every public
mention of the book, which I’ll give away with a quote from page 102: “I think some important scientific questions have finally
been answered. Alien life exists, and they are assholes.” Which is to say, it doesn’t go well for the humans.</p>
<p>
Now for the meta-spoilers. The novels are
<cite>The Mercy of Gods</cite>
and
<cite>The Faith of Beasts</cite>
, then there’s a
novella,
<cite>Livesuit</cite>
. I found
<cite>The Mercy of Gods</cite>
a bit of a grind, and if that’s all I’d read I would have
been pretty negative about this project. There is a major,
<em>major</em>
reveal partway into
<cite>The Faith of Beasts</cite>
that changed my whole outlook on the series; it makes the storytelling velocity really pick up. It’s a little annoying that
<cite>Livesuit</cite>
was published between the two full novels because it only really makes sense if you’ve finished both of
them. So do like I did, and read the novella last.
</p>
<p>I have to ask why the Coreys couldn’t have pulled the curtain aside a little earlier on. And while I’m griping, let me add
that the sped-up storytelling runs into a big honking cliffhanger ending at high velocity. Harumph.</p>
<h2 id="p-2">My take-away</h2>
<p>
It could go off the rails but if they can maintain their
<cite>Expanse</cite>
form, I suspect this series is going to be
pretty great. The characters are fun to know and the narrative revolves around the great mother of all trolley-problem ethical
challenges, which was not nearly resolved at cliffhanger-ending time.
</p>
<p>Those of us who are fussy about the plausibility of future technologies (hey, Charlie Stross) should avert their eyes from
the Coreys’ fairly low-effort attempts to explain how the aliens and humans in this story accomplish the things they do. Doesn’t
bother me much, though.</p>
<p>
Having said all that, this series is not cheerful stuff; I do
<em>not</em>
recommend it to those who, like many in these
troubled times, are having trouble seeing the bright side of, well, anything.
</p>
<h2 id="p-3">Will I read the next volume?</h2>
<p>Yep, no hesitation. And they’ve already started working on a streaming version. Unfortunately it’s going to be on Amazon
Prime, which I haven’t missed since unsubscribing a couple years ago. Getting this thing on the screen is
going to be an extended, difficult, task. There are multiple species of aliens that the show is going to have to absolutely nail, with
emotional credibility, for the story to work. Don’t hold your breath.</p>
</div>
</content>
</entry>
<entry>
<title>Spring Evening</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras"/>
<link rel="replies" thr:count="0" type="application/xhtml+xml" href="/ongoing/When/202x/2026/04/13/Modern-Cameras#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras</id>
<published>2026-04-13T12:00:00-07:00</published>
<updated>2026-04-15T22:23:17-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts/Photos"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Photos"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">On impulse, Lauren and I went out for a short walk<span class="dashes"> —</span> around just a few blocks<span class="dashes"> —</span> as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera on the way out the door</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
On impulse, Lauren and I went out for a short walk
<span class="dashes"> —</span>
around just a few
blocks
<span class="dashes"> —</span>
as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera
on the way out the door.
</p>
<p>
In our local community garden, here’s (I think) a
<a href="https://en.wikipedia.org/wiki/Chard">chard</a>
.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56259.png" alt="Looking down on a vegetable plant with glossy green leaves and orange-yellow stalks"/>
<p>That was in Vancouver’s Mount Pleasant park, small but nice and apparently never not used. Also this old blackened
fruit tree, we’re a bit past the fruit-blossom peak for this year. Nice to see I’m not the only old citizen trying to brighten
things up.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56264.png" alt="Fruit-tree blossoms on a blackened branch"/>
<p>Now we’re walking up a locally-main street called Main Street or “The Main” if you’re trying to sound
hip. Someone put work into that window! I’ve bought my daughter a couple of cool birthday presents from the store behind it. My
thanks to the building across the street for providing a dark background reflection.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56265.png" alt="Used-fashion store window "/>
<p>Back to the next block over from ours. A while ago a bunch of people were building little fairy/elf/hobbit villages at the
bottoms of the big old trees. This isn’t that. What is it?</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56270.png" alt="Dolls and related tree artifacts at the base of a tree in dim light"/>
<p>The colors of the natural surfaces are real.</p>
<h2 id="p-1">Cameras</h2>
<p>When I shot these, it
was getting dark but I didn’t think much, mostly just pointed and shot. (Fiddled with the aperture dial a bit.) Then I came
home and pulled them into Lightroom and didn’t need to do really anything about colors. A bit of contrast and highlights here
and there. Oh, and fairly brutal cropping, especially on that fruit-tree-flowers pic. Because like I said, I didn’t think very
much when I was shooting and I didn’t have to because on a Twenties camera you don’t.</p>
<p>I could take that heavily-cropped fruit-tree
picture and print it big enough to occupy any domestic wall in your place and yeah, there’d be grain but it wouldn’t
bother your eyes.</p>
<p>Anyhow, modern cameras are pretty great. The lowest ISO in today’s set is 2500 and the highest is 6400; the apertures range
from 2.8 to 5.6.
Bet you can’t tell the differences. My camera is a reasonably modern Fujifilm but not remotely
bleeding-edge in camera tech. (Note: 35mm F1.4, now all the Fuji fanfolk are smiling and nodding.)</p>
<p>
Anyhow, there are very
<em>very</em>
few photographers for whom the camera they carry is the limiting factor in the
goodness of their pictures. Certainly not me.
</p>
<p>Consider getting a camera. Used is fine, anything built in the last five years, maybe more, will effortlessly take brilliant
pictures in almost any conditions. Sure, your phone can take great shots too, but the feeling of walking along with something
that fits your hand and you only have to press one physical button once, that feeling, it helps you see the good pictures when they happen.</p>
<p>Then go out after and take a walk in the Spring dusk.</p>
</div>
</content>
</entry>
<entry>
<title>Password Manager Angst</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst"/>
<link rel="replies" thr:count="16" type="application/xhtml+xml" href="/ongoing/When/202x/2026/04/09/Password-Manager-Angst#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst</id>
<published>2026-04-09T12:00:00-07:00</published>
<updated>2026-04-10T10:42:16-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Identity"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Identity"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Security"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Security"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Our family has used <a href="https://1password.com">1Password</a> for many years. Most recently 1Password 7, now at least three years out of date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring <a href="https://bitwarden.com">Bitwarden</a>. The best choice isn’t obvious; here’s the story thus far</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
Our family has used
<a href="https://1password.com">1Password</a>
for many years. Most recently 1Password 7, now at least three years out of
date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring
<a href="https://bitwarden.com">Bitwarden</a>
. The best choice isn’t obvious; here’s the story thus far.
</p>
<p>
Important note: I suspect that most-to-all of the people reading this already are using a password manager. If you’re not,
please,
<i>
<b>PLEASE</b>
</i>
start now. Your browser probably has an OK one built-in, which is much better than
nothing.
<a href="https://www.cyber.gc.ca/en/guidance/password-managers-security-itsap30025">Here</a>
is a good write-up on the basics.
</p>
<h2 id="p-6">Our needs</h2>
<p>They’re not fancy. The house contains Macs and Androids and Windows and an iPad.
We have hundreds of accounts (some require an authenticator) and a basketfull of secure notes: Government-ID numbers, recovery
codes, and so on.</p>
<h2 id="p-5">1Password7 and 8</h2>
<p>1Password had this nice feature where you could sync between devices without involving any 1Password servers, in a variety
of ways. We used one of those and liked it.
1Password8 insists on storing your data (encrypted, more on that later). That always bothered me because, obviously, that
repository is a top-priority juicy target for all the bad guys, who range from employees of the Chinese government to geeky
narcos.</p>
<p>So we’ve been ignoring 1Password’s increasingly plaintive reminders that we were using years-out-of-date software
and chugging along with version 7. But, early this year, they broke our sync mode on the Android app and were pretty blunt that the only
way to get it back was to go to 1P8.</p>
<h2 id="p-7">Alternatives</h2>
<p>There are plenty of password managers (Let’s just say “PMs”) out there, but as a regular scanner of the landscape,
it seems to me that 1Password
(hereinafter “1P”) and Bitwarden (“Bw”) stand out as leaders. The rest of this piece will focus on those two.
If you think I’m wrong, say so below but also please say why.</p>
<p>Note that Bw comes in two flavors: That offered as a subscription service by the company of the same name, or as an open-source
software suite you can build and run yourself.</p>
<p>This is not to say that the PMs that are starting to appear built-in to browsers and OSes are worthless or unimportant,
just that some of us need a little more.</p>
<h2 id="p-8">The threat models</h2>
<p>
Two are obvious. The first is incompetence, like for example
<a href="https://en.wikipedia.org/wiki/LastPass#Security_incidents">LastPass</a>
, who apparently left the doors more or less
wide open to those bad guys I mentioned a few paragraphs ago. Complete horror-show.
</p>
<p>
The second is legal compulsion, where a government applies pressure to a PM provider to cough up our
secrets. Anybody who thinks governments won’t try is fooling themselves, because they’ve repeatedly said they want to, and are
eager to pass ill-considered legislation such as the
<a href="https://en.wikipedia.org/wiki/CLOUD_Act">CLOUD Act</a>
. So we care about that aspect a lot.
</p>
<h2 id="p-9">1P vs Bw: Security</h2>
<p>
I think they both have acceptably-good security postures; check out
<a href="https://bitwarden.com/help/bitwarden-security-white-paper/">Bitwarden Security Whitepaper</a>
and
<a href="https://support.1password.com/1password-security/">About the 1Password security model</a>
.
</p>
<p>Both of them offer to host your data outside of the US, specifically in Canada or the EU.</p>
<p>
But it doesn’t matter
<em>that</em>
much if a bad guy or bad government gets their hands on your password store; what
matters is whether or not they can decrypt it. I’m not an infosec professional but I know some and listen to them, and both
those security postures give me a good feeling. It’s not an accident that they’re pretty similar.
</p>
<p>
The actual threat isn’t so much that an adversary cracks the crypto; that’s very unlikely. It’s that they find a way to force
a PM vendor to build a back door into their software to get access to keys and passwords. For that reason, it would warm
my heart if either or both of Bw and 1P were to post a
<a href="https://en.wikipedia.org/wiki/Warrant_canary">Warrant Canary</a>
.
</p>
<p>But I’m going to give Bw a very slight edge. First, because of the fact that you can build and run it yourself, if you’re
willing to take responsibility for operating a server with strong security requirements. (I’m not.)</p>
<p>
The source being open potentially offers a second, and more important I think, advantage: If they were able to get a
<a href="https://en.wikipedia.org/wiki/Reproducible_builds">Reproducible build</a>
working, you’d have assurance that the code
you can download is the one their service is running. Which reduces the attack surface. (Mind you,
<a href="https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf">not to zero</a>
.) Reproducible
builds are hard, but if they did that, it would make a difference to me.
</p>
<p>
On the other hand, Bw’s software development process
<a href="https://contributing.bitwarden.com/contributing/ai/">embraces GenAI</a>
generally and Claude specifically.
At this stage in the growth of those technologies, this sends a chill up my spine. To be fair, 1P’s website
shouts that it’s just the thing for agentic security, whatever that means. And we don’t know anything about 1P’s internal
software-dev process.
</p>
<h2 id="p-10">1P vs Bw: Fit and finish</h2>
<p>1P wins this one. The problem is, do they always pop up when needed and never when they’re not? Can they fill every login
field that needs filling? Does the popup show you just what you need and nothing extraneous? I’ve used both and 1P is just
better.</p>
<h2 id="p-11">Business issues</h2>
<p>This one is also pretty well a saw-off. Both of them have taken substantial chunks of VC money and thus are going to
come under relentless pressure to enshittify. I worry a little less about this because from what I read,
there’s not much lock-in.</p>
<p>Personal experience too: I recently did an export of everything out of 1P and into Bw and it all Just Worked, albeit putting all
my stuff into a folder named "No Folder" that I can’t figure out how to rename.</p>
<p>Both Bw and 1P are subscription-only, at prices that seem fair to me.</p>
<h2 id="p-12">Death and recovery and pen and paper</h2>
<p>As I was reading up on this stuff, the issue of recovering access to your PM after it had been lost came up a couple of times.
Here’s a scenario where that could be really important: I die. And then my wife needs to get access to bank accounts and
business emails and so on.</p>
<p>Somebody (I’ve lost the link) was horrified that one of the PMs suggested writing the password down on a piece of paper as a
last-resort measure, but I’m here to tell you that they’re wrong. My wife has an envelope containing a piece of paper on which
appear the passwords for my PM and Mac, my mobile-phone PIN, and a very small number of other secret things she might really
need if I’m suddenly gone. I have no idea where she put it, but she’s really smart so I don’t worry.</p>
<p>You should probably do something like this too.</p>
<h2 id="p-13">What will we do?</h2>
<p>We’ve paid for a year’s worth of both Bw and 1P. At the moment, we’re leaning to 1P because it’s a little more polished.
Which matters because my PM is something I use many times every day. Also they’re somewhat Canadian.</p>
<p>If you think we’ve missed something, please do let us know.</p>
</div>
</content>
</entry>
<entry>
<title>Long Links</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links"/>
<link rel="replies" thr:count="2" type="application/xhtml+xml" href="/ongoing/When/202x/2026/03/24/Long-Links#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links</id>
<published>2026-03-24T12:00:00-07:00</published>
<updated>2026-03-26T16:36:32-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="The World"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">This will be the 30<sup>th</sup> Long-Links outing. I’m 100% sure that there does not live a human being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to open one occasionally. All aboard!</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
This will be the 30
<sup>th</sup>
Long-Links outing. I’m 100% sure that there does not live a human
being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to
open one occasionally. All aboard!
</p>
<p>Sadly, more than half the Long Links, this time out, are about AI. I almost decided to bury the piece but, whatever you or I
think, the subject matters. And the ones I posted are a tiny fraction of those I read (or tried to) and I think are
useful and not immoral.</p>
<p>But, let’s put all the non-AI stuff at the front so you can stop reading partway through if you’ve just had enough of
that stuff.</p>
<h2 id="p-1">Not about GenAI</h2>
<p>
Paul Ford has, after a lengthy gap, started writing again at
<a href="https://ftrain.com">ftrain.com</a>
. Excellent!
Go there any day and there’ll almost certainly be something good at the top of the
page. He’s a technologist and, yeah, writes about AI sometimes, but
<a href="https://ftrain.com/warp-and-woof">Warp and Woof</a>
is about dogs and their people. Charming.
</p>
<p>
I think most people who aren’t ultra-wealthy now agree that inequality is currently a central problem of our society. But it
would be nice to put some numbers behind that assertion.
<a href="https://paulkrugman.substack.com/p/talking-with-gabriel-zucman">Here</a>
is a conversation between Paul Krugman,
Nobel-prizewinning economist, and Gabriel Zucman, a French specialist in the subject and frequent Piketty collaborator.
Now, there are quite a few paragraphs up front of talk about general macroeconomic issues and comparisons between the US and Europe,
which I enjoyed reading. And then inequality; here’s Zucman: “And so everybody now understands what was long understood for
centuries, very much including in the West, which is that extreme wealth is never virtual, it is always extreme power.”
</p>
<p>
CO
<sub>2</sub>
densities in Parts Per Million are a good measure of how full your inhalations are of others’ exhalations. And
thus of how likely you are to catch something by breathing. Especially, Covid, which everyone with a half a brain knows is not
nearly over. Anyhow, A. Grieve-Smith offers
<a href="https://grieve-smith.com/ftn/2026/03/nine-observations-from-carbon-dioxide-monitoring/">Nine observations from carbon
dioxide monitoring</a>
: “I’ve been checking carbon dioxide levels for over three years now, and I’ve started to see patterns.”
This piece could save your life, and that’s not a metaphor.
</p>
<p>
Patrick McKenzie, who writes
<cite>Bits About Money</cite>
, has an icy-cool style and this Link could be a Little Less Long,
but I learn interesting things every time I read one of his pieces.
<a href="https://www.bitsaboutmoney.com/archive/fraud-investigation/">Fraud Investigation is Believing Your Lying
Eyes</a>
launches from the Minnesota child-care fraud story, but is mostly, as the title suggests, relates the conventional wisdom
(which I didn’t know) about how to go sniffing around for in-progress fraud.
From which “As a fraud investigator, you are allowed and encouraged to read Facebook at work.”
</p>
<p>
Hari Kunzru has written good books and is a former London native.
<cite>Harpers</cite>
gave him an assignment:
Walk around and write about the city, thus
<a href="https://harpers.org/archive/2026/02/another-london-situationists-hari-kunzru/">Another London: Excavating the
disenchanted city</a>
. It’s a tour through time as much as space
<span class="dashes"> —</span>
London, obviously, is
history-drenched
<span class="dashes"> —</span>
and not just politics and power either, but arts and ideas. The writing is
beautiful. It’ll take a chunk out of your day but the trade-off is good.
</p>
<p>
Here’s something beautiful:
<a href="https://thehtml.review/05/">The HTML Review</a>
. Now I want to publish there, but I’d have to up my
writing game.
</p>
<h2 id="p-5">Lankum</h2>
<p>
They’re an Irish band I just discovered, courtesy of Qobuz. The music grows out of traditional Irish acoustic folk. They play
old and new songs and throw in a heavy dose of snarl and drone. Some of the chords are like rotated model augmented 11ths or some
such, scratchy around the edges but helped with an itch I hadn’t known I had. Terrific musicians. Here’s
<a href="https://www.youtube.com/watch?v=lUReQ9GhT8s">Hunting the Wren</a>
. I might get over-excited and fly to Ireland to see them.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/24/Lankum.png" alt="Lankum in concert"/>
<h2 id="p-2">Tech, but not GenAI</h2>
<p>
Sebastian Pipping is, among other things, an Open-Source software developer, with whom
<a href="/ongoing/When/202x/2021/03/24/XMLWF-dash-k">I’ve collaborated</a>
. His recent
<a href="https://blog.hartwork.org/posts/learn-from-me/">Learn from me!</a>
begins “Not too long ago, someone literally asked me
what they "could learn from me", and that question has stuck with me since.” So he offers a few candidate lessons. What a nice
idea! What could people learn from
<em>you</em>
?
</p>
<p>
Filippo Valsorda, another OSS dev, is particularly interesting because he and a few partners have apparently figured out
<a href="https://geomys.org">how to make a living from their work</a>
.
He recently published
<a href="https://words.filippo.io/dependabot/">Turn Dependabot Off</a>
and I’m not going to offer a word of explanation because
if you understand the title I guarantee you’ll be interested in the piece. (I’m terrified of Dependabot.)
</p>
<p>
It seems like every day I hear from another person who’s trying to get their personal lives off Big Tech. Me too. So…
In
<cite>The Verge</cite>
,
<a href="https://www.theverge.com/tech/879114/best-big-tech-app-alternatives-installer">How to un-Big Tech your online life</a>
.
And from Paris Marx,
<a href="https://disconnect.blog/getting-off-us-tech-a-guide/">Getting off US tech: a guide</a>
. We are in the early stages of
de-Googling our family life, so this stuff is super useful. I expect to see more of it.
</p>
<h2 id="p-4">Amazon polemics, maybe a little AI</h2>
<p>I don’t loathe Amazon any more nor less than the rest of the Big Techs, but boy are there are a lot of people
publishing diatribes against the company. Not sure I understand why. But, worth reading.</p>
<p>
In
<a href="https://markatwood.substack.com/p/how-amazon-dies-a-possible-maybe?">How Amazon Dies: A Possible, Maybe Likely
Future</a>
Mark Atwood predicts that the infestation of amazon.com with highly-profitable advertising is a perhaps-fatal
blunder. What’s maybe more interesting is that he points out several potential Amazon alternatives that don’t suffer from
that same infestation; they hadn’t occurred to me.
</p>
<p>
And from a year ago, Cory Doctorow’s
<a href="https://pluralistic.net/2025/03/13/electronic-whipping/#youre-next">The future of Amazon coders is the present of
Amazon warehouse workers</a>
introduces the “shitty technology adoption curve”. I missed this piece at the time but boy, is it
easy to believe.
</p>
<p>
Finally, reading
<a href="https://www.bigtechnology.com/p/writing-crystalized-thinking-at-amazon?">Writing Crystalized Thinking At Amazon. Is AI
Muddying It?</a>
angered me. While I have no remaining respect or affection for any of the Big Techs, I enjoyed my time at AWS
and part of it was the writing culture. I think the Way Of The Six-pager is the best business-process innovation I witnessed in
my working life. If Amazon really is slopifying it, I predict disastrous outcomes.
</p>
<h2 id="p-3">OK, here’s the AI stuff</h2>
<p>My own position, just to be clear: There are going to be LLM applications in a few domains here and there, and one of them is
software development, but they won’t be nearly big enough to damage earth’s climate any further, nor to prevent the bubble from
popping. That said…</p>
<p>
Let’s do the worst first:
<a href="https://www.heavybit.com/library/article/write-only-code">Write-Only Code</a>
lays out a genuinely frightening future.
Quote: “I was maniacally insistent that any proposed change to our SDLC (software development life cycle) be evaluated first
through the lens of developer velocity.”
I think I’d rather not go there.
</p>
<p>
Most of us who watch the space, and have no idea where it’s going or what the future holds, are I think particularly
interested in Anthropic’s Claude. If you’re one, you’ll probably enjoy
<a href="https://www.newyorker.com/magazine/2026/02/16/what-is-claude-anthropic-doesnt-know-either">What Is Claude? Anthropic
Doesn’t Know, Either</a>
.
</p>
<p>
It’s probably not that GenAI is intrinsically immoral. As Karl Bode writes,
<a href="https://karlbode.com/the-problem-with-ai-is-shitty-human-beings/">The Problem With AI Is Shitty Human Beings</a>
. I
covered some of the same territory last year in
<a href="/ongoing/When/202x/2025/07/06/AI-Manifesto">The Real GenAI Issue</a>
, but Bode is excellent:
“…the grand vision of modern automation's benefits can never materialize if its stewards are
<i>foundationally fucking terrible
human beings disinterested in the contours of empathy.</i>
If we're not talking prominently about that, we aren't really talking at
all.” (Emphasis his.)
</p>
<p>
One of the things that shitty people do is lie. Like for example charismatic leaders of AI “startups” valued in the tens of
billions. But then so do the less-visible, which provoked Kyle Kingsbury A.K.A. Aphyr to write
<a href="https://aphyr.com/posts/405-trudging-through-nonsense">Trudging Through Nonsense</a>
. It’s sad and angry but I think
usefully so.
</p>
<p>
Armin Ronacher is not bursting with rage, but he is skeptical about all the right things in
<a href="https://lucumr.pocoo.org/2026/3/20/some-things-just-take-time/">Some Things Just Take Time</a>
. Quote:
“There’s a feeling that all the things that create friction in your life should be automated away. That human involvement should
be replaced by AI-based decision-making. Because it is the friction of the process that is the problem. When in fact many times
the friction, or that things just take time, is precisely the point.”
</p>
<p>
For another cool-voiced critique, here’s Rishi Baldawa:
<a href="https://rishi.baldawa.com/posts/ai-mandates-manufacture-noise/">AI Mandates Manufacture Noise</a>
. While I’m not
entirely a burn-it-all-with-fire GenAI foe, the “boss mandate” always struck me as dumb, and Rishi spells it out clearly
and simply. It’s really good, so here are a couple of quotes: “But those not in the weeds had no way to know any of this
because… well they aren’t in the weeds. So they feel compelled to solve their information gap with a policy hammer.” and
“As said before, none of this is revolutionary and that’s sort of the point. AI is a ’mirror and multiplier‘. It intensifies
whatever was already happening.”
</p>
<h2 id="p-6">That’s all</h2>
<p>Let’s really hope the bubble bursts soonest. Because when the money goes away, so will a lot of the shitty people.</p>
</div>
</content>
</entry>
<entry>
<title>Nash Burns Saves the Day</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns"/>
<link rel="replies" thr:count="1" type="application/xhtml+xml" href="/ongoing/When/202x/2026/03/20/Nash-Burns#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns</id>
<published>2026-03-20T12:00:00-07:00</published>
<updated>2026-03-20T13:53:25-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/Web"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Web"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their emails to us were bouncing. Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on. Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly price, and has been trouble-free</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their
emails to us were bouncing.
Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on.
Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly
price, and has been trouble-free.</p>
<p>So, what could be wrong? We investigated and discovered that Google was offering a new-and-improved MX-record option,
although they emphasized that the old setup should still work. Anyhow, we installed the New Thing and it didn’t help.</p>
<p>
So, we filed a ticket with CWH tech support and somebody got back to us pretty quick, saying they’d changed a firewall
setting that was blocking connections to Germany. I detect the scent of GDPR, but whatever.
<br/>
Euro-email: Bounce, bounce.
</p>
<p>
CWH: Probably an MX-record issue, and we should wait for DNS propagation. Several days passed and
bounce, bounce, bounce.
<br/>
Us: “Not DNS propagation.”
<br/>
CWH: “Still could be.”
</p>
<p>So we VPN’ed to Germany and discovered we couldn’t ping
Textuality’s IP address. Smells like a firewall to me. We told CWH that.</p>
<p>
CWH: We have made some changes to firewall settings.
<br/>
EMail: bounce, bounce, bounce.
<br/>
VPN+Ping: Request timeout, request timeout, request timeout.
</p>
<p>
CWH: Try traceroute?
<br/>
VPN+Traceroute: 14 hops, no joy.
</p>
<p>
CWH: Your VPN settings must be wrong. Here are instructions to use Windows PC VPN correctly.
<br/>
Us: Thanks but no.
</p>
<p>
CWH: Your MX records are configured incorrectly.
<br/>
Us: No, they are correct per Google guidance. We sent an email beginning
“Please believe us.”
</p>
<p>CWH: It must be DNSSEC. Check to see if your registrar implements DNSSEC. <br/>Us: We are using your DNS servers.</p>
<p>CWH: Perhaps your registrar is broadcasting an old record? <br/>Us: Our registrar doesn’t do DNSSEC.</p>
<p>At this point we consulted a friend who’s an expert on DNS and Email and even DNSSEC. He verified that not only could
you not ping
Textuality from Germany, you also couldn’t ping CWH or its name servers. Firewall firewall firewall!</p>
<p>
CWH: “I did test the site access using a 3rd party application, and it seems to be accessible on all parts.”
<br/>
Us: Look at the
output, it shows we can’t be reached from anywhere in Germany.
</p>
<p>
Also, for all the remaining messages in the email trail, we prefixed our input with bold face extra-large text reading:
<b>Systems located in Germany cannot ping Textuality.com’s IP address, nor can they ping the IP addresses of textuality.com’s
designated name servers. This is the problem.</b>
</p>
<p>CWH: Let’s try migrating you to a different server; try pinging these hostnames. <br/>VPN+Ping: Nope.</p>
<p>
CWH: Are you sure it’s not your VPN settings?
<br/>
Us: Are you sure it’s not your GDPR settings?
<br/>
CWH: Raising your issue to Tier 3.
</p>
<p>20 hours pass, then we get email from:</p>
<h2 id="p-1">Nash Burns!</h2>
<p>…who said “This has been fixed.” It was.
Nash’s email signature was “Nash(Rajaneesh) B”. What a great name, though. Thanks, Nash.</p>
<h2 id="p-2">Am we mad?</h2>
<p>Not really. Consumer-facing tech support is hard. None of their suggestions were unreasonable.
Doing GDPR correctly is hard.
They’ve been just fine for years and were having a bad week.
Could we expect better from any of CWH’s local competitors? Probably not.</p>
<p>It wasn’t funny at the time, but looking back, it kind
of is.</p>
</div>
</content>
</entry>
<entry>
<title>Pure Sound Please</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please"/>
<link rel="replies" thr:count="1" type="application/xhtml+xml" href="/ongoing/When/202x/2026/03/16/Pure-Sound-Please#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please</id>
<published>2026-03-16T12:00:00-07:00</published>
<updated>2026-03-18T14:34:31-07:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts/Music"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Music"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">This last weekend we attended a concert entitled <cite>Lenten Reflection</cite> at Vancouver’s Catholic <a href="https://en.wikipedia.org/wiki/Holy_Rosary_Cathedral_(Vancouver)">Holy Rosary Cathedral</a> featuring the <a href="https://bellevoci.ca">Belle Voci</a> vocal group and the <a href="https://chilliwacksymphony.com/cantare-super-orchestram/">Cantare Super Orchestram</a> early-music band. The music was fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below). And so I get to report on good music and yell at production people</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
This last weekend we attended a concert entitled
<cite>Lenten Reflection</cite>
at Vancouver’s Catholic
<a href="https://en.wikipedia.org/wiki/Holy_Rosary_Cathedral_(Vancouver)">Holy Rosary Cathedral</a>
featuring the
<a href="https://bellevoci.ca">Belle Voci</a>
vocal group and the
<a href="https://chilliwacksymphony.com/cantare-super-orchestram/">Cantare Super Orchestram</a>
early-music band. The music was
fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below).
And so I get to report on good music and yell at production people.
</p>
<p>A cathedral is a nice place for a concert!</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_215727574.png" alt="Interior of Vancouver’s Holy Rosary Cathedral"/>
<p>
The concert opened with just the singers, their voices drifting down from a high place behind us, a balcony or choir loft.
There was no incremental accompaniment and no amplification; the music flowed from vocal cords to
eardrums
<span class="dashes"> —</span>
not directly, of course, there was lots of reflection and reverberation introduced by the
Cathedral space. The singers were polished and expressive and the sound, drifting through the vast space, beyond exquisite.
</p>
<p>
They sang a lovely piece by Byrd (1539-1623). Then the instrumentalists played a number by von Biber (1644-1704) while the
singers snuck downstairs. Joined, they performed Bach’s BWV
<a href="https://en.wikipedia.org/wiki/Komm,_Jesu,_komm,_BWV_229">229</a>
and
<a href="https://en.wikipedia.org/wiki/Nach_dir,_Herr,_verlanget_mich,_BWV_150">150</a>
, then pieces by Pergolesi (1710-1736)
and Steffani (1654-1728).
</p>
<p>
The Bach pieces, as usual, had more music in the music, but the others were also fun. It was a small ensemble: In
the choir, five sopranos, five altos, a countertenor, four each tenors and basses. The band had five baroque
violins, a baroque viola, a baroque cello, a
<a href="https://en.wikipedia.org/wiki/Violone">violone</a>
(think, string bass with frets), a baroque bassoon, and a player
doubling on harpsichord and organ. Thus, an ensemble quite likely not too much bigger or smaller than the ones playing this
music in the 1700s, when it was new.
</p>
<h2 id="p-2">That sound</h2>
<p>Once again, the sound was something special and yeah, the musicians were excellent, but for me, the key thing was the lack of
amplification: vocal cord to eardrum via cathedral. It’s always seemed obvious to me that you can’t run music through a bunch of
electronics and speaker mechanics without changing it; if only spatially, with the sounds coming from speaker diaphragms located
somewhere away from the human musician.
To my ears, there is a fragile magic in pure unamplified sound. I lack the words to describe the difference but it’s not
subtle.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_212418188.png" alt="“Lenten Reflections” concert singers and players"/>
<p>Does this mean that everything was perfect? No; the choir was a little bit male-heavy; some of the soprano and especially
alto lines were part-hidden behind the massed male voices. Also, the bassoon was right at the front of the stage;
While the playing was fine, it felt as though it were musically, not just physically “in front of” the band and
singers.</p>
<p>Both of these could have been fixed, by telling the men to take it down a notch or having one or two fewer of them. And by
moving the bassoon back to the usual woodwinds spot behind the strings. Still, these were very minor imperfections.</p>
<p>Oh, and the performance and sound of the bass line on that violone was absolutely awesome; clearly audible as a thing on its
own while it wove all the other musical threads together.</p>
<p>
I’ve discovered that few classical musicians share my passion for unamplification. I hear things like “I want a
<em>full</em>
sound or “The soloists need to cut through the orchestra.” Which, well, OK, but somehow people managed to
accomplish those things for centuries, before amplifiers and speakers were invented.
</p>
<h2 id="p-1">22 months?</h2>
<p>
That’s since May of 2024 when I took in the
<a href="/ongoing/When/202x/2024/05/26/TTB">Tedeschi-Trucks Band</a>
, whose music couldn’t be more different from anything
called “Lenten Reflections”: electric not acoustic, profane not sacred. But crystal clear and perfectly balanced
sound; so much better than most electric bands achieve.
</p>
<p>My sincere thanks to the musicians and their leaders for a lovely experience. And my message to everyone co-ordinating and
leading live music performances: Of course the first priority has to be the quality of the music, but think about the sound and
try to be better. Better than than most performances manage, these days.</p>
<p>We know it’s possible.</p>
</div>
</content>
</entry>
<entry>
<title>Because Algospeak</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak"/>
<link rel="replies" thr:count="2" type="application/xhtml+xml" href="/ongoing/When/202x/2026/03/05/Because-Algospeak#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak</id>
<published>2026-03-05T12:00:00-08:00</published>
<updated>2026-03-07T10:29:41-08:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Language"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Language"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Life Online"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Life Online"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Recently I read <a href="https://en.wikipedia.org/wiki/Because_Internet">Because Internet</a> by <a href="https://gretchenmcculloch.com">Gretchen McCulloch</a> and <a href="https://en.wikipedia.org/wiki/Algospeak_(book)">Algospeak</a> by <a href="https://en.wikipedia.org/wiki/Adam_Aleksic">Adam Aleksic</a>. The language we speak (and text) to each other is at the core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth. So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
Recently I read
<a href="https://en.wikipedia.org/wiki/Because_Internet">Because Internet</a>
by
<a href="https://gretchenmcculloch.com">Gretchen McCulloch</a>
and
<a href="https://en.wikipedia.org/wiki/Algospeak_(book)">Algospeak</a>
by
<a href="https://en.wikipedia.org/wiki/Adam_Aleksic">Adam Aleksic</a>
. The language we speak (and text) to each other is at the
core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth.
So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/covers.png" alt="The covers of “Because Internet” and “Algospeak”"/>
<h2 id="p-1">Because Internet (2019)</h2>
<p>Its approach is historical and its voice fairly uninflected. It smiles and
argues, but it doesn’t ROFL nor does it YELL AT YOU. The history is longer, perhaps, than most people reading this have
been online (or even alive). Ms McCulloch goes back to the days of BBSes (“bulletin-board systems”) and ListServs and IRC. Some of
the jargon and formulations of those days live on; you’d be surprised.</p>
<p>Here’s her table of contents.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/BI-toc.png" alt="Table of Contents from “Because Internet”"/>
<p>The analysis is grounded in the formalisms of the author’s profession, academic linguistics. Nothing wrong with that.</p>
<p>Let’s look at a couple of her ideas, beginning with Chapter 1’s “Informal Writing”. A few of us, back in the late
Eighties, noticed that computers in general and the then-nascent Internet in particular were driving a writing
renaissance.</p>
<p>Before computers, a knowledge worker who had laboriously constructed essays in college quite likely wrote
almost nothing for the rest of their working life. People talked face-to-face or on the phone, and dictated to
secretaries. Written communication was seen as necessarily formal and disjoint from the way we spoke, or that we wrote in
personal correspondence. Then, suddenly, everyone was sitting at a keyboard only seconds away from everyone else’s screen.
McCulloch goes deep on this:</p>
<blockquote>
<p>In the future, the era of writing between the invention of the printing press and the internet may come to be
seen as an anomaly—an era when there arose a significant gap between how easy it was to be a writer versus a reader. An era when
we collectively stopped paying attention to the informal, unedited side of writing and let typography become static and
disembodied.</p>
<p>The internet didn’t create informal writing, but it did make it more common, changing some of our previously spoken
interactions into near-real-time text exchanges.</p>
</blockquote>
<p>From which all of this follows. It feels like a central insight. I suppose you could argue that centrality of informal text
is fading in the face of short-form video. Maybe,
it’s too soon to tell.</p>
<p>Then consider chapter 5, about emojis. Linguists obviously need to think about them because now they’re an
integral part of written language. McCulloch’s insight is that they correspond almost exactly to gestures, the way we use
our hands to add force to our speech. Obviously, for example, “👍”. Or when you’re talking about something completely
loopy and you twirl your index finger by your ear? You meant “🤪”.</p>
<p>I offer the emoji story for flavor, an example of a linguist’s approach to what we’re doing to our language with our
networks.</p>
<p>
McCulloch has lots more of this stuff.
I enjoyed
<cite>Because Internet</cite>
a lot, partly because I’m old and my memories stretch back to those BBS and
IRC days and I had a front-row seat for the decades of linguistic seething and heaving. And also because I’m a
<a href="https://www.rfc-editor.org/rfc/rfc9839.html">Unicode geek</a>
.
</p>
<h2 id="p-2">Algospeak (2025)</h2>
<p>The subtitle is “How Social Media Is Transforming the Future of Language”. OK, but…
Social media is a fertile field for language evolution. Thing is, corporate social media discourse
lives in the dire grip of the proprietors’ algorithms. And that’s where Adam Aleksic focuses. He treats all of them
as a single opaque object, “The Algorithm”, which I think is fair because they all are designed with one goal: To
maximize the effectiveness of human conversation at generating advertising revenue.</p>
<p>First, the Table of Contents.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/AS-toc.png" alt="Table of Contents from “Algospeak"/>
<p>Aleksic knows whereof he speaks: As “Etymology Nerd”, his aggregate following across TikTok, Instagram, and YouTube is
over three million. He’s all about cool bits and pieces of
linguistics, often Internet-specific usages.
If I had the patience for podcasts I suppose his would be near the top of my list.</p>
<p>
He really enjoys his work and has fun talking about some of Social Media’s more colorful linguistic extrusions; check
that Table of Contents. I’m kind of old and I learned a lot about the words and emojis younger folk emit, and I think most folks,
even those just out of their teens, would too. I’m on a Discord for a
<a href="/ongoing/What/Sports/Soccer/">Major League Soccer</a>
team’s fans, and while it’s totally all-ages, I can say I am regularly
less mystified than I was before I read
<cite>Algospeak</cite>
.
For example, now I know what it means when someone tosses “💀” into a chat. Do you?
</p>
<p>
Aleksic isn’t averse to a little history himself. Looking back over the successive online-jargon volcanoes, he argues
convincingly that two stand out as extra productive. First of all, the short-lived (but hot stuff at the time)
<a href="https://en.wikipedia.org/wiki/Vine_(service)">Vine</a>
video platform. Second, the incel cesspool; sad but
(apparently) true.
</p>
<h2 id="p-3">The Algorithm</h2>
<p>Remember, it’s all about what advertisers want. And wow, do they ever want a lot of things. I’ll just touch on a few of
Aleksic’s points.</p>
<p>First of all, they don’t want to find themselves next to downers. So if you want to talk about death or suicide or rape or
racism or rage,
you need to fool The Algorithm. Thus “unalive” and many other dodges. Of course, The Algorithm learns about them so you
have to keep dodging. Neither side of this struggle can stay ahead for long.</p>
<p>Here’s another thing I didn’t know: Apparently written Chinese is particularly rich in techniques for euphemizing, making it
easier for users of that language to evade, for a time, The Algorithm.</p>
<h2 id="p-4">Partitioning people</h2>
<p>Another big thing The Algorithm likes is grouping people into smaller and smaller baskets based on interests, generations,
and many other criteria. This is because advertisers can aim very specific campaigns at just exactly the right cohort of people who
are likely to buy what they’re selling. Here’s a quote; See how the language fills in behind advertisers’ pressure?</p>
<blockquote>
<p>
It doesn’t matter how much I label myself. If I’m a demisexual goblincore Gen
Z Swiftie, I guarantee there are still others like me. The only thing these labels really change about me is that they make me
easier to classify and market to. Ironically, true individuality may come out of a
<em>lack</em>
of labels and stories, because
there’s greater freedom of expression with a blank slate. If everybody’s the “main character,” then nobody is.
</p>
</blockquote>
<p>
<cite>Algospeak</cite>
, unlike
<cite>Because Internet</cite>
, doesn’t limit itself to written language. One of its most
compelling studies concerns the vocal techniques of podcasters and YouTubers. The finding is simple: It’s hard to build and hold an
audience for your show unless you sound like MrBeast. No, really.
</p>
<p>
Anyhow, they’re both good books.
<cite>Because Internet</cite>
educated and entertained me.
<cite>Algospeak</cite>
is way
more intense, intentionally more like the subject it addresses. Also it made me angry. I am a lover of human language and of its
patterns of growth and mutation and simplification and complexification. Linguistics is one of the disciplines I regret not
having chosen.
</p>
<p>Aleksic makes it clear that there’s an amusing narrative about how the people living and speaking in the shade of the Algorithm
can never defeat it, but they can still manage to get their messages across. But they shouldn’t have to struggle!</p>
<p>In fact, a few million of us have found a place to talk to each other that isn’t in The
Algorithm’s shadow: Decentralized social media. Specifically the Fediverse (what people mean when they say “Mastodon”) and maybe
the ATmosphere (same for “Bluesky”).</p>
<p>I want to see how language grows in a place where new forms arrive when they’re needed, to say new things that need to be
said. Not to either serve or resist The Algorithm.</p>
</div>
</content>
</entry>
<entry>
<title>Kansas and AI</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI"/>
<link rel="replies" thr:count="2" type="application/xhtml+xml" href="/ongoing/When/202x/2026/02/27/Kansas-and-GenAI#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI</id>
<published>2026-02-27T12:00:00-08:00</published>
<updated>2026-02-27T16:06:19-08:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/AI"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="AI"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud. Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural changes.” Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud.
Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural
changes.”
Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010.</p>
<h2 id="p-1">The Kansas Experiment</h2>
<p>As long as I can remember, a certain class of right-wing evangelists has preached that cutting taxes would stimulate business
growth and everyone would come out ahead. There are a couple of problems with this theory. First, mainstream economists
almost universally think it’s just wrong. Second, most of the people pushing it are rich and would
benefit from the cuts.</p>
<p>
Anyhow, in 2010 US Senator Sam Brownback won the race for governor of Kansas on what was then called the “Tea Party” program:
Prosperity through tax cuts. Tea-party Republicans also won a large majority in the state legislature. Unsurprisingly they
immediately
<a href="https://en.wikipedia.org/wiki/Kansas_experiment">did what they said they were going to do</a>
: Slashed a wide variety
of taxes, some to zero.
</p>
<p>The predicted prosperity failed to happen. The state government’s revenue plunged and it had to dig deep into rainy-day
reserves just to keep the doors open. There were brutal cuts to policing, road repair, and schools. Also a nasty
feedback loop: As the state’s fiscal position worsened, its credit rating fell and interest rates rose, leading to yet more
brutal austerity measures.</p>
<p>Another result was that affluent Kansans made out like bandits; the cost of running the state was substantially
transferred to the less financially fortunate.</p>
<p>In 2017, the legislature threw in their cards and repealed the tax cuts, overriding Brownback’s veto.</p>
<p>While this was a terrible experience for most Kansans, it is historically useful, because whenever you encounter a
tax-cut nut (probably self-interestedly wealthy) you can say “But, Kansas!” Having said that, there are still plenty of
those nuts, and they’ll tell you that the Kansas experiment failed because of one fine-tuning effort or another. That’s a position
that’s hard to defend, though.</p>
<h2 id="p-3">Sidebar: Trans oppression too</h2>
<blockquote>
<p>
Before I move onto the AI angle, I gotta pause to acknowledge this week’s news story about the Kansas
government’s vicious, brutal, and ignorant
<a href="https://www.theguardian.com/us-news/2026/feb/26/kansas-trans-drivers-license-law-assault-on-rights">assault on trans
people</a>
. To be clear, I think the shitty people who hate trans folk are aren’t necessarily the same shitty people as the shitty
people who don’t want to contribute to the public good. But, something about Kansas seems to attract both
flavors.
</p>
</blockquote>
<h2 id="p-2">The GenAI experiment</h2>
<p>The core value proposition of contemporary AI technology is exactly what Dorsey seems to think: Fire half your
employees and profits will soar! If that’s true, the trillion dollars or so invested so far will seem like small potatoes. Since
we don’t know if
this will actually work, anyone who actually does it is conducting an experiment. Just like Sam Brownback did.
Unsurprisingly, the investor class loves this experiment and is putting their money on it working.</p>
<p>
To be fair, voices have been raised to argue that the tech sector is a special case: That following on
feverish over-hiring during the Covid lockdown, they need to slash headcount anyhow, and are using AI as an excuse.
For example
<a href="https://daringfireball.net/linked/2026/02/27/block-layoffs">John Gruber</a>
.
</p>
<p>I personally
am unconvinced, but even if they’re right, it’s irrelevant. The shareholding class won’t be able to see past that 24% payoff. So
as of today, they’ll be yelling at every CEO on the planet to start pulling the mass-firing trigger. Or else.</p>
<p>I think I know how the experiment will turn out. Just like in Kansas, it’s not going to be fun.</p>
</div>
</content>
</entry>
<entry>
<title>Crocuses of 2026</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026"/>
<link rel="replies" thr:count="0" type="application/xhtml+xml" href="/ongoing/When/202x/2026/02/24/Crocuses-of-2026#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026</id>
<published>2026-02-24T12:00:00-08:00</published>
<updated>2026-02-26T13:46:17-08:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts/Photos"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Arts"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Photos"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth in early 2003. Except for last year. Because <a href="/ongoing/When/202x/2025/02/28/Moved">we moved</a> and the new place didn’t have any. Only now it does, and they’re (just barely) up. <i>[Update: Up and open, too.]</i></div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth
in early 2003. Except for last year. Because
<a href="/ongoing/When/202x/2025/02/28/Moved">we moved</a>
and the new place didn’t have any. Only now it does, and they’re
(just barely) up.
<i>[Update: Up and open, too.]</i>
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56234.png" alt="Crocuses of February 2026"/>
<p>
Long-time followers may note that they’re pale and fragile compared to the exuberant blossoms of previous
years. Not sure why, but our new place faces north and there’s this enormous
<a href="https://en.wikipedia.org/wiki/Fraxinus_americana">White Ash</a>
tree right in front of it, so they’re not getting as
much sun as at the south-facing former joint.
</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56235.png" alt="Crocuses of February 2026"/>
<p>And also this is their first spring. We bought the bulbs and hired a professional with the right tools to jam them
into the earth last autumn, between the big tree’s roots. So they really haven’t had a chance to get their own root systems going.</p>
<p>And finally, it really is the first day that’s bright and warm enough to get out the camera. Maybe they’ll
be better in another few days. And quite likely next Spring.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56244.png" alt="Crocuses of February 2026"/>
<p>This would be the place to introduce whatever metaphor this year’s blossoms, fighting their way through the leaf cover in
chilly air toward the sun, fit into, but I’m not gonna.</p>
<p>
I, like many, am
<a href="/ongoing/When/202x/2023/10/25/Wild-World">not dealing very well</a>
with what I see when I look at the world in either
the big or the ultra-local landscapes.
The world in tough shape and its worst people are making it worse.
People I love are in ugly corners and not finding help.
</p>
<p>But you know, the flowers, in their low-key way, look great and so does the tree, still in wintersleep. Today the
sun was shining on them. It’ll be warmer and nicer soon.</p>
<p>Metaphors can go to hell. It’s just late-winter light on pale violet petals. Enjoy the moments you have with it.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56249.png" alt="Spring crocus, now open for business"/>
<div class="caption">
<p>Update: Now open for business.</p>
</div>
</div>
</content>
</entry>
<entry>
<title>Open Source and GenAI?</title>
<link href="https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion"/>
<link rel="replies" thr:count="2" type="application/xhtml+xml" href="/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion#comments"/>
<id>https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion</id>
<published>2026-02-16T12:00:00-08:00</published>
<updated>2026-02-18T13:41:14-08:00</updated>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology/AI"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="Technology"/>
<category scheme="https://www.tbray.org/ongoing/What/" term="AI"/>
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">I’ve been puttering away on my <a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina</a> project since 2023. In the last few weeks GenAI has intervened. <a href="/ongoing/When/202x/2026/02/06/Q-Plus-C-Ch1">Quamina + Claude, Case 1</a> describes a series of Claude-generated human-curated PRs, most of which I’ve now approved and merged. <a href="/ongoing/When/202x/2026/02/14/Q-Plus-C-Ch2">Quamina + Claude, Case 2</a> considers <a href="https://github.com/baldawarishi/quamina-rs">quamina-rs</a>, a largely-Claude-driven port from Go to Rust. Both of these stories seem to have happy endings and negligible downsides. So empirically, I <em>can</em> apply LLM technology usefully to software development. But should I?</div>
</summary>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
I’ve been puttering away on my
<a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina</a>
project since 2023. In the last few weeks GenAI
has intervened.
<a href="/ongoing/When/202x/2026/02/06/Q-Plus-C-Ch1">Quamina + Claude, Case 1</a>
describes a series of
Claude-generated human-curated PRs, most of which I’ve now approved and merged.
<a href="/ongoing/When/202x/2026/02/14/Q-Plus-C-Ch2">Quamina + Claude, Case 2</a>
considers
<a href="https://github.com/baldawarishi/quamina-rs">quamina-rs</a>
, a largely-Claude-driven port from Go to Rust.
Both of these stories seem to have happy endings and negligible downsides. So empirically, I
<em>can</em>
apply LLM
technology usefully to software development. But should I?
</p>
<h2 id="p-3">Conclusions 1: Burn it with fire?</h2>
<p>
Let me be clear: In the big GenAI picture, I’m a contra. Why? I’ll pass the mike to Baldur Bjarnason, my
favorite among GenAI’s blood enemies.:
<a href="https://www.baldurbjarnason.com/notes/2026/note-on-debating-llm-fans/">“AI” is a dick move</a>
.
His tl;dr is something like “GenAI is environmentally devastating and has the goal of throwing millions of
knowledge workers onto the street and is being sold by the worst people and is used for horrible applications and will increase
society’s already-intolerable level of inequality!” To which I reply “Yes, yes, yes, yes, and yes.”
</p>
<p>At the end of the day, the business goal of GenAI is to boost monopolist profits by eliminating decent jobs, and
damn the consequences. This is a horrifying prospect (although I’m somewhat comforted by my belief that it basically won’t
work and most of the investment capital is heading straight down the toilet).</p>
<p>But. All that granted, there’s a plausible case, specifically in software development, for exempting LLMs from this
loathing.</p>
<p>
First of all, size.
<a href="https://www.jetbrains.com/lp/devecosystem-data-playground/#global_population">JetBrains thinks</a>
that
the world has 21 million or so software developers, i.e. less than 1% of the earth’s working population.
Vanishingly small in the context of the lunatic tsumani of LLM overinvestment.
Training and operating the models required for a market this small is
rounding error measured on the Great GenAI Overbuild scale. There aren’t enough geeks to create a detectable bump in the global
carbon load.
</p>
<p>
Another odious aspect of LLMs is
<a href="https://en.wikipedia.org/wiki/Reinforcement_learning_from_human_feedback">RLHF</a>
, “Reinforcement Learning From Human
Feedback”, which relies on underpaying Third-Worlders to
polish the models’ outputs.
My guess is that much less is required for code-oriented LLMs.
The combination of the compiler and your unit tests provide good starter guardrails. Then skilled
professional intervention is required to deal with the remaining misfires, as with those Quamina PRs.
</p>
<p>Finally, it seems making billionaires into multibillionaires is intrinsic to GenAI dreams. But software-development tools won’t
do that. Once again, the market is just too small. But even if it weren’t, consider this from Steve Yegge:</p>
<blockquote>
<p>
For
<a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">this blog post</a>
, “Claude Code” means “Claude Code and
all its identical-looking competitors”, i.e. Codex,
Gemini CLI, Amp, Amazon Q-developer ClI, blah blah, because that’s what they are. Clones.
</p>
</blockquote>
<p>(GenAI, overbuilding wherever you look.) None of these products have moats and the chance that any of them become
extractive monopolies is about zilch. Nobody’s ever built a major cash-cow on developer tooling</p>
<p>One reason is (*gasp*) Open Source. Does anybody doubt that in the near future, there will
be entirely open-source versions of what Yegge means by “Claude”?</p>
<p>So, if you want to condemn the use of GenAI in software development, I think you need arguments other than the fact that
it’s also being promoted for societally-toxic business purposes.</p>
<p>I have a few. But stand by, let me push that on the stack and turn to
technology for a bit.</p>
<h2 id="p-4">Conclusions 2: Engineering sanity?</h2>
<p>Question: Can LLMs even participate in quality software engineering?
Baldur doesn’t think so: “The gigantic, impossible to review, pull requests. Commits that are
all over the place. Tests that don’t test anything. Dependencies that import literal malware. Undergraduate-level security
issues. Incredibly verbose documentation completely disconnected from reality.”</p>
<p>I’m not saying that these pathologies can’t or don’t happen. But in my personal experience with Quamina, they
didn’t. (Mind you, it’s a hobby project.)</p>
<p>And when they do happen, I would assume that mature open-source projects will use a network of
trust, as big operations like Linux already do. PRs that don’t have the imprimatur of someone known to be clueful will be ignored.
When I saw the first of those incoming Quamina PRs, I took the time for a serious look because I knew Rob and had seen evidence that he
was technically competent. If I see an incoming PR that’s nontrivial and from some rando and doesn’t pass a 120-second sanity
check, it’s unlikely to get any more attention.</p>
<p>In fact, some essentials don’t change. If you’re not requiring that PRs be clean and
test coverage be good and code reviews not be skipped and dependencies be curated, you’re going to get a lousy result whether
the upstream code is coming from a human or an LLM.</p>
<p>But it’d be naive to think that a big change in the
shape of that upstream isn’t going to affect the profession.</p>
<h2 id="p-9">Bottlenecks</h2>
<p>Speaking from personal experience, reviewing the PRs from Claude&Rob was neither faster nor slower, easier nor harder,
than what I’m used to pre-GenAI. The number of my disagreements with the diffs, and the amount of arguing it took to resolve
them, was also about as usual.
Which creates a big problem. Because if we can generate code a whole lot faster but review doesn’t
speed up, all we’ve done is moved the bottleneck in the system.</p>
<p>
Speaking of which, Armin Ronacher offers
<a href="https://lucumr.pocoo.org/2026/2/13/the-final-bottleneck/">The Final Bottleneck</a>
, from which: “When one part of the
pipeline becomes dramatically faster, you need to throttle input.” Think about that.
</p>
<h2 id="p-10">Burnout</h2>
<p>
Meanwhile, evidence is piling up that LLM-based software development is driving
developers to overwork and burnout. Here’s
<a href="https://hbr.org/2026/02/ai-doesnt-reduce-work-it-intensifies-it">a cool-eyed take</a>
from
<cite>Harvard Business
Review</cite>
. Then there’s Steve Yegge’s frantic, overly-long
<a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">The AI Vampire</a>
. But my favorite, and I think a
must-read, is Siddhant Khare’s
<a href="https://siddhantkhare.com/writing/ai-fatigue-is-real">AI fatigue is real and nobody talks about it</a>
.
From which: “AI reduces the cost of production but increases the cost of coordination, review, and decision-making. And those
costs fall entirely on the human.”
</p>
<p>
The argument we’re hearing is that GenAI makes development more efficient. And more efficient is better.
<a href="https://www.tbray.org/ongoing/When/202x/2020/07/05/Too-Efficient">Until it’s not</a>
.
</p>
<p>
I’m not sure the profession I joined last century would attract me today. And on Mastodon,
<a href="https://cosocial.ca/@gordwait/116082229876399512">@GordWait said</a>
“At our office, we are
noticing a huge drop in Comp Sci co-op applications. The next generation is convinced there’s no future in programming thanks to
AI hype.”
</p>
<h2 id="p-11">Can and should</h2>
<p>
Here’s another conundrum. Suppose we
<em>can</em>
build a whole lot more stuff, faster.
<em>Should</em>
we? I don’t know about you,
but I am regularly enraged at tools that work just fine popping up “wonderful new features” modals in front of what I’m
trying to get accomplished. Also at damaging UI churn, driven by product managers trying to get promoted. It’s
just not obvious
that speeding up software development is, in the big picture, a good thing.
</p>
<p>And I can’t help noting that every attempt to measure the productivity boost due to GenAI has shown zero (or worse)
improvement. Of course, Claude’s cheering section will point out that those studies date to 2024 which is the stone age. Maybe
they’re right.</p>
<h2 id="p-8">Vampires</h2>
<p>
(In which I once again go all
<a href="/ongoing/When/202x/2023/01/16/Class-Reductionism">class-reductionist</a>
.) The real problem here is late-stage
capitalism, and I think is best addressed in Yegge’s
<cite>AI Vampires</cite>
piece, from which I quote:
“…dollar-signs appear in their
<i>[employers’]</i>
eyeballs, like cartoon bosses. I know that look. There’s no reasoning with
the dollar-eyeball stare.” Yeah.
</p>
<p>
Thus the ancient question:
<i>cui bono?</i>
Assuming GenAI genuinely boosts productivity, who gets the
benefits? Because the ownership class sure doesn’t think they should go to their newly-more-efficient employees.
</p>
<h2 id="p-7">But, what do I know?</h2>
<p>
I know that you gotta have test coverage or your software is an unmaintainable tangle of festering tech debt. I know you gotta
have code review or your quality is on inexorable downhill drift. I
<em>don’t</em>
know how to build LLMs into a sane,
sustainable software engineering culture. Nor what to do
about capitalism’s AI Vampires.
</p>
<p>
And I absolutely do
<em>not</em>
believe the wild-eyed claims of 10× productivity gains, assuming we demand (as we should) that
they’re sustainable at scale.
</p>
<p>
So, would I advise executives to tell software engineering shops to discard their
culture in favor of vibe coding in the expectation of monstrous productivity wins? Nope.
<a href="https://simonwillison.net/2025/Oct/7/vibe-engineering/">Vibe engineering</a>
, maybe.
<a href="https://locusmag.com/feature/commentary-cory-doctorow-reverse-centaurs/">Centaurs, not reverse centaurs</a>
? Indeed.
</p>
<p>But would I say “Stay away, don’t even look”? Nope. I’d probably suggest pointing the LLM at well-delimited non-strategic
issues and
optimizations, and emphasize no shortcuts on reviewing or CI/CD standards.</p>
<p>
Also note that the GenAI apostles are at one in saying that this year’s tools are
<em>so</em>
much better than last year’s,
and next year’s are guaranteed to be qualitatively still better! So why would you rush in and risk getting locked into
soon-to-be-outmoded tooling?
</p>
<p>Rob Sayre wrote “I would never bother to type out these patches by hand. But I read them all.” I probably wouldn’t have
either and I read them too. And now Quamina is roughly twice as fast. Which is to say, I got good results on a hobby
project. That’s not nothing.</p>
<p>
But, also not conclusive.
Once the AI bubble pops and we’ve recovered from the systemic damage, I think there’ll
<em>probably</em>
be a place for
open-source LLM automation in developer toolkits.
</p>
<p>But maybe not. Wouldn’t surprise me much, either way.</p>
</div>
</content>
</entry>
</feed>
Raw text
<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns='http://www.w3.org/2005/Atom'
xmlns:thr='http://purl.org/syndication/thread/1.0'
xml:lang='en-us'>
<title>ongoing by Tim Bray</title>
<link rel='hub' href='http://pubsubhubbub.appspot.com/' />
<id>https://www.tbray.org/ongoing/</id>
<link href='https://www.tbray.org/ongoing/' />
<link rel='self' href='https://www.tbray.org/ongoing/ongoing.atom' />
<link rel='replies' thr:count='101' href='https://www.tbray.org/ongoing/comments.atom' />
<logo>rsslogo.jpg</logo>
<icon>/favicon.ico</icon>
<updated>2026-07-29T10:22:05-07:00</updated>
<author><name>Tim Bray</name></author>
<subtitle>ongoing fragmented essay by Tim Bray</subtitle>
<rights>All content written by Tim Bray and photos by Tim Bray Copyright Tim Bray, some rights reserved, see /ongoing/misc/Copyright</rights>
<generator uri='/misc/Colophon'>Generated from XML source code using Perl, Expat, Emacs, Mysql, Ruby, and ImageMagick. Industrial-strength technology, baby.</generator>
<entry>
<title>Six Summer Days of Music</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp' />
<link rel='replies' thr:count='2' type='application/xhtml+xml' href='/ongoing/When/202x/2026/07/26/Music-Camp#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp</id>
<published>2026-07-26T12:00:00-07:00</published>
<updated>2026-07-28T13:11:40-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts/Music' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Music' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced “Wickams”. My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female, worrying about mental fitness, and having time available to invest as you please rather than as you must</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced
“Wickams”.
My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one
near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female,
worrying about mental fitness, and having time available to invest as you please rather than as you must.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/camp-booklet-cover.png" alt="Cover of the WCAMS 2026 camp booklet" />
<h2 id='p-1'>The facts</h2>
<p>250 attendees, a couple of dozen faculty (all professional musicians), a lovely waterfront venue at a swanky
boarding school campus in an
<a href="https://en.wikipedia.org/wiki/Mill_Bay,_British_Columbia">isolated small town</a>.
The picture above is the cover of the
<a href="https://www.wcams.ca/PDFs/CAMP%20BOOKLET%202026.pdf">camp booklet</a>.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260719_184302214.png" alt="View from the Malahat highway to Mill Bay" />
<div class='caption'><p>On the way to the camp.</p></div>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260720_015242804.png" alt="well-manicured lawns stretch down to the Pacific" />
<div class='caption'><p>This space, while the camp is running,<br/>usually contains at least one person<br/> or group emitting
music.</p></div>
<p>Let me should expand on that list above.</p>
<ol>
<li><p>If you love music, there are multiple concerts per day, some quickies by whoever wants to between sessions, some highly
polished offerings from the faculty. They all offer
<a href="/ongoing/When/202x/2026/03/16/Pure-Sound-Please">pure sound</a>; unamplified and in music-friendly spaces. The volume
and balance and tone are achieved by the performers’ technique and love, nothing is digitized or amplified.</p>
<p>Then there are the concerts you’ll be practicing for and playing in.</p></li>
<li><p>The most common hair color was gray. I mean, there were kids and teens and thirtysomethings, but I’d say
more than half the
people were at least semi-retired. Not sure why, but it may have to do with retirees having spare time and
no childcare duties, and music having been more widely taught back when us Olds were kids, and the price, $1300 Canadian
(about a thousand US) per person, bed and board and music all-in. The venue was a private boarding school, thus “bed and board” was
of a school-dorm standard, clean and complete but very basic.</p>
<p>There were attendees who were unsteady on their feet and needed a golf-cart to get around and help on the stairs, but they
could still play the hell out of their fiddle or trombone or whatever.</p></li>
<li><p>The place was a matriarchy. My small string ensemble had three men and ten women, my cello seminar eight and two.
Don’t have a glib explanation except that music teachers were plentiful, and women are over-represented in the teaching
professions. So, it’s a space where (I’m guessing of course) women are less likely to feel crowded out
or bossed around.</p></li>
<li><p>As for mental fitness while aging, the research is in and it’s not subtle. Music, both listening and performing, is
good for your mind/brain generally, and specifically
<a href="https://www.monash.edu/medicine/news/latest/2025-articles/music-can-stave-off-dementia-by-up-to-40-per-cent,-monash-study-finds">reduces
the risk of dementia</a>.</p></li>
</ol>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260723_164158227.png" alt="A woman is towing a large horn behind her in a small cart" />
<div class='caption'><p>For privacy reasons, we were all asked not to share photos from the camp in public, but I think this
one is safe.</p></div>
<h2 id='p-4'>The music</h2>
<p>I found the choice of tunes contrarian; did not hear a single Mozart chestnut.
I think this works because everyone at the place is musically literate and many are erudite; they’ve heard enough Mozart
classics.
Let me sort the choices.
One basket: Works written in the
attendees’ lifetimes, including a lot of female composers and Canadian stuff. Another: Oddments from the back pages of the usual
titans, for example Beethoven’s
<a href="https://en.wikipedia.org/wiki/Septet_(Beethoven)">Septet</a> (his first big hit, he came to hate it), and
the graceful but weird second movement of Stravinsky’s
<a href="https://en.wikipedia.org/wiki/Concerto_in_D_(Stravinsky)">Concerto in D</a>.
Another: Popular-music classics arranged for acoustic instruments. I heard (and will have more to say about) <cite>Bohemian
Rhapsody</cite> for woodwind quintet, Cohen’s <cite>Hallelujah</cite> for seven violas, and the Cowboy Junkies’ <cite>Cold Tea
Blues</cite> for four female voices and ukulele.</p>
<p>The big final choir-and-orchestra blowout, with 110 people on stage, was
<a href="https://en.wikipedia.org/wiki/Schicksalslied">Brahms’ <cite>Schicksalslied</cite></a>, which I bet almost none of the people
reading this have ever heard of (I hadn’t).</p>
<p>And also Bach. Because of course.</p>
<h2 id='p-6'>How it works</h2>
<p>You join as many ensembles as you care to. Most people will find themselves in one chamber group or another, an orchestra or choir,
and some sideline track like for instance, Early Music, Celtic, or Vocal Jazz. The organizers try to get the music mailed out a
few weeks before the camp, but some lags and some only arrives when you hit the first session on Monday. You get five hours
of rehearsal and then you perform it on Friday night or Saturday.</p>
<p>Obviously this calls for quite a bit of practice; there’s plenty of space for that. As you walk from wherever to wherever
around the joint, you always hear the call of some instrument or voice, often running repeatedly through a tricky bit.
Noobs join as many groups as they can fit in the schedule.
Veterans have learned to dial it back a bit; I took their advice, signed up for only five tracks and performed only twice.</p>
<p>All this is a pretty fucking intense experience, let me tell you. And here’s what I’ll take away: The radiant and heartfelt
smile on the face of nearly every musician when they finish their performance. And
basically every piece gets thunderous applause, with hollering. Usually but not always deserved.</p>
<h2 id='p-2'>My adventure</h2>
<p>I am not particularly gifted at music. I’m old and have pursued the cello on and off since I was a kid, with much more off
than on and multiple no-cello decades.
What happened was, my wife Lauren is a gifted singer with a powerful soprano who enjoys participating in choral music. Her
choir buddies have been encouraging her to come to WCAMS for years. I wanted to support her and it sounded like fun, so I ended a
25-year gap and started cello lessons again last October. It’s been painful clawing my way back toward my previous level of
skill, which was never that great. But WCAMS makes it clear that beginners are welcome, will be encouraged and
supported. So we signed up.</p>
<p>Anyhow, my cello skills were solidly in the bottom quartile of the couple of dozen cellists in attendance. Which was humbling
but not a problem actually, because of that encouragement and support I just mentioned.</p>
<p>But during that 25-year cello gap I took up the study of West-African and Afro-Cuban drumming, with weekly lessons, and
then for the last year or so, regular participation in a multi-hour by-invitation-only weekly drum jam. Judging one’s own
talents is tough, but I seem to get musically further with less work on the drumming side. I even get the occasional spontaneous compliment
that isn’t just politeness; something that has rarely-to-never happened in my cello career. So I see drums as my primary musical
hobby.</p>
<p>But WCAMS doesn’t have an African-music group; thus my cello lessons. Then when we got the initial program I spotted
the Celtic track, and I know that music comes with drums.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/26/Bodhran.png" alt="A basic bodhrán" class="inline" />
<p>So, without asking anyone whether it was a good idea, the week before
the camp I rented a
<a href="https://en.wikipedia.org/wiki/Bodhrán">bodhrán</a>. It came with a “how to play” DVD that I watched all of, then I went
and typed “bodhrán practice music” into YouTube and of course there’s plenty. After a few hours I was
confident that I could keep up if they didn’t go too fast (they didn’t).
It’s pretty easy to play even though the actual strike-the-drum
motion is eccentric, unlike any other percussion instrument of my acquaintance.</p>
<p>I should mention that “bodhrán” is pronounced with the “dh” silent, “bo” as in “bother” and “rán” as in “roan”.</p>
<p>At the opening-night gathering, I tracked down Amy, the Celtic-track leader, and asked if it would be OK if I
showed up with the drum. She was welcoming (<em>everyone</em> at WCAMS seems permanently welcoming).
When we struck up the first tune at the beginning of our Monday gathering, she looked a little nervous but when I joined in
she nodded emphatically; it turned out the last time a fresh face equipped with a bodhrán had turned up, they couldn’t actually
find or stay with the beat.</p>
<p>Anyhow, I joined Amy’s Beginner and Advanced classes, learned a whole lot about Celtic music (starting from
zero helps), and had more fun than ought to be legal. Got unsolicited compliments.
Our performance was at the wind-up party after
the big final Brahmstravaganza, and the crowd yelled and whistled, dancing broke out. I was full of
joy<span class='dashes'> —</span> I think the whole band was. I’ll never forget it.</p>
<h2 id='p-7'>Musical take-aways</h2>
<p>Here are the ones that I can still hear when I think back on them.</p>
<p>The woodwind quintet (who came to camp together as a group) played <cite>Bohemian Rhapsody</cite> on that little waterfront
auditorium in the picture above. The arrangement was respectful and skilful and it highlighted what a wonderful, complex, piece
of music that is. 100% by Freddy Mercury, who we all think of as Queen’s muscle, but this is a masterpiece by one of the last
century’s top composers, any genre.</p>
<p>Arvo Pärt’s <cite>Spiegel in Spiegel</cite> by faculty cellist
<a href="https://marinahasselberg.com">Marina Hasselberg</a> and percussion pro
<a href="https://www.rcmusic.com/teachers/g/greg-samek">Greg Samek</a>, the latter on vibraphone. Exquisite, the notes suspended
in space like rays of light.</p>
<p><cite>Krunk</cite>, an Armenian folk song full of tragedy, on solo flute. Impossible to keep your eyes dry.</p>
<p>A Ukrainian song, lyrics by Shevchenko (there are lots, not sure which) delivered by Eric Hominick, a great singer and
pianist who is about to retire from the West to East coast, and will be much missed.</p>
<p><a href="https://thesession.org/tunes/82">Pride of Petravore</a> is a hornpipe, the song that the awesome
<a href="https://www.amystephenmusic.com">Amy Stephen</a> used to launch the Celtic-music track. She projected the music on the
whiteboard but wouldn’t make a print-out, insisting that we learn it so that when we opened our set we’d be focused on the music
not the notes. It’s the song that Amy used to teach me I could get along on bodhrán.</p>
<p>I’ll be honest, I’ve always liked
Irish-traditional music, have even been lucky enough to hear it in its natural habitat, a rundown pub in a remote corner of
Ireland. But I’d never actually
<em>thought</em> about it much. Now I have, and it’s deeper and stranger than I’d imagined. I’m pretty sure I’ll be investing
time in it.</p>
<p>I really hope I get a chance to learn from Amy again, one way or another.</p>
<p><a href="https://www.didchoi.com">D.I.D. Choi</a> is a young Canadian composer who, in his twenties, is off in LA, working on
music for films and games and so on. His
<a href="https://www.didchoi.com/remembrance">Remembrance</a>, written in 2019, played by a wind ensemble,
created a cloud of music magic in the air over the stage. I found my eyes closed, better to take it in. I’m going to suggest if
you notice a concert anywhere near you with something by Choi, run don’t walk to the ticket booth.</p>
<p>I already mentioned the Cowboy Junkies’ <cite>Cold Tea Blues</cite> and it’s the one that hit me the hardest. The four
singers had lovely light voices, the ukulele swung gracefully, and they did a bit of gentle choreography. The harmonies were
fabulous. Anyone who’s heard this (and you can guess from the title) knows it’s not a happy song, but they shuffled
that under the
covers, casting a spell of light-hearted romance. Then when they planted the cruel razor sharp-hook at the end of the line of lyrics
they’d been dangling so invitingly, there were audible gasps and cries of sorrow from the crowd. Never experienced anything
like it.</p>
<h2 id='p-8'>Big band!</h2>
<p>I’m old, but this is the music my parents listened to. I’d always thought of it as boring fuddy-duddy stuff. That was,
until I got in a theater with good acoustics and a live 20-piece brass band. This stuff is loud and aggressive at a level that
approaches Rock&roll, the arrangements are better, and the tunes are strong.</p>
<p>The way it works is, the different horn sections hand the melody and chorus back and forth, never the same twice, then
somebody stands up and plays a solo, a pre-assigned number of bars. There was this one solo by a young trombonist that pretty
well melted my mind. I wonder if this stuff retains any commercial viability, as in, is there somewhere I can go out and see it?</p>
<h2 id='p-9'>Anyhow…</h2>
<p>Earlier today I bought the rental bodhrán, it’s a basic model and was pretty cheap. I think it’s full of happiness.</p>
</div></content></entry>
<entry>
<title>Sports and Truth</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports' />
<link rel='replies' thr:count='3' type='application/xhtml+xml' href='/ongoing/When/202x/2026/07/10/Summer-Sports#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports</id>
<published>2026-07-10T12:00:00-07:00</published>
<updated>2026-07-16T10:08:37-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Sports/Soccer' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Sports' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Soccer' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Sports/Baseball' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Baseball' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league baseball game. Took pictures and thought about enjoying this stuff</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league
baseball game. Took pictures and thought about enjoying this stuff.</p>
<h2 id='p-1'>“Haha, sportsball…</h2>
<p>I know that a whole lot of people, including not a few among my online audience, see neither joy nor virtue in fandom.
That’s an attitude they’re entitled to have assuming they realize the absence of joy is a them thing.</p>
<p>After joy there’s virtue. Yes, organized professional sport raises serious ethical issues. That’s putting
it politely. Many-to-most branches of commercial sport are rife with exploitation, oppression, and corruption. I’m not going to
push back, and in fact I sometimes feel guilty about enjoying the spectacle as much as I do.</p>
<p>More to come on that.</p>
<h2 id='p-2'>On hating FIFA</h2>
<p>I’m not going to re-tell the tales of galaxy-scale corruption, the ostentatious displays of wealth and privilege,
and the cozying-up to dictators, both real and wannabe. Attending the 2026 World Cup gave me more reasons to
hate; in particular the ticket-buying experience.</p>
<p>I have always loved fútbol generally and the World Cup in particular, as witness the
<a href="/ongoing/What/Sports/Soccer/">plentiful digital ink</a> I’ve spilled on the subject here on the blog. So when we
learned that there were going to be games in Vancouver, I determined that I’d attend one. It was obvious they’d be
popular so I decided to pounce on the first opportunity. Which is how I ended up buying (no, really) an NFT.</p>
<p>FIFA’s first round of sales wasn’t tickets, but NFTs, some of which came in packages that included a right to buy tickets for
a game, participants unknown.
<a href="https://collect.fifa.com/collectible/427320121710592">Here</a><span class='dashes'> —</span> the first and
I fervently hope the last time I link to an NFT<span class='dashes'> —</span> is part of the
package. Can’t show you the right-to-buy NFT because I had to “burn it” to turn it into tickets.</p>
<p>Neither the NFT nor the tickets were cheap; my son and I attending that game cost well over a thousand
(Canadian) bucks. (At this point, other attendees are scoffing at me for having paid so little.)
For what it’s worth, the seats were good.</p>
<p>And let’s further enhance our basket of reasons to hate FIFA by noting that the ticket prices exclude everyone who’s not
a member of a very privileged demographic.</p>
<h2 id='p-3'>The match</h2>
<p>It was
<a href="https://www.fifa.com/en/match-centre/match/17/285023/289273/400021480">Egypt vs New Zealand</a>, played at Vancouver’s
“BC Place” stadium on June 21st.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_005115695.png" alt="Preparation for Egypt vs New Zealand at the 2026 World Cup" />
<div class='caption'><p>The march-in ceremonies.</p></div>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_010008011.png" alt="New Zealand kicks off vs Egypt at the 2026 World Cup" />
<div class='caption'><p>New Zealand kicks off.</p></div>
<p>Confession: My son and I had a blast, can’t think of it without smiling. Most of downtown Vancouver had become a swirl of
happiness, people dressed up in all sorts of fanciful outfits, singing, chanting, drinking, dancing, photographing. I
particularly liked the pharaoh’s-headdress the Egypt fans were wearing.</p>
<p>The game was great fun<span class='dashes'> —</span> <a href="https://www.fifa.com/en/watch/30AjAOgeWPeCcjnTx6hdH0">watch
the highlights</a>. NZ played better than their international rating would suggest and we got to watch
<a href="https://en.wikipedia.org/wiki/Mohamed_Salah">Mo Salah</a> carve his way
into the defense and put away a lethal strike.</p>
<p>There were way more fans from Egypt than from NZ, but the Kiwis had better-organized cheering; they’ve figured out how to set the
syllables of “Aotearoa” to the <cite>Seven Nation Army</cite> riff, and does it ever sound great.</p>
<p>And, while FIFA are assholes, those assholes really know how to run a
tournament. They had sold out BC Place to the last seat, but never for a moment did I feel scarily crowded. I even managed
to grab a decent beer and sandwich at half-time without feeling crushed or catching Covid; it helped that I masked up.</p>
<p>I’ve watched a lot of the tournament on TV and enjoyed it. The games, to be frank, have become less and less
interesting as the idiosyncratic minor players (in particular the non-European ones) get eliminated by the better-funded Euros with
their crushingly-precise and often-boring game. It would’ve been nice if the final four included an outsider.</p>
<p>And if you can set that FIFA issue aside, at some level it’s a beautiful thing; nations competing against each other in a
framework built on raw aggression, physical virtuosity, disciplined teamwork, and kicking a ball around.</p>
<h2 id='p-7'>World Cup without FIFA?</h2>
<p>It could be done and it’d be politically popular. The nations of the world get together, dissolve FIFA on the evidence of its
many sins, and run the tourney on some sort of co-op basis. They could slash most of the ticket prices and
there’d still be buckets of money to go around to the national associations and some selected charities, based on the
sponsorships and TV rights. Some of it would go to peacekeeping and Doctors Without Borders.</p>
<p>I can dream.</p>
<h2 id='p-4'>The game</h2>
<p>(One says “football match” and “baseball game”. Sounds wrong the other way around. Yay English.)</p>
<p>It was my son’s birthday so nine of us went off to watch the
<a href="https://en.wikipedia.org/wiki/Vancouver_Canadians">Vancouver Canadians</a> host the
<a href="https://en.wikipedia.org/wiki/Eugene_Emeralds">Eugene Emeralds</a> in what’s called the “High-A” minor league.
Oh my goodness, you can actually watch
<a href="https://www.milb.com/live-stream-games/g819076">video of the whole game</a>. I don’t recommend it.
The tickets for nine, decent seats, cost $276 all in.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/10/TXT56290.png" alt="Vancouver Canadians vs Eugene Emeralds, July 1, 2026" />
<p>It was an OK game. Vancouver leapt to an early lead, then the pitching collapsed and the Emeralds got 12 runs; the home team
brought it back to within three by game’s end.</p>
<p>But, what a happy place! Kids everywhere, dressed in hot-dog condiments and pop stains. Snuggling couples. Beer
vendors. Hollering hosers.</p>
<p>Since, in baseball, nothing is happening most of the time, the emphasis is on chit-chat and eating and drinking and
people-watching. I noticed that when I wasn’t talking I was usually smiling.</p>
<p>This happened: My son’s partner, let’s call them “X”, is of East-Asian
extraction<span class='dashes'> —</span> a Richmond kid, for the Vancouver-savvy.
Born here, perfectly Canadian, but sports-oblivious and had never been to a ball game.
When the seventh-inning stretch came along, I tapped X’s shoulder and said “time to get up and sing”. The crowd charged lustily
into <cite>Take me out to the ball game</cite>, and X’s face got this absolutely hilarious I’m-on-an-alien-planet look.
Later, X told me “That’s the whitest thing I’ve ever seen.”</p>
<p>After the game, fireworks. They were pretty minor-league.</p>
<h2 id='p-5'>So MLB is OK?</h2>
<p>I have a bit of back story. While working at Sun and then for AWS, I helped MLB evaluate and use various
bits of Internet technology. Of all the world’s sports organizations, MLB is apparently the leader in using the Net to
promote and deliver their product. Plus the people I worked with were nice and highly competent. It was one of the highlights
of my career.</p>
<p>You will have noticed an absence of the sort of ranting that FIFA provoked above. Does this mean that the MLB
organization is honorable and nice? Not at all. They are a gaggle of billionaires
with <a href="https://en.wikipedia.org/wiki/Federal_Baseball_Club_v._National_League">an explicit grant</a> of monopoly
privileges in the USA.</p>
<p>The Vancouver Canadians are the only surviving minor-league team in Canada; MLB has shut down many minor-league teams because
while they make people happy they don’t make much money. Baseball is a big business and, just like any other big business
these days, often acts in ways that most people would consider unethical.</p>
<p>There’s what looks like a really good book about all this,
<a href="https://www.penguinrandomhouse.ca/books/719997/homestand-by-will-bardenwerper/9780385549653">Homestand:
Small Town Baseball and the Fight for the Soul of America</a> by Will Bardenwerper. I haven’t read it yet, but you can get the
gist in
<a href="https://walkingtheworld.substack.com/p/two-interviews-an-author-and-a-painter">this conversation</a> between
Bardenwerper and Chris Arnade.</p>
<h2 id='p-6'>The problem is…</h2>
<p>…not baseball, nor fútbol, it’s late-stage capitalism, which reliably makes anything it gets its hands on worse.
If we don’t like the way those guys behave, and in particular if
we think some of it should be illegal (it should!) that’s a political problem that has to be addressed with politics.
Feels like it would be a pretty popular party platform plank.</p>
<p>I’m not one who’ll preach “no ethical consumption under capitalism” at you, but I don’t have a good come-back when someone
challenges me on sending money to the FIFA or MLB scum. Is there anyone reading this who is entirely comfortable with all the
places and practices that bring them enjoyment?</p>
<h2 id='p-8'>The truth is on the field</h2>
<p>The worlds of business and politics never contain a sentence that’s unscripted or incautious. The substrate of
trust that a society needs to function is today weakened and still weakening. There’s a pervasive belief
that what’s on our screen is at least in part self-interested untruth or, put another way, marketing. I often think of this as
“The LinkedIn pathology”.</p>
<p>Not out on the field. When Mo Salah’s got the ball at his feet and charges at the NZ back line,
nobody in the world knows what’s going to happen in the next few seconds. When the Canadians’ pitcher walks in the fifth run of
the inning, nobody can tell which way his search for the strike zone will turn.</p>
<p>It’s unpackaged, unvarnished, and unedited. It’s physical truth, being created in real time.</p>
<p>Put another way: Live unscripted improvised drama. It’s not like anything else in most people’s lives; the only thing I
can think of that comes close is an instrumental break in a jam, whether that’s in your basement on a stage before thousands.</p>
<p>It thrills and entertains me. I make no apologies for that. I’d sure like to improve the societal basis that poisons it,
and increasingly more and more aspects of our lives, so I don’t have to feel bad about being a fan.</p>
<p>In the meantime, 🎵<i>Take me out to the ball game…</i>🎵</p>
</div></content></entry>
<entry>
<title>Mastodon, The Only Good Choice</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon' />
<link rel='replies' thr:count='0' type='application/xhtml+xml' href='/ongoing/When/202x/2026/07/05/Choose-Mastodon#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon</id>
<published>2026-07-05T12:00:00-07:00</published>
<updated>2026-07-09T11:23:45-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Business/Publishing' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Business' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Publishing' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World/Social Media' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Social Media' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean any combination of less useful, less safe, or less fun. It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say, offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean
any combination of less useful, less safe, or less fun.
It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say,
offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed.</p>
<p>By “Mastodon” I mean the many servers, mostly (but not all) running the
<a href="https://github.com/mastodon/mastodon">Mastodon software</a>, that
communicate using the
<a href="https://en.wikipedia.org/wiki/ActivityPub">ActivityPub protocol</a>. Now I’ll try to convince you to start using one of
them.</p>
<p><i>[I posted an earlier version of this essay called
<a href="/ongoing/When/202x/2025/11/03/Time-to-Migrate">Time To Migrate</a> last year, but enough things have changed
that it’s worthwhile revising and reposting.]</i></p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/join-mastodon.png" alt="join-mastodon.org" />
<div class='caption'><p>Start at
<a href="https://joinmastodon.org">joinmastodon.org</a></p></div>
<h2 id='p-4'>The simplest argument</h2>
<p>Have you noticed that social-media products, in the long term, seem inevitably to enshittify?
I have. But there’s a major exception, a tool that’s been serving billions of us for
decades, and works about as well as it ever did. I’m talking about email.</p>
<p>Why does email stay reasonably healthy? Because nobody owns it. Anyone on any server can communicate with anyone else on any
other. Nobody can buy it and make it a vehicle for their politics. Nobody can crank up the ads or
make things worse to improve their profit margin.</p>
<p>Mastodon’s like email that way. Plus it does all the Post and Repost and Quote and Follow and Reply and Like and Block stuff
that you’re used to, and there are thousands of servers. Anyone can run one and nobody can own the whole thing. It doesn’t have
ads and it won’t. It’s dead easy to use and it’s fun and you should
<a href="https://joinmastodon.org">give it a try</a>.</p>
<p>The rest of this essay goes into detail about why Mastodon is generally great and why the alternatives have little future.
But if the pitch sounds good so far, stop reading,
<a href="https://joinmastodon.org/">go get an account</a>, and climb on board.</p>
<!--
<p>But first…</p>
<h2 id='p-5'>Is social media worth saving?</h2>
<p>I regularly read that it’s pernicious and evil, damaging the mental health of young people,
and should be stamped out or foregone. I disagree. I think the problem is late-stage capitalism; every company that
offers a social-media product is under relentless financial pressure to yield steadily-growing profits, going on forever.</p>
<p>Since
there’s a global limit to the number of customers that any service can attract, that means they have to suck more out of each
user. Where by “suck more out of” I mean what social-media professionals call “increase engagement”.</p>
<p>So, engagement is increased at literally any cost, notably including the
<a href="https://erinkissane.com/meta-in-myanmar-part-i-the-setup">slaughter of the Rohingya</a>.</p>
<p>I for one do <em>not</em> agree that there’s anything essentially pernicious about having networked online
conversations. Once again, I appeal to email, which generally doesn’t exhibit the usual social-media pathologies.</p>
<p>I’d even appeal to Twitter-that-was, when authoritative voices were
talking about any subject from every angle, and when you could find out if you’d just felt an earthquake and be horrified or overjoyed
about Maple Leafs playoff collapse. It was fun and useful and educational.</p>
<p>So, Social Media? Yes. Centralized corporate social media? No.</p>
<p>Now, here are a bunch of great things about Mastodon, if that pitch above didn’t quite convince you to switch now.</p> -->
<h2 id='p-18'>Why now?</h2>
<p>Along with that “can’t be owned” and “no ads” stuff,
the software is getting really good, particularly in the last couple of releases. It’s got cool features you won’t find
elsewhere, and there’s very little cool stuff from elsewhere that’s not here.</p>
<p>There was a time when newly-arrived people had
confusing or unfriendly experiences, or missed features that were important to them.
It looks to me like those days are over.</p>
<h2 id='p-6'>Migration</h2>
<p>Mastodon is many thousands of servers, and you can join the biggest,
<a href="https://mastodon.social/explore">mastodon.social</a>, or
<a href="https://joinmastodon.org/servers">shop around for another</a>. But here’s the magic thing: If you end up disliking the
server you’re on, or find a better one, you can migrate and <em>take your followers with you</em>! You can’t ever get locked
in.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/serveres.png" alt="Choosing a Mastodon server" />
<div class='caption'><p>The server-selection menu has lots of options.</p></div>
<p>Migration is probably Mastodon’s most important feature. It’s why no billionaire can buy it and no corporation can enshittify it. As
far as I know, Mastodon is the first widely-adopted social software ever to offer it.</p>
<h2 id='p-7'>Interaction</h2>
<p>You hear it over and over: “I had <a big number> of followers on Twitter and now I have <a less-big number> on
Mastodon, but I get so much more conversation and interaction when I post here.”</p>
<p>One of the people you’ll hear that from is me.
My follower count is a bit less than half the 45K I had on Twitter-that-was, but I get immensely more intelligent, friendly
interaction than I ever got there. (And sometimes I get told firmly that I’m completely wrong, but hey.) It’s
the best social-media experience I’ve ever had.</p>
<p>Dunno about you, but conversation and interaction
seem like a big deal to me. One reason things are lively is…</p>
<h2 id='p-8'>Sex</h2>
<p>Here’s an axiom: An ad-supported service can’t have sex-positive or explicit content. Advertisers simply won’t tolerate
having their message appear beside NSFW images or Gay-Leatherman tales or exuberant trans-positivity. Mastodon
has all that stuff.</p>
<p>Of course, you gotta be reasonable, posting anything actually illegal will get your ass perma-blocked and your account
suspended. So will posting anything that’s NSFW etc without a “Content Warning”. That’s a built-in feature of Mastodon which
puts a little warning (“#NSFW” and “#Lewd” are popular) above your post, which is tastefully blurred-out until whoever’s
looking at it clicks on “Show content”.
I use these all the time when
I post about #baseball or #fútbol because a lot of the geeks and greens who follow me are pointedly uninterested in sports.</p>
<p>(Oh, typing that in reminds me that you can subscribe to hashtags on Mastodon: Let’s see, I currently subscribe to, among
others,
<a href="https://mastodon.social/tags/vancouver">#Vancouver</a>,
<a href="https://mastodon.social/tags/murderbot">#Murderbot</a>, and
<a href="https://mastodon.social/tags/Fujifilm">#Fujifilm</a>.)</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/ivory.png" alt="The Ivory For Mastodon app for Apple platforms" />
<div class='caption'><p>The “Ivory for Mastodon” app for Apple platforms,<br/>one of the many fine alternative clients.</p></div>
<h2 id='p-9'>Moderation and defederation</h2>
<p>Did I just mention, two paragraphs up, getting blocked? Mastodon isn’t free of griefers, but the tools to fight them are good
and getting better.</p>
<p>The good news is that each server moderates its own members. There’s variation
of the standards from server to server, but less than you’d think. Since there are thousands of servers, there are
thousands of moderators, which is a lot.</p>
<p>If you act in a way that others find offensive, you’ll probably get blocked by the offended people and also reported; the
report can come from any server and it’ll go to the moderators on yours. On a well-run server, those mods will have a look and
if you’ve actually been bad, your post might get yanked and you might get warned, or in an extreme case, booted off.</p>
<p>(I’ve been reported for saying unkind things about Bibi Netanyahu and for posting too many photos of my
cats (no, really) but that kind of thing is cheerfully ignored by good moderation teams.)</p>
<p>Then there’s Mastodon’s nuclear weapon: Defederation.
Suppose you’re prone to nasty bigotry in public and you get reported a lot and your server’s moderators <em>don’t</em> rein
you in. Eventually, word will get around, and if things aren’t cleaned up, most servers will defederate yours, so that
<em>nobody</em> on their server can see posts from anyone on yours. Your site is no longer part of the “Fediverse”; this is a powerful
incentive for server owners to take moderation seriously.</p>
<p>The effect is that the haters and scammers and Nazis who show up mostly get shuffled off-stage PDQ. Not
always, unfortunately; a couple of years ago a wave of incoming Black people had bad experiences with racist abuse. Ouch. Is
there <em>anywhere</em> in the world that a loud-voiced Black woman won’t provoke a chud eruption? <i>[sigh]</i></p>
<p>But the good news is that recent Mastodon releases have been shutting prone-to-abuse channels
down, so things are better than then and should continue to improve.</p>
<h2 id='p-11'>Links are good</h2>
<p>Corporate social-media services like to
<a href="https://talkingpointsmemo.com/tpm-25/how-elon-musks-changes-to-x-made-our-discourse-far-stupider">downrank posts with
links</a>.
Which makes me want
to scream, because my favorite thing to post is a link+reaction to something cool, and so are my favorite posts to read.</p>
<p>On Mastodon, when your post has a link, the software automatically fetches a preview of whatever you linked to and uses
it to decorate the post.
I mean, it’s the damn Internet, it only got interesting to non-geeks when we figured out how to turn millions of servers
into a great big honking searchable hypertext.</p>
<h2 id='p-12'>Search</h2>
<p>Speaking of which, Mastodon search is pretty good these days. It’s become, just like this blog, part of my outboard
memory, and I’m always typing things like “telephoto from:me has:media” into the search box. Fast enough, too.</p>
<h2 id='p-13'>Great clients</h2>
<p>Another good thing about Mastodon is that there is plenty of good client software
to choose from, mostly open-source. The best ones are miles ahead of Xitter and Threads and
Bluesky and, really, anything.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/Screenshot_20251110-104045.png" alt="A post from Brian Krebs in the Tusky app" />
<div class='caption'><p>Anniversary post in the Android “Tusky” app.</p></div>
<p>There are official Web and mobile clients from the Mastodon team and they’re fine, especially for admin and moderation work.
But iOS people should check out
<a href="https://apps.apple.com/us/app/ivory-for-mastodon-by-tapbots/">Ivory</a>, Androiders should look at
<a href="https://tusky.app">Tusky</a>, and everyone should try
<a href="https://phanpy.social">Phanpy</a>. I live in Phanpy on both my Mac and my Pixel<span class='dashes'> —</span> it’s a
Web thing but installable as a PWA.</p>
<p>Commercial products, especially social-media services, have <em>never</em> been at peace with third-party clients.
Twitter used to be, but then it stabbed those developers in the back. It’s easy to
understand why; every product manager has it drilled into them that they <em>must control the user experience</em>. This ignores
the ancient wisdom (I first heard it from
<a href="https://en.wikipedia.org/wiki/Bill_Joy">Bill Joy</a>) “Wherever you work, most of the smart people are somewhere else.”</p>
<p>Mastodon doesn’t have that kind of product manager, but it does have a
<a href="https://docs.joinmastodon.org/api/">fully-capable API</a>, developed in the open and with no
hidden or restricted features. Which means you’re going to get better clients.</p>
<h2 id='p-14'>Algorithms</h2>
<p>The algorithms that commercial social-media services use to sort your feed have one goal only: Maximize engagement and thus
revenue. They have no concern for quality or morality, and have been widely condemned by people who think about this
stuff. So much so that there’s a feeling that Algorithms Are Bad.</p>
<p>Mastodon has an algorithm: Show the posts from the accounts you follow, latest first. It works pretty
well. It also has “Trending” feeds of the most popular posts, hashtags, and links. I hit those once a
day or so to get a feeling for what’s going on in the world.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/07/05/Trending.png" alt="Trending screen in PhanPy" />
<div class='caption'><p>The “Trending” display in Phanpy.</p></div>
<p>I do think there’s room for improvement here; Bluesky has shown off the idea of pluggable feed-ranking algorithms, with many to
choose from, and I like it. No reason in principle we couldn’t have the same thing on Mastodon.</p>
<h2 id='p-15'>Money</h2>
<p>Every other social network has started with a big pot of money, whether from venture-capital investors (Twitter, Instagram,
Bluesky) or from a Big Tech corporate parent (Google+, Threads). The people who provided that money want it back, plus a whole
lot more.
Thus, the manic drive for “engagement” and growth at all costs. They need to build huge data centers and employ an elite
operations team plus an even more elite marketing group.</p>
<p>Mastodon, eh… a gaggle of nonprofits and co-ops and unincorporated affinity groups, financed by Patreon or low annual dues
or Some Random Geek who likes running a server.</p>
<p>Since nobody owns it, nobody can extract a profit from it. Which means that from the big-money point of view, it’s entirely
non-investable. The goal isn’t for anybody to make money, it’s to be instructive and intense and fun. It’s run on the cheap.
You know what they call systems that are cheap and diversified? Resilient. Sustainable. Long-lived.</p>
<p>Last year
<a href="https://www.tbray.org/ongoing/When/202x/2024/11/15/Not-Bluesky">I wrote</a>:
“Think of the Fediverse not as just one organism, but a population of mammals, scurrying around the ankles of the bigger and
richer alternatives. And when those alternatives enshittify and fall, the Fediversians will still be there.” After
“scurrying” I should have added “and evolving”.</p>
<h2 id='p-19'>But Bluesky!</h2>
<p>I like the Bluesky people and their software and some of their ideas. But I don’t see it as a good long-term
option, for two reasons. First, it’s not decentralized, in that it couldn’t survive if
<a href="https://bsky.social/about/faq">Bluesky Social PBC</a> fell on bad times. Yes, I know about
<a href="https://blackskyweb.xyz">BlackSky</a> (am a fan) and
<a href="https://eurosky.tech">Eurosky</a> (dunno enough yet) and they don’t change my opinion.</p>
<p>Second, I think it’s inevitable that Bluesky-the-company will indeed go sour. They have raised
<a href="https://techcrunch.com/2026/03/19/bluesky-announces-100m-series-b-after-ceo-transition/">a total of $123M</a> in
venture-capital investments. The biggest chunk, $100M from
<a href="https://baincapitalcrypto.com">Bain</a> and friends, was signed in April 2025 but not disclosed
until a year later. Why not, I wonder? Actually, I don’t wonder at all: Because they knew perfectly well that long-term
survivors like me would be horrified.</p>
<p>You, see the people who coughed up all those millions didn’t do it out of pure love or idealism, they want Bluesky to become
a money machine that emits a fountain of gold so they get a payback in the billions.
Which, OK; that’s what Venture Capital is for. Except for, I see no evidence that Bluesky has anything resembling a business
model. See the problem?</p>
<p>I see two possible outcomes: The company craters when the money runs out, or it builds a
lucrative income stream, probably based on advertising. Which means we can expect to see the pathologies that make X and
Facebook and friends so loathsome.</p>
<h2 id='p-16'>Mastodon’s the only option</h2>
<p>The only social-media option, I mean, that’s decentralized, not owned or controlled by anyone, and working well today as you
read this. It’s intense and interactive and fun. Why settle for less?</p>
<p><i>(Disclosure: I have no formal connections with the Mastodon organization, aside from being a low-level supporter on
Patreon.)</i></p>
</div></content></entry>
<entry>
<title>Automata, Built For Comfort or Speed</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs' />
<link rel='replies' thr:count='0' type='application/xhtml+xml' href='/ongoing/When/202x/2026/06/14/DFA-Costs#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs</id>
<published>2026-06-14T12:00:00-07:00</published>
<updated>2026-06-16T14:10:08-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Quamina Diary' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Quamina Diary' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>It’s been a while. February was the last entry in this <a href='/ongoing/What/Technology/Quamina%20Diary/'>Quamina Diary</a>; I never stopped working on it but there hasn’t been much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>It’s been a while. February was the last entry in this
<a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina Diary</a>; I never stopped working on it but there hasn’t been
much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a
pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!</p>
<p>Since it’s been so long, here’s what Quamina, a Go-language library, does: You can add “Patterns” to a Quamina instance, they
match the values of fields in JSON objects, and then you show Quamina a JSON “Event” and it’ll tell you which Patterns matched
it. It’s pleasingly fast and in many cases the speed is not strongly affected by the number of Patterns you’re trying to
match.</p>
<p>The last release, V2.0.2 back in March, marked the arrival of a reasonably-full regular-expression dialect into Quamina’s
pattern language, so you can say, for example, that the <code>Filename</code> field has to match
<code>map-[0-9]+.(png|pdf|jpe?g)</code>.
Regular expressions were a lot of work and a lot of fun.</p>
<h2 id='p-1'>Finite-automaton wrangling</h2>
<p>Quamina works by compiling the Patterns into finite automata, then matching the Event fields by traversing them.
To handle multiple Patterns, Quamina merges the automata together, a technique that’s been well-studied in Computer Science for
decades. From a set-theoretic point of view it’s a union; an OR through Boolean lenses. There’s really no limit in theory
for how many patterns you can merge, and Quamina has no problem at all with thousands.</p>
<p>There are two flavors of finite automata: Deterministic (DFAs) and Nondeterministic (NFAs). If you have a university
degree in CS they probably made you study this at some point. Weirdly, many people find the subject boring.</p>
<p>I’m not going to explain the differences, if you want to know it’s easy to look up, and anyhow the story I want to tell
doesn’t need it. Here’s what the story needs:</p>
<ol>
<li><p>To implement wildcards and regular expressions, you need NFAs.</p></li>
<li><p>Matching data with DFAs is generally a whole lot faster than with NFAs.</p></li>
<li><p>There’s a well-known algorithm for transforming any NFA into a DFA that matches exactly the same data. It’s really a
lovely algorithm, you want to tickle it under its adorable little chin.</p></li>
<li><p>In some cases, the algorithm can be brutally expensive, along the lines of <code>O(2<sup>N</sup>)</code>.</p></li>
</ol>
<h2 id='p-2'>The benchmark from Hell</h2>
<p>I found a data file in the Wordle source code with 13K or so 5-letter words. I inserted a <code>*</code> at a random location
in each. To illustrate, here are the first five results: <code>aah*ed</code>, <code>aalii*</code>, <code>*aargh</code>,
<code>aar*ti</code>, and <code>abaca*</code>.</p>
<p>The benchmark is, you load these into a Quamina instance and measure how fast it is to load them, how much memory the
merged NFA consumes, and how many Patterns per second you can match. Then you repeat the exercise, converting each NFA into
a DFA.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/14/Willie.png" alt="Willie Dixon" class="inline" />
<p>I loaded 10K Patterns in NFA form, but the NFA-to-DFA conversion got so brutal my patience only allowed me to load and
measure 300 in DFA form. (Which kind of gives away this article’s punchline but stick with me, the details are fun).</p>
<h2 id='p-5'>Willie Dixon</h2>
<p>He was a famous bluesman and I need help from him to explain my APIs.</p>
<p>Quamina’s latest PR adds APIs
to turn the NFA-to-DFA conversion on and off; it’s off by default. There are two <code>MatcherBuildMode</code> values,
<code>BuiltForComfort</code> and <code>BuiltForSpeed</code>. Which are out-takes from Willie’s 1959 song <cite>Built For
Comfort</cite>, and the lyrics go like this:</p>
<blockquote>
<p>Some people built like this, some people built like that,<br/>
The way I’m built, don’t you call me fat<br/>
Cause I’m built for comfort, I ain’t built for speed<br/>
…</p>
</blockquote>
<p>Willie was a big guy, way over six feet and not exactly slender. I know this because I interviewed him once, but that’s
another story. Lots of others have covered this tune, most of whom are, um, well-rounded.</p>
<p>Speaking of which… here is Quamina’s memory consumption in NFA mode.</p>
<img src="Comfort-size-in-mb.png" alt="Memory cost of many merged NFAs" />
<p>The memory cost is pretty well linear in the number of patterns. For 10K patterns Quamina uses something over 25M which feels
kind of reasonable to me.</p>
<p>Here’s the story for DFAs.</p>
<img src="Speed-size-in-mb.png" alt="Memory cost of many merged DFAs" />
<p>I haven’t run regressions or anything and I don’t think that’s actually <code>O(2<sup>N</sup>)</code>, but the second
derivative is solidly positive, which in simple English means “doesn’t scale”.</p>
<p>Now let’s look at the Pattern-addition time for NFAs and then DFAs.</p>
<img src="Comfort-msec-per-AddPattern.png" alt="Time cost of merging many NFAs" />
<img src="Speed-msec-per-AddPattern.png" alt="Time cost of merging many DFAs" />
<p>Once again, the NFA cost increases more or less linearly (albeit interestingly jagged), while for DFAs, look at that
second derivative. This was what eventually made my patience give out and limit the DFA run to 300 Patterns.</p>
<p>Now let’s look at the payoff, the number of Event matches/second in NFA- and DFA-land.</p>
<img src="Comfort-matches-per-second.png" alt="Matching speed of many merged NFAs" />
<img src="Speed-matches-per-second.png" alt="Matching speed of many merged DFAs" />
<p>The NFA performance degrades at something like <code>O(N<sup>-1</sup>)</code>, but DFAs just don’t care. After a few lurches
it rolls along at between 500 and 600K/second. Not bad, and based on experience with huge DFAs that were built from
exact string matches, my belief is that the matching speed would eventually drift down, but slowly, not remotely a linear
function of the number of Patterns.</p>
<h2 id='p-3'>Not just pictures but numbers too</h2>
<p>It was maybe a little unfair to compare 10K NFAs against only 300 DFAs, so let’s focus in.
(This is on a 2023 M2 MacBook Pro.)</p>
<table>
<tr valign="top" align="center"><td class="empty"></td><th colspan="3">300 Patterns</th></tr>
<tr valign="top"><td class="empty"></td><th>Memory</th><th>Add-Pattern time</th><th>Matches/sec</th></tr>
<tr align="center"><td>NFAs</td><td>860K</td><td>0.1 ms</td><td>222K</td></tr>
<tr align="center"><td>DFAs</td><td>45M</td><td>7.7 sec</td><td>404K</td></tr>
<tr valign="top" align="center"><td class="empty"></td><th colspan="3">10K Patterns</th></tr>
<tr align="center"><td>NFAs</td><td>27M</td><td>2.3 ms</td><td>21K</td></tr>
</table>
<p>That’s pretty shocking stuff. 10K NFAs occupy less memory than the DFAs equivalent to 300 NFAs.
And the Add-Pattern time, which is totally dominated by the NFA-to-DFA logic, is getting into intractable territory.
So why would anyone mess with the DFA conversion? Because it matches data twice as fast!</p>
<h2 id='p-4'>Practical advice for Quamina users</h2>
<p>First, if you’re a normal human being and only matching a handful of patterns against a few Events/second, ignore all this
and just take the defaults, Quamina latency will vanish in the static.
If you’re matching lots of numeric and string values against many Events/second, don’t lose any sleep, keep on packing in the Patterns
and Quamina probably won’t slow down enough for you to even notice.</p>
<p>In theory you’d eventually get into memory trouble but in my considerable experience with Quamina and its AWS-built predecessor
<a href="/ongoing/When/202x/2022/09/02/Hello-Ruler">Event Ruler</a>, you have to be venturing into
extreme-craziness territory for that to happen. (It did happen. An Amazon group added literally a million Patterns. It
still ran way faster than anything else they could find.)</p>
<p>If you need to match wildcards or regexps, adding Patterns stops being free. The slowdown is roughly linear in the number of
Patterns and isn’t actually terrible, see the data above. But if you’re using a relatively small number of regexp Patterns, go
right ahead and turn on DFA conversion with “BuiltForSpeed” mode.</p>
<h2 id='p-6'>What next?</h2>
<p>There’s one minor Quamina feature that’s disabled in BuiltForSpeed mode, so I’ll need to fix that and do a release.</p>
<p>I bet there are still low-hanging fruits that could speed up the Hell benchmark, but anyone looking for those should
bear in mind that they’re fighting settled Computer Science, you’re never going to make NFA-to-DFA conversion reliably
linear.</p>
<p>But to be honest, Quamina is starting to feel fairly feature-complete.
I’d like to see a few adapters so you could use Quamina with Protobufs and Thrift and CBOR and other formats that
aren’t JSON.</p>
<p>But in fact Quamina doesn’t have that many users; I’ve only heard from a handful. Who knows, maybe the problems you learn to solve
when you’re working at AWS, and most of the groups think millions of events per seconds is an ordinary workload, aren’t widely
applicable in the broader world of Open Source?</p>
<p>Which is to say, me working on Quamina isn’t helping that many people. At one level, I don’t care, because it’s been fun and
instructive.
I’d probably enjoy turning this “Quamina Diary” series into a monograph or small book if there were an interested publisher.</p>
<p>And thanks to everyone who’s been reading along.</p>
</div></content></entry>
<entry>
<title>Long Links (AI-free)</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links' />
<link rel='replies' thr:count='4' type='application/xhtml+xml' href='/ongoing/When/202x/2026/06/05/Long-Links#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links</id>
<published>2026-06-05T12:00:00-07:00</published>
<updated>2026-06-10T11:40:51-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Hey everyone, I know you’re overloaded because everything has <a href='/ongoing/When/202x/2020/07/05/Too-Efficient'>become overly efficient</a>. Long-form reading or writing or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Hey everyone, I know you’re overloaded because everything has
<a href="/ongoing/When/202x/2020/07/05/Too-Efficient">become overly efficient</a>. Long-form reading or writing
or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the
link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate
feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok.</p>
<p>Now, let’s all take a couple of breaths and gingerly approach the A-word, namely “AI” (as understood in 2026).
Which is occupying much more of my attention and cognition than I would like, and there are gems embedded
in the flood; granted, sparsely but they still add up.
I respect that many of you will have just fucking had it with that subject. So I shuffled that material off into
<a href="/ongoing/When/202x/2026/06/08/Long-Links-AI">Long Links (AI)</a>, which you can drop by (or not) as you please.</p>
<h2 id='p-1'>Books</h2>
<p>One of the weirdest and flawed but still good things I’ve read this year is
<a href="https://en.wikipedia.org/wiki/The_Luminaries">The Luminaries</a>, written by Eleanor Catton back in 2013, a pretty dark
tale of murder and theft and love and oppression in a not-so-great corner of New Zealand during an 1866 gold rush. Really super
intense and hard to put down; even though it’s 900+ pages I never got bored.
But freakishly complicated and I was left puzzled by multiple plot elements. Fortunately (yay
Internet!) there’s
<a href="https://115journals.com/2014/04/05/deconstructing-the-luminaries-a-timeline">Deconstructing The
Luminaries</a>, an explainer.</p>
<p>Other recent books: <cite>Platform Decay</cite>, minor Murderbot, but still worth reading. <cite>The Incandescent</cite> by
Emily Tesh, yet another highschool-for-magic book, only with the grownups in the foreground and the kids behind them. Way more fun
than the last few instances of that genre. Also, sex. Finally worth mentioning: <cite>The Everlasting</cite> by Alix Harrow,
which started slow but eventually got a real grip on me; recommended.</p>
<p>I was in the library today and I always cruise past the “featured” table, where I saw
<a href="https://en.wikipedia.org/wiki/Nobody%27s_Girl_(memoir)">Nobody’s Girl</a> by Epstein victim Virginia Giuffre (R.I.P.)
and
<a href="https://en.wikipedia.org/wiki/Empire_of_AI">Empire of AI</a>, Karen Hao’s huge takedown of OpenAI and Altman. But
I just now do not have the spoons. Maybe later.</p>
<p>Hmm, they tell me men can write books too. Must look into some.</p>
<h2 id='p-2'>Political economy</h2>
<p>I and many others are deeply discontented with the current flavor of late-stage capitalism, that “late-stage” a
conscious callout to terminal illness. So do we really want to do away with Capitalism as
such, or retain it but try to regulate away inhumane behaviors and effects? Or what? Let’s not forget that there are still
people out there proud to call themselves Socialists and their take is that Capitalism can’t be fixed and must be replaced. With
what?</p>
<p>Anyhow, if you want to hear what these people are saying the place to go is
<a href="https://jacobin.com">Jacobin</a>. I’m not a regular visitor but when I do drop by I’m starting to hear the phrase
“market socialism”. Thus
<a href="https://jacobin.com/2026/05/market-socialism-capitalism-ownership-exploitation">How Socialism in the 21st Century
Could Work</a>. The tone is kind of nonspecific and academic but it’s part of a conversation that
I think the (large, growing) mad-at-Capitalism demographic needs to have.</p>
<p>Speaking of the pathologies of late-stage capitalsm, Paul Krugman’s
<a href="https://paulkrugman.substack.com/p/bezos-backlash-and-zombies">Bezos, Backlash and Zombies</a> describes a Bezos TV
appearance in which Jeff said some really dumb things. Which is a bit surprising because while fewer and fewer people seem to like
him, most people think he’s pretty smart. Krugman tears apart Bezos’s deep and broad misunderstanding of how taxation works. He
attributes it to what he calls “Billionaire Brain”; the notion is plausible. The discussion goes on into popular perceptions
of business in general, technology in particular. And (*sigh*) AI. Good stuff.</p>
<p>People like reading books on screens and most public libraries now support that. I believe a high proportion of such loans go
through <a href="https://libbyapp.com/">Libby</a>, which is what I use.
But the publishers don’t actually sell e-books to libraries, they rent them,
a price for a fixed number of loans. And as you might expect, that price keeps going up, to the point that public libraries all
over the world are hurting. So,
<a href="https://www.publishersweekly.com/pw/by-topic/industry-news/libraries/article/100488-library-organizations-urge-big-five-to-address-digital-pricing.html">Library Orgs Urge Big Five to Address Digital Pricing</a>.
Paper books are looking better and better.</p>
<p>It turns out that America’s capital is a good experimental platform for crime research. Check out
<a href="https://www.niskanencenter.org/washington-dc-crime-decline-and-its-lessons-for-american-policing/">Washington, D.C.’s
crime decline and its lessons for American policing</a> from the Niskanen Center. Guess what: There’s little correlation
between the number of cops and the amount of crime. Also, when Trump sent in the National Guard to stand around with their
thumbs up their asses being visible, the effect was tiny and only on “property crimes of opportunity”. Does that mean graffiti?</p>
<h2 id='p-4'>Funnies</h2>
<p>Staying in the political lanes, here’s an
<a href="https://talkingpointsmemo.com/where-things-stand/bessent-forced-to-defend-treasurys-prep-work-for-a-250-bill-with-trumps-face-on-it">evening
briefing</a> from <cite>Talking Points Memo</cite>, my favorite US-Politics blog. It’s got two unintentional jokes. First of
all, this little sequence on the subject of Trump wanting to print a $250 bill with his face on it.</p>
<blockquote><p>… two political appointees at the Treasury Department … repeatedly urged staff at the agency’s Bureau of Engraving
and Printing to prepare prototypes of the note, according to the employees, who said the move raised concerns because federal
law currently allows only deceased people to appear on bills.</p></blockquote>
<p>There’s more than one way to read that… I’m suddenly starting to see the advantages of printing that bill.</p>
<p>Then, a little further down, it turns out JD Vance gave a speech at the Air Force Academy, from which:</p>
<blockquote><p>So as AI transforms the battlefield — in some ways positively, in some ways not — I ask that you be jealous and
selfish about your role as a decision-maker in warfare,” he continued. “Use technology to make you better, but never submit to
it. You are the masters of warfare…</p></blockquote>
<p>Yeah well Bob wrote a whole song about
<a href="https://www.bobdylan.com/songs/masters-war-mono/">Masters Of War</a> and got the trade-offs about right.
JD’s cluelessness is mountainous.</p>
<p>OK, here’s an organized-crime story that makes me smile because it’s just so hilariously blatant. It’s like this: Worldwide,
cricket is a big-money sport. Any readers who come from India or English-speaking southern-hemisphere countries are nodding
because well of course. Cricket in Canada is <em>not</em> a big deal; our South Asian and Caribbean immigrants may be seen
playing in the park on weekends with nobody but spouses and kids are watching.</p>
<p>Nonetheless the International Cricket Council has been sending a few million dollars a year to Cricket Canada to develop the sport
hereabouts. But no longer. It seems that Cricket Canada has been a comical hotbed of theft, fraud, extortion, and
match-fixing. Recently gunshots were fired at its president’s house. The TV segments have been hilarious, with
leaders of Canada’s cricket establishment sweatily denying everything while looking over their shoulders. Anyhow, if you like
colorful true-crime drama, start with
<a href="https://www.cbc.ca/news/canada/icc-suspends-cricket-canada-9.7218815?cmp=rss">Cricket Canada surprised after
“unexpected” suspension by governing body over breaches of membership</a>.</p>
<h2 id='p-6'>Photography</h2>
<p>I visit <a href="https://petapixel.com">Petapixel</a> more days than not; it’s got the goods in the world of cameras and
photography. There are solid camera and lens reviews, and a lot of focus on individual photographers. Here’s
<a href="https://www.dpreview.com/articles/8507786637/the-photographer-who-never-stopped-chasing-the-perfect-shot">The
photographer who never stopped chasing the perfect shot</a> (and, on the evidence, got plenty). Next, Jeff Austin has been
shooting the same parts of Tokyo through vintage glass for decades; he contributed
<a href="https://petapixel.com/2026/06/06/twenty-years-one-city-what-tokyo-taught-me-about-patience-and-glass/">Twenty Years,
One City: What Tokyo Taught Me About Patience and Glass</a> and has a Web site,
<a href="https://www.tokyoforgeries.com/">Tokyo Forgeries</a>.</p>
<p>Not just metal and glass; here’s an interesting camera bag:
<a href="https://petapixel.com/2026/05/21/the-pilot-88-is-a-limited-edition-wotancraft-messenger-designed-by-chris-niccolls/">The
Pilot 88 Is a Limited Edition Wotancraft Messenger Designed by Chris Niccolls</a>. Finally, the story of Edith
Tudor-Hart, in
<a href="https://petapixel.com/2026/05/03/edith-tudor-hart-photographer-cambridge-five-soviet-spy/">The Hidden History of a
British Female Photographer Turned Soviet Agent</a>.</p>
<h2 id='p-7'>Disturbing Evidence</h2>
<p>Now, I said I liked Petapixel, and I do. But there’s a dark side; one
can’t help notice the many <em>many</em> stories about the terrible
things that happen to photographers. Then there’s the sub-genre of terrible things that
happen in the context of wedding photography, which seems a swamp of suffering and pain. Well… why not both?
<a href="https://petapixel.com/2026/05/26/wedding-photographer-seriously-injured-after-being-stabbed-by-guest/">Wedding
Photographer Seriously Injured After Being Stabbed by Guest</a>. I mean, it goes on and on:
<a href="https://petapixel.com/2026/05/26/photographer-bitten-by-shark-or-sea-lion-during-surf-competition/">Photographer
Bitten by “Shark or Sea Lion” During Surf Competition</a> and
<a href="https://petapixel.com/2026/06/04/woman-pleads-guilty-to-manslaughter-after-gun-themed-polaroid-photo-shoot-ends-with-photographers-death/">Woman Pleads Guilty to Manslaughter After Gun-Themed Polaroid Photo Shoot Ends with Photographer’s Death</a>!
Mommas, don’t let your babies grow up to be photogs.</p>
<h2 id='p-3'>Personalities & misc</h2>
<p>In the world of Big Biz generally and Big Tech specifically, PR leaders are very near the center of everything. CxOs are
basically never allowed to say anything that isn’t carefully scripted in advance; PR does the scripting. When somebody fucks up
and things (including the share price) go off the rails, PR owns the problem.</p>
<p>During the years when I was a blogging in a
relatively unsupervised way while employed in BigTech, I
became pretty intimate with some of those PR folks.
I remember not too long after I joined Amazon, my manager, a really good person who’d gone to lots of work to hire me,
grabbed me in the hallway and said “PR is pissed about what you wrote about Microsoft” and I said “Don’t worry, talking PR
people down off the ledge is one of my core competences.” He looked worried: “Well, good luck.” But it was OK.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/dont-be-evil.png" alt="Cover of Don’t Be Evil by claire Stapleton" class="inline" />
<p>Anyhow, Claire Stapleton was in PR at Google during the glory years, and was close to the center of things. She got laid off
in 2023 and wrote <a href="https://techsupport.substack.com/p/game-over">game over - some thoughts on layoffs and life</a>.
A few things in there widened my eyes and I suspect they’ll do the same for anyone else who’s been in the Google ecosystem.
Anyhow, recently she
<a href="https://techsupport.substack.com/p/the-returning-cog">wrote a book</a> which I have to say looks pretty promising.</p>
<p>JA Westenberg’s <a href="https://www.joanwestenberg.com/p/on-wintering">On wintering</a> speaks to me. One of the nice things
about being (mostly) retired is I get lots of time for this. It’s hard to see how the machineries of Late Capitalism could allow
this kind of space though; another reason to find something better.</p>
<p>At least once a year I point excitedly at something by Paul Ford; this time it’s
<a href="https://ftrain.com/canons">Canons</a>. Beautiful stuff.</p>
<h2 id='p-11'>Product pitch</h2>
<p>For the last few years, we’ve had induction stovetops, which I totally love: Responsive, hot, easy to clean, low carbon load.
but, I like to stir-fry and you can’t really balance a wok on an induction top. So we picked up an
<a href="https://abangdun.com/products/induction-wok-cooktop-induction-burner-1700w-85v120v-electric-wok-curved-surface-electronic-cooker-concave-stoves">Abangdun 1700W 100V~185V Induction Cooktop Concave Curved Surface 2026 New Electric Stove Wok</a>.
It’s great; I stir-fry a couple times a month and get good reviews. Its built-in fan is kinda noisy.</p>
<h2 id='p-8'>Music</h2>
<p>Recently I ran across
<a href="https://thesleeveens.com/tour/">The Sleeveens</a>, Irish punks in Nashville. I said “punk” and I mean it, it’s nearly
the pure stuff, somewhere on the Clash-to-Ramones axis, and like those bands, the tunes are good, and like the Clash, the lyrics
are political and gonna make you sit up. Their recent outing
<a href="https://thesleeveens.bandcamp.com/album/national-anthem">National Anthem</a> is just one banger after another. My
favorites are <cite>If I Was A Casual</cite> and <cite>Cowboy Queen</cite> and then there’s the title track, which begins “Burn
your fuckin’ country to the ground in the name of love…” oh yeah.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/Sleeveens.png" alt="The Sleeveens" />
<p>Now let’s lean into a fertile field of musicological scholarship: Guitar solos! <cite>Rolling Stone</cite> let their dimbulb
flag fly with
<a href="https://www.rollingstone.com/music/music-lists/best-guitar-solos-1235519961/st-vincent-rattlesnake-1235520236/">The
100 Greatest Guitar Solos Of All Time</a>, which unforgivably omits Ry Cooder on <cite>Amandrai</cite>, Susan Tedeschi on
<cite>Pity the Fool</cite>, David Lindley on <cite>Do Ya Wanna Dance</cite>, Neil Young on <cite>Love To Burn</cite>, Megan
Lovell on <cite>Preachin’ Blues</cite>, also <i>[Tim, enough -Ed.]</i>.</p>
<p>But wait, there’s more. Not to be outdone,
<a href="https://consequence.net">Consequence</a> (of which I know nothing) came up with
<a href="https://consequence.net/list/best-guitar-riffs-21st-century/">70 Best Guitar Riffs of the 21st Century (So
Far)</a>, which is full of smiles. I have to confess that I’d heard less than 10% of these.</p>
<p>But anyhow Japanese metallistas Boris, about whom I’ve blogged not
<a href="/ongoing/When/201x/2011/10/13/Pictures-of-Wata">once</a>, not
<a href="/ongoing/When/201x/2018/05/17/SotD-Attention-Please">twice</a>, but
<a href="/ongoing/When/201x/2017/10/13/Live-Metal">thrice</a>, are on both lists! #61 on the solos, #7 on the riffs.
Which they noticed, and took a bow. Here’s
<a href="https://boris.bandcamp.com/album/akuma-no-uta-2">Akuma no Uta</a> and also
<a href="https://www.youtube.com/watch?v=QZ-BTzNsHnA">a pretty hot live capture</a>.</p>
<p>Finally, if you like Arvo Pärt and art that strains at the edges (what other kind is worth liking?) check out
<a href="https://www.youtube.com/watch?v=XvEEeGqPsVA">Robert Wilson’s “Adam’s Passion” (Music of Arvo Pärt)</a>. An hour and a
half of fine music, well-played, and live human movement following Pärt’s slow pulse. Nakedness is involved.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/05/Adams-Passion.png" alt="Perfomers in Robert Wilson’s “Adam’s Passion”" />
<h2 id='p-9'>Tech</h2>
<p>I gather that Marcin Wichary is name to conjure with in design circles; he’s recently launched
<a href="https://unsung.aresluna.org">Unsung, my blog about software craft and quality</a> and boy, it’s outstanding.
A lot of it is simple celebrations of typographical or UI excellence, but what got my attention was a polite-but-savage takedown
of a recent Photoshop release: Parts
<a href="https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-1/">1</a> and
<a href="https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-2/">2</a>.
You’ll learn a lot about how to think about UI construction by reading this.</p>
<p>Armin Ronacher, to whom it seems I’ve been linking a lot recently, offers
<a href="https://lucumr.pocoo.org/2026/4/28/before-github/">Before GitHub</a>, which to be fair contains equal parts of Current GitHub
and After GitHub thinking, pretty well all of which seems good to me. Single points of failure are just bad, we should know
that now, particularly when they start failing.</p>
<p>Finally, have a look at
<a href="https://www.construction-physics.com/p/the-age-of-the-amplifier">The Age of the Amplifier</a> by Brian Potter at a Web
site called “Construction Physics”. There are several different kinds of amplifiers, and most of the interesting ones were developed
at Bell Labs during the 20<sup>th</sup> century. This is a history of that, based on the premise that “Amplifiers in general are
important”. They are! The history is interesting, assuming you know what “voltage” and “current” are. It pleases me that people
will still write long-winded pieces about narrow slices of history and apparently have fun doing it.</p>
<h2 id='p-10'>That’s all folks</h2>
<p>Well except for the companion aggregation of <a href="/ongoing/When/202x/2026/06/08/Long-Links-AI">Long AI-related Links</a>.</p>
<p>Until next time.</p>
</div></content></entry>
<entry>
<title>Long Links (AI)</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI' />
<link rel='replies' thr:count='5' type='application/xhtml+xml' href='/ongoing/When/202x/2026/06/08/Long-Links-AI#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI</id>
<published>2026-06-08T12:00:00-07:00</published>
<updated>2026-06-10T11:35:01-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/AI' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='AI' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>The piece you’re now looking at exists because <a href='/ongoing/When/202x/2026/06/05/Long-Links'>my latest “Long Links”</a> curation of interesting not-lightweight material included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people have had more than enough of this discourse and I thought I’d spare them by moving these bits over here</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>The piece you’re now looking at exists because
<a href="/ongoing/When/202x/2026/06/05/Long-Links">my latest “Long Links”</a> curation of interesting not-lightweight material
included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people
have had more than enough of this discourse and I thought I’d spare them by moving these bits over here.</p>
<p>Let’s start with raw data: Is AI improving people’s lives?
<a href="https://dustycloud.org">Christine Lemmer-Webber</a> was kind enough to
<a href="https://social.coop/@cwebber/116698488515037678">ask the world</a> or at least the Mastodon part of it, and the results
weren’t subtle or nuanced at all.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/06/08/CL-W-poll.png" alt="“genAI has made my life” poll by Christine Lemmer-Webber" />
<p>I encourage everyone to follow the link and read the conversation that broke out around that poll. It will not cheer you
up.</p>
<p>And for my money that’s the most important take-away I’m offering today. Whether we’re using it or not, “AI” is not a thing
that is making us happy.</p>
<h2 id='p-1'>Where I stand</h2>
<p>Currently, I’m a contra. GenAI is being pushed by terrible people who are trafficking in lies and abusing the planet, and
should their far-fetched dreams come true the consequences would be terrible for most people. Because they want to
disempower knowledge workers, remove them from the economy, and cast them loose on the tender mercies of the market.</p>
<p>The reason for that “Currently” in the paragraph above is that we’re living in a liminal space where everybody I know who has
any brains is convinced that there’s a bubble inflated by trillions of dollars of speculative and likely doomed investment. It’s <!---->
very near popping, and the consequent miasma of fear and greed makes it absolutely impossible to have a reasonable
discussion of what GenAI might be good for and might not.</p>
<p>The onrushing terrible trio of IPOs (SpaceX, OpenAI, Anthropic) feels to me like when there’s a 9.2 earthquake 50km offshore and
so far no tsunami has been detected but everyone’s glancing nervously at the horizon.</p>
<p>So anyhow, for now I’m not going to use any GenAI tools myself. Post-pop, it may develop that there ways it can be
ethical and useful, albeit at an immensely smaller scale than the LLM edgelords are pitching. We’ll see.</p>
<p>I have been accepting human-curated Claude-driven PRs on my Quamina hobby project. For which I’ve already been called a Nazi
by someone whose views I take seriously. (But I really don’t think I am.) I do think that when the dust settles,
there will be a role for LLMs in software development, but I also think we haven’t figured out yet what it is. I
absolutely do not believe for a second the claims of 10x improvements in “productivity” (I do not think that word means what you
think it means).</p>
<p>Having said all that, here are morsels of gold from the torrent of AI dross that wants to flood every fucking one of my
input channels.</p>
<h2 id='p-3'>Critiques</h2>
<p>Bram Cohen says
<a href="https://bramcohen.com/p/the-cult-of-vibe-coding-is-insane">The Cult Of Vibe Coding Is Insane</a>. Yup.
Kyle Kingsbury writes a long sad series: <a href="https://aphyr.com/posts/411-the-future-of-everything-is-lies-i-guess">The
Future of Everything is Lies, I Guess</a>. He seems to come out about where I do: Not going there for now.</p>
<p>Dr Bethan Tovey-Walsh offers us <a href="https://linguacelta.com/blog/2026/05/LLMs.html">The Community is the
Achievement; the Achievement is the Community</a>, subtitled <cite>An ethical love-letter to distributed technology
communities</cite>.
It’s long and defies summarization, but light-hearted, a pleasant read. Its bottom line is, and I quote: “The right thing, in my
view, for tech communities and projects to do is to reject contributions of LLM-generated content.” Recommended even if you
disagree.</p>
<p>Wow, here’s one that hits hard, academic output from big-name universities:
<a href="https://www.researchgate.net/publication/403562106_AI_Assistance_Reduces_Persistence_and_Hurts_Independent_Performance?utm_source=substack&utm_medium=email">AI Assistance Reduces Persistence and Hurts Independent Performance</a>.
What’s shocking is that it doesn’t take that much AI exposure before the symptoms start appearing.</p>
<p>Corey Quinn’s day job is helping people lower their AWS bills, and he markets it (very successfully) by writing snark-heavy
essays on more or less anything cloud-related generally and AWS-focused specifically. It seems he’s got a new AI-oriented platform
called “Artificial Confidence”, whence
<a href="https://artificialconfidence.com/p/artificial-confidence-xai-the-neocloud">Artificial Confidence: xAI, the
Neocloud</a>. Corey is a gifted polemicist and xAI is a soft target. It does not come off well. Since xAI is a major chunk of
the looming SpaceX IPO, this piece is highly relevant, possibly to your retirement savings.</p>
<p>I know
<a href="https://nooneshappy.com/article/appearing-productive-in-the-workplace/">Appearing Productive in The Workplace</a>
was widely posted and quite likely you’ve seen it; if you haven’t, go read it and if you already have, another visit
might be beneficial.</p>
<h2 id='p-2'>Bug finding</h2>
<p>From the Linux-kernel world, there’s
<a href="https://www.theregister.com/software/2026/03/26/linux-kernel-czar-says-ai-bug-reports-arent-slop-anymore/5226256">AI
bug reports went from junk to legit overnight, says Linux kernel czar</a> and
<a href="https://lwn.net/Articles/1065620/">Significant raise of reports</a>, which says about the same thing with a couple of
plausible and important conclusions.
There was a report about Linus Torvalds criticizing the inflow,
(<a href="https://lkml.org/lkml/2026/5/17/896">see here</a>) but it turns out he was after the practice of LLM-script
kiddies reporting them to the “secret” mailing list. Which is a no-brainer because if an LLM that everyone can run finds a bug,
then it’s obviously not a secret.</p>
<p>Anyhow, looks like GenAI can be put to good use finding vulnerabilities.</p>
<h2 id='p-5'>War stories and advice</h2>
<p>Assuming that post-bubble it becomes possible to use AI in coding without being called a Nazi, we have to face the fact
that we really don’t have any consensus best practices for doing that. So I enjoy reading narratives of people who describe
what they did, in detail (no architecture astronautics) what worked, and what didn’t.</p>
<p>Lalit Maganti’s
<a href="https://lalitm.com/post/building-syntaqlite-ai/">Eight years of wanting, three months of building with AI</a> which
centers around building an SQL parser that exactly matches SQLite’s. That’s a freaking hard problem and I think Maganti’s
narrative has pointers to a plausible future.</p>
<p>The redoubtable and loud-voiced Daniel Stenberg of Curl fame offers us
<a href="https://daniel.haxx.se/blog/2026/06/10/a-human-in-control/">A Human In Control</a>, which says about what the title
does, with feeling.</p>
<p>Nelson Minar posted
<a href="https://nelsonslog.wordpress.com/2026/03/18/first-impressions-of-jules-googles-coding-agent/">First impressions of
Jules, Google’s coding agent</a>; this will probably be interesting to those living in the Claude or Copilot territory.</p>
<p>Rails is regarded as a good framework for building certain classes of Web site. Normally, it is considered as Ruby code and
executed using the Ruby runtime. Sam Ruby (the surname is a coincidence) has been doing remarkable work arranging for
Rails app specifications to be executed by other runtime platforms, notably including Typescript, Rust, and Elixir
with no ruby (except for Sam) involved.</p>
<p>He relies heavily on GenAI and describes his findings in
<a href="https://intertwingly.net/blog/2026/05/22/The-Drucker-Inversion.html">The Drucker Inversion</a>.
It’s deep, thoughtful stuff.</p>
<p>Joe Magerramov’s
<a href="https://blog.joemag.dev/2026/05/the-valley-of-calm.html">The Valley of Calm</a> makes perfect sense to me because I
spent some years inside AWS. His basic point is that if GenAI ends up increasing the number of commits, your CI/CD pipeline is
likely to cave under pressure. Looks to me like he’s right, and his proposals for how to address the problem sound plausible.
“Plausible” isn’t good enough, this is another area where we just don’t yet know what the best practices are, and there’s only one way
to find out.</p>
<p>Hey, two AWS people in a row: Brooke Jamieson is a Developer Advocate, what I used to be at Google.
<a href="https://medium.com/@brookejamieson/make-your-coding-agent-opinionated-10ca175801a9">Make Your Coding Agent
Opinionated</a> begins “I’ve been using coding agents daily for over a year across Kiro, Claude Code, Cursor, and Codex.”
Here are her lessons.</p>
<h2 id='p-6'>That’s all folks</h2>
<p>We can argue with each other about how best (or if at all) to use this technology. Maybe it’s all irrelevant or (I think) at
best a side-show until the AI-bubble greed and fear dissipates. Which can’t come too soon. Maybe it’s useful to work
on the problem in standby mode while we wait for the bubble to collapse.</p>
<p>I’m pretty sure it will.</p>
</div></content></entry>
<entry>
<title>XML and JSON in 2026</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026' />
<link rel='replies' thr:count='15' type='application/xhtml+xml' href='/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026</id>
<published>2026-06-01T12:00:00-07:00</published>
<updated>2026-06-02T16:08:22-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/XML' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='XML' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Software' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Software' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>The best thing about long-lived incumbent technologies like JSON and XML is that nobody really has to think about them much any more. Except for, I do occasionally, because while I’m <a href='/ongoing/When/200x/2008/11/22/Not-the-Inventor-of-XML'>not the inventor</a> of either, my name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run! And what ever happened to XML? Let’s shake off the dust and have a look</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>The best thing about long-lived incumbent technologies like JSON and XML
is that nobody really has to think about them much any more. Except for, I do occasionally, because
while I’m <a href="/ongoing/When/200x/2008/11/22/Not-the-Inventor-of-XML">not the inventor</a> of either, my
name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run!
And what ever happened to XML? Let’s shake off the dust and have a look.</p>
<h2 id='p-1'>JSONiana</h2>
<p><a href="https://datatracker.ietf.org/doc/html/rfc8259">RFC 8259</a> is now nine years old and, like all the RFCs, is
immutable. And, as is usually the case, a
<a href="https://errata.rfc-editor.org/search/?rfc_number=8259">list of errata</a> has built up over the years.</p>
<p>Until a few days ago, many of the errata apparently hadn’t ever been looked at for a period
measured in years. Now they’ve all been rejected or accepted. Despite a couple having been marked “Held for Document Update”,
nobody is interested in writing a superseding RFC. There are already enough other JSON specs
[<a href="https://www.json.org/json-en.html">1</a>][<a href="https://ecma-international.org/publications-and-standards/standards/ecma-404/">2</a>]
but fortunately they all say the same thing.</p>
<p>Which is to say, JSON is what it is and will never be improved or changed in any way. Among other things, there are literally
billions of instances of JSON-reading software out there, most of them embedded in dumb low-rent devices that will never be
updated.</p>
<p>Granted, it’s irritating that JSON doesn’t have comments (ProTip: Add a “comment” field to your messages) and makes it
hard to get the commas right and doesn’t distinguish between the different flavors of numbers and doesn’t have date/time literals and
<a href="https://www.rfc-editor.org/rfc/rfc9839.html">allows junk Unicode</a>. Not gonna be fixed. Which is OK because
empirically, it’s good enough. Probably a few megabytes of JSON will have flowed back and forth between your phone or computer
and the Net while you’ve been reading this.</p>
<p>Of course, there’s YAML and TOML and CBOR and Thrift and Avro and Protobufs and Markdown and more. Maybe for your app one of
them is a better choice than JSON.</p>
<p>Oh wait, I forgot, there is a new thing:
<a href="https://datatracker.ietf.org/wg/jsonschema/about/">Work is under way</a> to write an RFC specifying JSON Schema,
which is quite widely used but not well specified. Good luck to the people working on that; I’m not one of them.</p>
<p>The best thing about JSON is nobody really has to think about it any more.</p>
<h2 id='p-2'>XMLitude</h2>
<p>Last month, on the “xml-dev” mailing list,
<a href="https://en.wikipedia.org/wiki/Elliotte_Rusty_Harold">Elliotte Rusty Harold</a> remarked, on the subject of XML
generally: “Count me as one
of the people who thinks it’s mostly obsolete and ultimately a failed experiment. People don’t want or need markup
that’s designed to make documents easier for computers to read but harder for humans to write.”</p>
<p>I replied and here’s an expanded version of what I wrote:</p>
<p>Irrespective of the current uptake, and seen as an experiment, XML has been
a success. It proved that:</p>
<ol>
<li><p>You can have a data interchange format that is radically independent
of your computer architecture, operating system, programming language, and
application.</p></li>
<li><p>The only sane text standard for modern computing is Unicode, which in
practice is affordable and reasonably straightforward to use.</p></li>
</ol>
<p>Prior to 1996, neither of these things were widely believed. The only
“interoperable” data format was ASN.1, which is horrible and lacked quality
software support. The resistance to Unicode was significant and
widespread, and adoption was disappointing. Today, #1 and #2 above are the
(low) bar to entry for any data packaging technology.</p>
<p>As for current use, I guess “office" document formats are XML for the long
haul
[<a href="https://en.wikipedia.org/wiki/Microsoft_Office_XML_formats">3</a>]
[<a href="https://en.wikipedia.org/wiki/OpenDocument#Application_support">4</a>], but relatively few developers ever have to
look inside them (thank goodness). XML remains a de-facto standard for text-oriented humanities computing
[<a href="https://tei2026.tei-c.org">5</a>], and for
legislative data processing [<a href="https://www.legislation.gov.uk/developer/formats/xml">6</a>][<a
href="https://www.elegislation.gov.hk/datagovhk/hkel_data-dictionary_en.pdf">7</a>][<a href="https://www.govinfo.gov/app/search/curated/uslm">8</a>].
At one point it dominated things like
aircraft maintenance manuals, don’t know if that’s still true. RSS and Atom
aren’t what they once were, but are far from gone; they’re how I drive my own personal news-reading.
Then of course there’s
<a href="https://en.wikipedia.org/wiki/EPUB">EPUB</a>; do you read books on screens?
And are
<a href="https://en.wikipedia.org/wiki/XBRL#Lack_of_accuracy">XBRL</a> and
<a href="https://en.wikipedia.org/wiki/Universal_Business_Language#Global_Adoption_and_Implementation">UBL</a> still things?</p>
<p>It is true that there are few-to-no new applications that I know
of that have much reliance on XML.</p>
<p>Eh, it’s OK, it had a good run and moved the needle. It’ll keep a few
folks employed for the foreseeable future.</p>
<p>Like JSON, the best thing about XML is nobody has to think about it any more. Oops, if you got here I guess you just
did. Sorry bout that.</p>
</div></content></entry>
<entry>
<title>Tab Trick</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore' />
<link rel='replies' thr:count='5' type='application/xhtml+xml' href='/ongoing/When/202x/2026/05/24/Tab-Lore#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore</id>
<published>2026-05-24T12:00:00-07:00</published>
<updated>2026-05-24T11:36:06-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Web' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Web' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>A person watching over my shoulder asked “How are you switching around so fast?” and I realized that while most readers here know this trick, some may not, and it’s awfully useful</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>A person watching over my shoulder asked “How are you switching
around so fast?” and I realized that while most readers here know this trick,
some may not, and it’s awfully useful.</p>
<p><i>[Update: I published an earlier version of this
<a href="/ongoing/When/201x/2012/04/22/Tab-Lore">in 2012</a> but have got that “How do you” question a couple times recently, so
maybe it’ll still be new news to a few people.]</i></p>
<p>In all the browers I use, Command-1 takes you to your leftmost tab,
command-2 to the next one over, and so on up to Command-8. Command-9 selects the
rightmost tab. Also, you can right-click on a
tab and “pin” it; which shrinks it down to just the favicon, and moves it as far left as
it can go.</p>
<p>So the trick is, pin the same heavily-used tabs in the same place, and
leave them there forever. In my main browser (currently Safari) it’s like
this: </p>
<ol>
<li><p><a href="https://messages.google.com/web/">SMS/RCS texts, linked to my Pixel.</a> This is a Google thing, not sure if you need to be on
Android for it to work. But for those serious conversations that remain in text-land, it’s awfully nice when you can resort to
an actual keyboard.</p></li>
<li><p>Calendar.</p></li>
<li><p>Mastodon (<a href="https://cosocial.ca/home">CoSocial</a> via the
<a href="https://phanpy.social/">Phanpy</a> client).</p></li>
<li><p>The local staging version of this blog, where I review and edit articles.</p></li>
<li><p>What you are now reading.</p></li>
<li><p>Blog comment review/approval.</p></li>
<li><p><a href="https://github.com/timbray/quamina">Quamina</a> (probably moving to Codeberg soon).</p></li>
<li><p>Bluesky; but it seems I never go there any more unless I’m following links from elsewhere. To be honest, not sure what
I’d replace it with.</p></li>
</ol>
<p>Have fun!</p>
</div></content></entry>
<entry>
<title>Declining America</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America' />
<link rel='replies' thr:count='11' type='application/xhtml+xml' href='/ongoing/When/202x/2026/05/19/Declining-America#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America</id>
<published>2026-05-19T12:00:00-07:00</published>
<updated>2026-05-20T12:08:48-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='The World/Politics' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Politics' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/AI' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='AI' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and unbeliever contributions would be welcome. I declined, because it’s in the USA</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s
mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and
unbeliever contributions would be welcome.
I declined, because it’s in the USA.</p>
<p>Here’s the text; maybe someone in a similar situation might find it useful.</p>
<hr/>
<p>Thanks to whoever thought of me for the kind invitation, which I must regretfully decline.</p>
<p>I’m Canadian and as a matter of principle feeling negative about visiting a neighboring country whose leader has repeatedly
threatened our sovereignty and shown massive disrespect for our nationhood. Particularly when that leader has followed up
similar statements about other nations with military action.</p>
<p>I could probably work around that. But there’s also the issue of entering the US; if I roll up at the border and am asked to
disclose my social media output, there’s a significant risk of an extremely negative outcome. I have a family to support and
really can’t afford that risk.</p>
<p>I still consider myself a friend of your organization, and one with strong opinions about the subjects scheduled for
discussion; my regrets about having to decline are entirely sincere.</p>
<p>—Regards, Tim</p>
</div></content></entry>
<entry>
<title>Life During Class Wartime</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime' />
<link rel='replies' thr:count='6' type='application/xhtml+xml' href='/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime</id>
<published>2026-05-03T12:00:00-07:00</published>
<updated>2026-05-06T10:28:35-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='The World/Politics' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Politics' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>War is bad. Don’t start one. But we’re already in a class war and we’re losing. Where by “we” I mean most people; the winning side comprises, roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.] So, what to do in a war one didn’t choose?</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>War is bad. Don’t start one. But we’re already in a class war and we’re losing.
Where by “we” I mean most people; the winning side comprises,
roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.]
So, what to do in a war one didn’t choose?</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/Oxfam-distribution-of-wealth.png" alt="Share of global wealth 2010-2015" class="inline" />
<h2 id='p-1'>How bad is it?</h2>
<p>It’s really bad, and getting worse fast. I recommend cruising through Wikipedia’s excellent
article on
<a href="https://en.wikipedia.org/wiki/Distribution_of_wealth">Distribution of wealth</a>; maybe jump straight to the
<a href="https://en.wikipedia.org/wiki/Distribution_of_wealth#Wealth_inequality">Wealth inequality</a> section.
I’ve pulled one helpful graph,
sourced from Oxfam, into the margin. The article has loads of other statements of the form “The richest X compared to the
poorest Y have Z times️ as much.” The values of X, Y, and Z are uniformly saddening.</p>
<p>As a resident of a wealthy West-Coast New-World city, the effects of pathological inequality are in my face every day:
Bentleys gleaming on the road, ragged people huddled in the rain cadging cash outside the drugstores,
<a href="https://homelesshub.ca/community_profile/vancouver/">thousands homeless</a>.</p>
<h2 id='p-5'>Why is that bad?</h2>
<p>It’s not only sinful by any sane definition of sin, but stupid, inefficient, and damaging. I turn once again to
Wikipedia: <a href="https://en.wikipedia.org/wiki/Effects_of_economic_inequality">Effects of economic equality</a>.
I’ll add one pointer to an effect that is less obvious: It
<a href="https://talkingpointsmemo.com/cafe/inquality-affordability-tax-wealthy">exacerbates the unaffordability crisis</a>.</p>
<p>One effect of the increasing imbalance between the ultra-wealthy and
everyone else is the emergence of, effectively, a hereditary aristocracy. “Wait!” you exclaim, “How about high income-tax rates for
the wealthy, and inheritance taxes?” You might well ask. It turns out those are no longer operative. I’ll get into
details about that, but first…</p>
<h2 id='p-3'>A parable: Grant Gustavson</h2>
<p>I am, as previously related (see
<a href="/ongoing/When/202x/2025/05/04/Southsiders">Southsiders</a> and
<a href="/ongoing/When/202x/2025/11/23/Soccer-vs-Football">Fútbol Joy</a>) a fan of the Vancouver Whitecaps Football Club (VWFC)
who play in
<a href="https://www.mlssoccer.com">Major League Soccer</a>. It’s affordable, light-hearted, high-drama, high-quality
entertainment and has lifted my spirits notably in the recent dark years.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023555451.png" alt="Fans with a “Save the Caps” message" />
<img src="https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023603197.png" alt="Fans with a “Save the Caps” message" />
<div class='caption'><p>Vancouver Whitecaps fans bring the love</p></div>
<p>However, it appears that Vancouver’s about to lose the Whitecaps, at the whim of a Vegas-based purchaser, of whom
<a href="https://www.nytimes.com/athletic/7244005/2026/04/30/las-vegas-vancouver-whitecaps-mls-buyer-gustavson/">The Athletic
writes</a>:</p>
<blockquote><p>The potential buyer is Grant Gustavson, the son of Kentucky billionaire Tamara Gustavson and grandson of B. Wayne
Hughes, founder of Public Storage, according to multiple sources with knowledge of the discussions. Forbes estimates Tamara
Gustavson’s net worth at $8.5 billion.</p>
<p>Gustavson, 30, lives in Las Vegas. A graduate of the University of Southern California, he has been involved with the
athletic department at his alma mater and helped to develop the Name, Image and Likeness (NIL) program there. He continues to
work with the USC basketball program and is also involved in the management of his family’s farm, “the country’s premier
thoroughbred farm with decades of storied champions throughout the stables.”</p>
</blockquote>
<p>So this fucking youngster, who has life experience working at the gym at USC (where his Mom’s
<a href="https://boardoftrustees.usc.edu/trustees/">on the Board of Trustees</a>) and helping out at the family farm, can reach out
his mighty hand and snatch away a popular pleasure from another nation. <i>Droit du seigneur</i> in action.</p>
<h2 id='p-6'>Staying rich</h2>
<p>I highly, highly recommend
<a href="https://www.nytimes.com/2026/04/17/opinion/ezra-klein-podcast-ray-madoff.html">Our Tax System Should Make You
Furious</a> from the <cite>NYT</cite>. By “our” they mean America’s. First, it addresses the canard that the tax system is
actually progressive; people who like things the way they are like to say “Forty percent of people pay no federal income taxes,
and then the top 1 percent pay 40 percent of the income taxes.” (Tl;dr: Somewhere between highly misleading and a big fat lie.)</p>
<p>Second, it explains the mechanisms by which
generational wealth is accumulated and preserved, effectively in perpetuity. People like Bezos and Musk pay basically no
income tax, and the way they do it isn’t complicated or hard to understand.</p>
<p>There is actually a family of financial products called
<a href="https://en.wikipedia.org/wiki/Dynasty_trust">Dynasty Trusts</a>. The first ad that popped
up in response to my Web search had the marketing copy “Dynasty trusts: preserving family assets for future generations”.
Or, put another way, “Dynasty trusts: Starving beggars in your neighborhood.”</p>
<h2 id='p-2'>Revenue from the rich</h2>
<p>So what can we do about it? Tax expert Ray Madoff, the interviewee in the “Should Make You Furious” piece, has smart things to
say. Then there’s
<a href="https://www.lemonde.fr/en/opinion/article/2025/06/14/thomas-piketty-opponents-of-the-tax-on-the-ultra-wealthy-lack-historical-perspective_6742333_23.html">Thomas
Piketty: “Opponents of the tax on the ultra-wealthy lack historical perspective”</a>.</p>
<p>The common thread is taxation of wealth not income, because the arcane abstractions of accounting make income too easy to
hide. The argument is that a wealth tax of say 2%/year, starting at a threshold of a few tens of millions, won’t
impair the lifestyles of the seriously wealthy, but still yield systemically important public-sector revenue</p>
<p>Also worth reading, from the International Monetary Fund:
<a href="https://www.imf.org/en/blogs/articles/2018/02/13/game-changers-and-whistle-blowers-taxing-wealth">Game-Changers and
Whistle-Blowers: Taxing Wealth</a>.
Among other things, it reports that the proportion of wealth that is hidden in one offshore tax shelter or another is pretty small,
ranging from 8% in the developed countries up to 30% in poor nations. Apparently it’s harder to hide wealth than income.</p>
<h2 id='p-7'>Good karma</h2>
<p>If wealth taxation won’t touch wealthy lifestyles and will help build a safer, calmer, happier society, it feels
sort of irrational to oppose it. And some of the wealthy don’t. My favorite example of this is Avi Bryant. Check out
<a href="https://macleans.ca/politics/tax-the-rich/">I’m a Millionaire. Tax Me More, Please</a> and
<a href="https://thenarwhal.ca/canada-wealth-tax/">Meet a millionaire who wants Canada to tax the rich</a>. [Disclosure: I made
a nice little chunk of money when my tiny investment in Avi’s startup turned into pre-IPO Twitter shares.] I’m also interested in
<a href="https://patrioticmillionaires.ca">Patriotic Millionaires</a>, which Avi founded.</p>
<p>Also worth checking out: Jeff Atwood’s
<a href="https://blog.codinghorror.com/stay-gold-america/">Stay Gold, America</a> and
<a href="https://blog.codinghorror.com/launching-the-rural-guaranteed-minimum-income-initiative/">Launching The Rural Guaranteed
Minimum Income Initiative</a>. So, not all of the 0.1% are The Enemy.</p>
<h2 id='p-8'>It’s not complicated</h2>
<p>Around the world, governments are running up huge debts and cutting back social programs because the taxation revenue doesn’t
come near the amount it requires to provide a livable society. So the choice is stark: Cut and slash deeper (read: starving beggars)
or find more money. There’s lots of money out there basically just playing financial
games; it needs to be put to work doing something useful.</p>
<p>This package of ideas should be easy to sell to voters. Of course, resistance will be ferocious and
extremely well-funded. But the currently-winning side in our class war is actually a soft target. Target for what weapon, you ask?
Democracy. No need for tumbrils and guillotines. Yet.</p>
</div></content></entry>
<entry>
<title>Corey’s Captives</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives' />
<link rel='replies' thr:count='0' type='application/xhtml+xml' href='/ongoing/When/202x/2026/04/26/Coreys-Captives#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives</id>
<published>2026-04-26T12:00:00-07:00</published>
<updated>2026-04-27T12:05:14-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts/Books' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Books' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>That’s <a href='https://en.wikipedia.org/wiki/James_S._A._Corey'>James S.A. Corey</a>, which is to say Daniel Abraham and Ty Franck, and their new series <a href='https://en.wikipedia.org/wiki/The_Captive%27s_War'>The Captive’s War</a>, an in-progress work comprising 2¼ or so novels. The Coreys are of course best-known for their deservedly wildly popular <cite>The Expanse</cite> series and the subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should wade in, the following is for you</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>That’s
<a href="https://en.wikipedia.org/wiki/James_S._A._Corey">James S.A. Corey</a>, which is to say Daniel Abraham and Ty Franck,
and their new series
<a href="https://en.wikipedia.org/wiki/The_Captive%27s_War">The Captive’s War</a>, an in-progress work comprising 2¼
or so novels. The Coreys are of course best-known for their deservedly wildly popular <cite>The Expanse</cite> series and the
subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should
wade in, the following is for you.</p>
<h2 id='p-1'>Minor and meta spoilers</h2>
<p>Don’t worry, you can go on reading this even if you plan to read the books. Here’s a spoiler that has appeared in every public
mention of the book, which I’ll give away with a quote from page 102: “I think some important scientific questions have finally
been answered. Alien life exists, and they are assholes.” Which is to say, it doesn’t go well for the humans.</p>
<p>Now for the meta-spoilers. The novels are <cite>The Mercy of Gods</cite> and <cite>The Faith of Beasts</cite>, then there’s a
novella, <cite>Livesuit</cite>. I found <cite>The Mercy of Gods</cite> a bit of a grind, and if that’s all I’d read I would have
been pretty negative about this project. There is a major, <em>major</em> reveal partway into <cite>The Faith of Beasts</cite>
that changed my whole outlook on the series; it makes the storytelling velocity really pick up. It’s a little annoying that
<cite>Livesuit</cite> was published between the two full novels because it only really makes sense if you’ve finished both of
them. So do like I did, and read the novella last.</p>
<p>I have to ask why the Coreys couldn’t have pulled the curtain aside a little earlier on. And while I’m griping, let me add
that the sped-up storytelling runs into a big honking cliffhanger ending at high velocity. Harumph.</p>
<h2 id='p-2'>My take-away</h2>
<p>It could go off the rails but if they can maintain their <cite>Expanse</cite> form, I suspect this series is going to be
pretty great. The characters are fun to know and the narrative revolves around the great mother of all trolley-problem ethical
challenges, which was not nearly resolved at cliffhanger-ending time.</p>
<p>Those of us who are fussy about the plausibility of future technologies (hey, Charlie Stross) should avert their eyes from
the Coreys’ fairly low-effort attempts to explain how the aliens and humans in this story accomplish the things they do. Doesn’t
bother me much, though.</p>
<p>Having said all that, this series is not cheerful stuff; I do <em>not</em> recommend it to those who, like many in these
troubled times, are having trouble seeing the bright side of, well, anything.</p>
<h2 id='p-3'>Will I read the next volume?</h2>
<p>Yep, no hesitation. And they’ve already started working on a streaming version. Unfortunately it’s going to be on Amazon
Prime, which I haven’t missed since unsubscribing a couple years ago. Getting this thing on the screen is
going to be an extended, difficult, task. There are multiple species of aliens that the show is going to have to absolutely nail, with
emotional credibility, for the story to work. Don’t hold your breath.</p>
</div></content></entry>
<entry>
<title>Spring Evening</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras' />
<link rel='replies' thr:count='0' type='application/xhtml+xml' href='/ongoing/When/202x/2026/04/13/Modern-Cameras#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras</id>
<published>2026-04-13T12:00:00-07:00</published>
<updated>2026-04-15T22:23:17-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts/Photos' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Photos' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>On impulse, Lauren and I went out for a short walk<span class="dashes"> —</span> around just a few blocks<span class="dashes"> —</span> as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera on the way out the door</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>On impulse, Lauren and I went out for a short walk<span class='dashes'> —</span> around just a few
blocks<span class='dashes'> —</span> as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera
on the way out the door.</p>
<p>In our local community garden, here’s (I think) a
<a href="https://en.wikipedia.org/wiki/Chard">chard</a>.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56259.png" alt="Looking down on a vegetable plant with glossy green leaves and orange-yellow stalks" />
<p>That was in Vancouver’s Mount Pleasant park, small but nice and apparently never not used. Also this old blackened
fruit tree, we’re a bit past the fruit-blossom peak for this year. Nice to see I’m not the only old citizen trying to brighten
things up.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56264.png" alt="Fruit-tree blossoms on a blackened branch" />
<p>Now we’re walking up a locally-main street called Main Street or “The Main” if you’re trying to sound
hip. Someone put work into that window! I’ve bought my daughter a couple of cool birthday presents from the store behind it. My
thanks to the building across the street for providing a dark background reflection.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56265.png" alt="Used-fashion store window " />
<p>Back to the next block over from ours. A while ago a bunch of people were building little fairy/elf/hobbit villages at the
bottoms of the big old trees. This isn’t that. What is it?</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56270.png" alt="Dolls and related tree artifacts at the base of a tree in dim light" />
<p>The colors of the natural surfaces are real.</p>
<h2 id='p-1'>Cameras</h2>
<p>When I shot these, it
was getting dark but I didn’t think much, mostly just pointed and shot. (Fiddled with the aperture dial a bit.) Then I came
home and pulled them into Lightroom and didn’t need to do really anything about colors. A bit of contrast and highlights here
and there. Oh, and fairly brutal cropping, especially on that fruit-tree-flowers pic. Because like I said, I didn’t think very
much when I was shooting and I didn’t have to because on a Twenties camera you don’t.</p>
<p>I could take that heavily-cropped fruit-tree
picture and print it big enough to occupy any domestic wall in your place and yeah, there’d be grain but it wouldn’t
bother your eyes.</p>
<p>Anyhow, modern cameras are pretty great. The lowest ISO in today’s set is 2500 and the highest is 6400; the apertures range
from 2.8 to 5.6.
Bet you can’t tell the differences. My camera is a reasonably modern Fujifilm but not remotely
bleeding-edge in camera tech. (Note: 35mm F1.4, now all the Fuji fanfolk are smiling and nodding.)</p>
<p>Anyhow, there are very <em>very</em> few photographers for whom the camera they carry is the limiting factor in the
goodness of their pictures. Certainly not me.</p>
<p>Consider getting a camera. Used is fine, anything built in the last five years, maybe more, will effortlessly take brilliant
pictures in almost any conditions. Sure, your phone can take great shots too, but the feeling of walking along with something
that fits your hand and you only have to press one physical button once, that feeling, it helps you see the good pictures when they happen.</p>
<p>Then go out after and take a walk in the Spring dusk.</p>
</div></content></entry>
<entry>
<title>Password Manager Angst</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst' />
<link rel='replies' thr:count='16' type='application/xhtml+xml' href='/ongoing/When/202x/2026/04/09/Password-Manager-Angst#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst</id>
<published>2026-04-09T12:00:00-07:00</published>
<updated>2026-04-10T10:42:16-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Identity' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Identity' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Security' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Security' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Our family has used <a href='https://1password.com'>1Password</a> for many years. Most recently 1Password 7, now at least three years out of date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring <a href='https://bitwarden.com'>Bitwarden</a>. The best choice isn’t obvious; here’s the story thus far</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Our family has used
<a href="https://1password.com">1Password</a> for many years. Most recently 1Password 7, now at least three years out of
date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring
<a href="https://bitwarden.com">Bitwarden</a>. The best choice isn’t obvious; here’s the story thus far.</p>
<p>Important note: I suspect that most-to-all of the people reading this already are using a password manager. If you’re not,
please, <i><b>PLEASE</b></i> start now. Your browser probably has an OK one built-in, which is much better than
nothing.
<a href="https://www.cyber.gc.ca/en/guidance/password-managers-security-itsap30025">Here</a> is a good write-up on the basics.</p>
<h2 id='p-6'>Our needs</h2>
<p>They’re not fancy. The house contains Macs and Androids and Windows and an iPad.
We have hundreds of accounts (some require an authenticator) and a basketfull of secure notes: Government-ID numbers, recovery
codes, and so on.</p>
<h2 id='p-5'>1Password7 and 8</h2>
<p>1Password had this nice feature where you could sync between devices without involving any 1Password servers, in a variety
of ways. We used one of those and liked it.
1Password8 insists on storing your data (encrypted, more on that later). That always bothered me because, obviously, that
repository is a top-priority juicy target for all the bad guys, who range from employees of the Chinese government to geeky
narcos.</p>
<p>So we’ve been ignoring 1Password’s increasingly plaintive reminders that we were using years-out-of-date software
and chugging along with version 7. But, early this year, they broke our sync mode on the Android app and were pretty blunt that the only
way to get it back was to go to 1P8.</p>
<h2 id='p-7'>Alternatives</h2>
<p>There are plenty of password managers (Let’s just say “PMs”) out there, but as a regular scanner of the landscape,
it seems to me that 1Password
(hereinafter “1P”) and Bitwarden (“Bw”) stand out as leaders. The rest of this piece will focus on those two.
If you think I’m wrong, say so below but also please say why.</p>
<p>Note that Bw comes in two flavors: That offered as a subscription service by the company of the same name, or as an open-source
software suite you can build and run yourself.</p>
<p>This is not to say that the PMs that are starting to appear built-in to browsers and OSes are worthless or unimportant,
just that some of us need a little more.</p>
<h2 id='p-8'>The threat models</h2>
<p>Two are obvious. The first is incompetence, like for example
<a href="https://en.wikipedia.org/wiki/LastPass#Security_incidents">LastPass</a>, who apparently left the doors more or less
wide open to those bad guys I mentioned a few paragraphs ago. Complete horror-show.</p>
<p>The second is legal compulsion, where a government applies pressure to a PM provider to cough up our
secrets. Anybody who thinks governments won’t try is fooling themselves, because they’ve repeatedly said they want to, and are
eager to pass ill-considered legislation such as the
<a href="https://en.wikipedia.org/wiki/CLOUD_Act">CLOUD Act</a>. So we care about that aspect a lot.</p>
<h2 id='p-9'>1P vs Bw: Security</h2>
<p>I think they both have acceptably-good security postures; check out
<a href="https://bitwarden.com/help/bitwarden-security-white-paper/">Bitwarden Security Whitepaper</a> and
<a href="https://support.1password.com/1password-security/">About the 1Password security model</a>.</p>
<p>Both of them offer to host your data outside of the US, specifically in Canada or the EU.</p>
<p>But it doesn’t matter <em>that</em> much if a bad guy or bad government gets their hands on your password store; what
matters is whether or not they can decrypt it. I’m not an infosec professional but I know some and listen to them, and both
those security postures give me a good feeling. It’s not an accident that they’re pretty similar.</p>
<p>The actual threat isn’t so much that an adversary cracks the crypto; that’s very unlikely. It’s that they find a way to force
a PM vendor to build a back door into their software to get access to keys and passwords. For that reason, it would warm
my heart if either or both of Bw and 1P were to post a
<a href="https://en.wikipedia.org/wiki/Warrant_canary">Warrant Canary</a>.</p>
<p>But I’m going to give Bw a very slight edge. First, because of the fact that you can build and run it yourself, if you’re
willing to take responsibility for operating a server with strong security requirements. (I’m not.)</p>
<p>The source being open potentially offers a second, and more important I think, advantage: If they were able to get a
<a href="https://en.wikipedia.org/wiki/Reproducible_builds">Reproducible build</a> working, you’d have assurance that the code
you can download is the one their service is running. Which reduces the attack surface. (Mind you,
<a href="https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf">not to zero</a>.) Reproducible
builds are hard, but if they did that, it would make a difference to me.</p>
<p>On the other hand, Bw’s software development process
<a href="https://contributing.bitwarden.com/contributing/ai/">embraces GenAI</a> generally and Claude specifically.
At this stage in the growth of those technologies, this sends a chill up my spine. To be fair, 1P’s website
shouts that it’s just the thing for agentic security, whatever that means. And we don’t know anything about 1P’s internal
software-dev process.</p>
<h2 id='p-10'>1P vs Bw: Fit and finish</h2>
<p>1P wins this one. The problem is, do they always pop up when needed and never when they’re not? Can they fill every login
field that needs filling? Does the popup show you just what you need and nothing extraneous? I’ve used both and 1P is just
better.</p>
<h2 id='p-11'>Business issues</h2>
<p>This one is also pretty well a saw-off. Both of them have taken substantial chunks of VC money and thus are going to
come under relentless pressure to enshittify. I worry a little less about this because from what I read,
there’s not much lock-in.</p>
<p>Personal experience too: I recently did an export of everything out of 1P and into Bw and it all Just Worked, albeit putting all
my stuff into a folder named "No Folder" that I can’t figure out how to rename.</p>
<p>Both Bw and 1P are subscription-only, at prices that seem fair to me.</p>
<h2 id='p-12'>Death and recovery and pen and paper</h2>
<p>As I was reading up on this stuff, the issue of recovering access to your PM after it had been lost came up a couple of times.
Here’s a scenario where that could be really important: I die. And then my wife needs to get access to bank accounts and
business emails and so on.</p>
<p>Somebody (I’ve lost the link) was horrified that one of the PMs suggested writing the password down on a piece of paper as a
last-resort measure, but I’m here to tell you that they’re wrong. My wife has an envelope containing a piece of paper on which
appear the passwords for my PM and Mac, my mobile-phone PIN, and a very small number of other secret things she might really
need if I’m suddenly gone. I have no idea where she put it, but she’s really smart so I don’t worry.</p>
<p>You should probably do something like this too.</p>
<h2 id='p-13'>What will we do?</h2>
<p>We’ve paid for a year’s worth of both Bw and 1P. At the moment, we’re leaning to 1P because it’s a little more polished.
Which matters because my PM is something I use many times every day. Also they’re somewhat Canadian.</p>
<p>If you think we’ve missed something, please do let us know.</p>
</div></content></entry>
<entry>
<title>Long Links</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links' />
<link rel='replies' thr:count='2' type='application/xhtml+xml' href='/ongoing/When/202x/2026/03/24/Long-Links#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links</id>
<published>2026-03-24T12:00:00-07:00</published>
<updated>2026-03-26T16:36:32-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<category scheme='https://www.tbray.org/ongoing/What/' term='The World' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>This will be the 30<sup>th</sup> Long-Links outing. I’m 100% sure that there does not live a human being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to open one occasionally. All aboard!</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>This will be the 30<sup>th</sup> Long-Links outing. I’m 100% sure that there does not live a human
being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to
open one occasionally. All aboard!</p>
<p>Sadly, more than half the Long Links, this time out, are about AI. I almost decided to bury the piece but, whatever you or I
think, the subject matters. And the ones I posted are a tiny fraction of those I read (or tried to) and I think are
useful and not immoral.</p>
<p>But, let’s put all the non-AI stuff at the front so you can stop reading partway through if you’ve just had enough of
that stuff.</p>
<h2 id='p-1'>Not about GenAI</h2>
<p>Paul Ford has, after a lengthy gap, started writing again at
<a href="https://ftrain.com">ftrain.com</a>. Excellent!
Go there any day and there’ll almost certainly be something good at the top of the
page. He’s a technologist and, yeah, writes about AI sometimes, but
<a href="https://ftrain.com/warp-and-woof">Warp and Woof</a> is about dogs and their people. Charming.</p>
<p>I think most people who aren’t ultra-wealthy now agree that inequality is currently a central problem of our society. But it
would be nice to put some numbers behind that assertion.
<a href="https://paulkrugman.substack.com/p/talking-with-gabriel-zucman">Here</a> is a conversation between Paul Krugman,
Nobel-prizewinning economist, and Gabriel Zucman, a French specialist in the subject and frequent Piketty collaborator.
Now, there are quite a few paragraphs up front of talk about general macroeconomic issues and comparisons between the US and Europe,
which I enjoyed reading. And then inequality; here’s Zucman: “And so everybody now understands what was long understood for
centuries, very much including in the West, which is that extreme wealth is never virtual, it is always extreme power.”</p>
<p>CO<sub>2</sub> densities in Parts Per Million are a good measure of how full your inhalations are of others’ exhalations. And
thus of how likely you are to catch something by breathing. Especially, Covid, which everyone with a half a brain knows is not
nearly over. Anyhow, A. Grieve-Smith offers
<a href="https://grieve-smith.com/ftn/2026/03/nine-observations-from-carbon-dioxide-monitoring/">Nine observations from carbon
dioxide monitoring</a>: “I’ve been checking carbon dioxide levels for over three years now, and I’ve started to see patterns.”
This piece could save your life, and that’s not a metaphor.</p>
<p>Patrick McKenzie, who writes <cite>Bits About Money</cite>, has an icy-cool style and this Link could be a Little Less Long,
but I learn interesting things every time I read one of his pieces.
<a href="https://www.bitsaboutmoney.com/archive/fraud-investigation/">Fraud Investigation is Believing Your Lying
Eyes</a> launches from the Minnesota child-care fraud story, but is mostly, as the title suggests, relates the conventional wisdom
(which I didn’t know) about how to go sniffing around for in-progress fraud.
From which “As a fraud investigator, you are allowed and encouraged to read Facebook at work.”</p>
<p>Hari Kunzru has written good books and is a former London native. <cite>Harpers</cite> gave him an assignment:
Walk around and write about the city, thus
<a href="https://harpers.org/archive/2026/02/another-london-situationists-hari-kunzru/">Another London: Excavating the
disenchanted city</a>. It’s a tour through time as much as space<span class='dashes'> —</span> London, obviously, is
history-drenched<span class='dashes'> —</span> and not just politics and power either, but arts and ideas. The writing is
beautiful. It’ll take a chunk out of your day but the trade-off is good.</p>
<p>Here’s something beautiful:
<a href="https://thehtml.review/05/">The HTML Review</a>. Now I want to publish there, but I’d have to up my
writing game.</p>
<h2 id='p-5'>Lankum</h2>
<p>They’re an Irish band I just discovered, courtesy of Qobuz. The music grows out of traditional Irish acoustic folk. They play
old and new songs and throw in a heavy dose of snarl and drone. Some of the chords are like rotated model augmented 11ths or some
such, scratchy around the edges but helped with an itch I hadn’t known I had. Terrific musicians. Here’s
<a href="https://www.youtube.com/watch?v=lUReQ9GhT8s">Hunting the Wren</a>. I might get over-excited and fly to Ireland to see them.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/24/Lankum.png" alt="Lankum in concert" />
<h2 id='p-2'>Tech, but not GenAI</h2>
<p>Sebastian Pipping is, among other things, an Open-Source software developer, with whom
<a href="/ongoing/When/202x/2021/03/24/XMLWF-dash-k">I’ve collaborated</a>. His recent
<a href="https://blog.hartwork.org/posts/learn-from-me/">Learn from me!</a> begins “Not too long ago, someone literally asked me
what they "could learn from me", and that question has stuck with me since.” So he offers a few candidate lessons. What a nice
idea! What could people learn from <em>you</em>?</p>
<p>Filippo Valsorda, another OSS dev, is particularly interesting because he and a few partners have apparently figured out
<a href="https://geomys.org">how to make a living from their work</a>.
He recently published
<a href="https://words.filippo.io/dependabot/">Turn Dependabot Off</a> and I’m not going to offer a word of explanation because
if you understand the title I guarantee you’ll be interested in the piece. (I’m terrified of Dependabot.)</p>
<p>It seems like every day I hear from another person who’s trying to get their personal lives off Big Tech. Me too. So…
In <cite>The Verge</cite>,
<a href="https://www.theverge.com/tech/879114/best-big-tech-app-alternatives-installer">How to un-Big Tech your online life</a>.
And from Paris Marx,
<a href="https://disconnect.blog/getting-off-us-tech-a-guide/">Getting off US tech: a guide</a>. We are in the early stages of
de-Googling our family life, so this stuff is super useful. I expect to see more of it.</p>
<h2 id='p-4'>Amazon polemics, maybe a little AI</h2>
<p>I don’t loathe Amazon any more nor less than the rest of the Big Techs, but boy are there are a lot of people
publishing diatribes against the company. Not sure I understand why. But, worth reading.</p>
<p>In
<a href="https://markatwood.substack.com/p/how-amazon-dies-a-possible-maybe?">How Amazon Dies: A Possible, Maybe Likely
Future</a> Mark Atwood predicts that the infestation of amazon.com with highly-profitable advertising is a perhaps-fatal
blunder. What’s maybe more interesting is that he points out several potential Amazon alternatives that don’t suffer from
that same infestation; they hadn’t occurred to me.</p>
<p>And from a year ago, Cory Doctorow’s
<a href="https://pluralistic.net/2025/03/13/electronic-whipping/#youre-next">The future of Amazon coders is the present of
Amazon warehouse workers</a> introduces the “shitty technology adoption curve”. I missed this piece at the time but boy, is it
easy to believe.</p>
<p>Finally, reading
<a href="https://www.bigtechnology.com/p/writing-crystalized-thinking-at-amazon?">Writing Crystalized Thinking At Amazon. Is AI
Muddying It?</a> angered me. While I have no remaining respect or affection for any of the Big Techs, I enjoyed my time at AWS
and part of it was the writing culture. I think the Way Of The Six-pager is the best business-process innovation I witnessed in
my working life. If Amazon really is slopifying it, I predict disastrous outcomes. </p>
<h2 id='p-3'>OK, here’s the AI stuff</h2>
<p>My own position, just to be clear: There are going to be LLM applications in a few domains here and there, and one of them is
software development, but they won’t be nearly big enough to damage earth’s climate any further, nor to prevent the bubble from
popping. That said…</p>
<p>Let’s do the worst first:
<a href="https://www.heavybit.com/library/article/write-only-code">Write-Only Code</a> lays out a genuinely frightening future.
Quote: “I was maniacally insistent that any proposed change to our SDLC (software development life cycle) be evaluated first
through the lens of developer velocity.”
I think I’d rather not go there.</p>
<p>Most of us who watch the space, and have no idea where it’s going or what the future holds, are I think particularly
interested in Anthropic’s Claude. If you’re one, you’ll probably enjoy
<a href="https://www.newyorker.com/magazine/2026/02/16/what-is-claude-anthropic-doesnt-know-either">What Is Claude? Anthropic
Doesn’t Know, Either</a>.</p>
<p>It’s probably not that GenAI is intrinsically immoral. As Karl Bode writes,
<a href="https://karlbode.com/the-problem-with-ai-is-shitty-human-beings/">The Problem With AI Is Shitty Human Beings</a>. I
covered some of the same territory last year in
<a href="/ongoing/When/202x/2025/07/06/AI-Manifesto">The Real GenAI Issue</a>, but Bode is excellent:
“…the grand vision of modern automation's benefits can never materialize if its stewards are <i>foundationally fucking terrible
human beings disinterested in the contours of empathy.</i> If we're not talking prominently about that, we aren't really talking at
all.” (Emphasis his.)</p>
<p>One of the things that shitty people do is lie. Like for example charismatic leaders of AI “startups” valued in the tens of
billions. But then so do the less-visible, which provoked Kyle Kingsbury A.K.A. Aphyr to write
<a href="https://aphyr.com/posts/405-trudging-through-nonsense">Trudging Through Nonsense</a>. It’s sad and angry but I think
usefully so.</p>
<p>Armin Ronacher is not bursting with rage, but he is skeptical about all the right things in
<a href="https://lucumr.pocoo.org/2026/3/20/some-things-just-take-time/">Some Things Just Take Time</a>. Quote:
“There’s a feeling that all the things that create friction in your life should be automated away. That human involvement should
be replaced by AI-based decision-making. Because it is the friction of the process that is the problem. When in fact many times
the friction, or that things just take time, is precisely the point.”</p>
<p>For another cool-voiced critique, here’s Rishi Baldawa:
<a href="https://rishi.baldawa.com/posts/ai-mandates-manufacture-noise/">AI Mandates Manufacture Noise</a>. While I’m not
entirely a burn-it-all-with-fire GenAI foe, the “boss mandate” always struck me as dumb, and Rishi spells it out clearly
and simply. It’s really good, so here are a couple of quotes: “But those not in the weeds had no way to know any of this
because… well they aren’t in the weeds. So they feel compelled to solve their information gap with a policy hammer.” and
“As said before, none of this is revolutionary and that’s sort of the point. AI is a ’mirror and multiplier‘. It intensifies
whatever was already happening.”</p>
<h2 id='p-6'>That’s all</h2>
<p>Let’s really hope the bubble bursts soonest. Because when the money goes away, so will a lot of the shitty people.</p>
</div></content></entry>
<entry>
<title>Nash Burns Saves the Day</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns' />
<link rel='replies' thr:count='1' type='application/xhtml+xml' href='/ongoing/When/202x/2026/03/20/Nash-Burns#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns</id>
<published>2026-03-20T12:00:00-07:00</published>
<updated>2026-03-20T13:53:25-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/Web' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Web' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their emails to us were bouncing. Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on. Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly price, and has been trouble-free</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their
emails to us were bouncing.
Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on.
Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly
price, and has been trouble-free.</p>
<p>So, what could be wrong? We investigated and discovered that Google was offering a new-and-improved MX-record option,
although they emphasized that the old setup should still work. Anyhow, we installed the New Thing and it didn’t help.</p>
<p>So, we filed a ticket with CWH tech support and somebody got back to us pretty quick, saying they’d changed a firewall
setting that was blocking connections to Germany. I detect the scent of GDPR, but whatever. <br/>
Euro-email: Bounce, bounce.</p>
<p>CWH: Probably an MX-record issue, and we should wait for DNS propagation. Several days passed and
bounce, bounce, bounce. <br/>Us: “Not DNS propagation.” <br/>CWH: “Still could be.”</p>
<p>So we VPN’ed to Germany and discovered we couldn’t ping
Textuality’s IP address. Smells like a firewall to me. We told CWH that.</p>
<p>CWH: We have made some changes to firewall settings.
<br/>EMail: bounce, bounce, bounce.
<br/>VPN+Ping: Request timeout, request timeout, request timeout.</p>
<p>CWH: Try traceroute?
<br/>VPN+Traceroute: 14 hops, no joy.</p>
<p>CWH: Your VPN settings must be wrong. Here are instructions to use Windows PC VPN correctly.<br/>
Us: Thanks but no.</p>
<p>CWH: Your MX records are configured incorrectly. <br/>Us: No, they are correct per Google guidance. We sent an email beginning
“Please believe us.”</p>
<p>CWH: It must be DNSSEC. Check to see if your registrar implements DNSSEC. <br/>Us: We are using your DNS servers.</p>
<p>CWH: Perhaps your registrar is broadcasting an old record? <br/>Us: Our registrar doesn’t do DNSSEC.</p>
<p>At this point we consulted a friend who’s an expert on DNS and Email and even DNSSEC. He verified that not only could
you not ping
Textuality from Germany, you also couldn’t ping CWH or its name servers. Firewall firewall firewall!</p>
<p>CWH: “I did test the site access using a 3rd party application, and it seems to be accessible on all parts.” <br/>Us: Look at the
output, it shows we can’t be reached from anywhere in Germany.</p>
<p>Also, for all the remaining messages in the email trail, we prefixed our input with bold face extra-large text reading:
<b>Systems located in Germany cannot ping Textuality.com’s IP address, nor can they ping the IP addresses of textuality.com’s
designated name servers. This is the problem.</b></p>
<p>CWH: Let’s try migrating you to a different server; try pinging these hostnames. <br/>VPN+Ping: Nope.</p>
<p>CWH: Are you sure it’s not your VPN settings? <br/>Us: Are you sure it’s not your GDPR settings?<br/>
CWH: Raising your issue to Tier 3.</p>
<p>20 hours pass, then we get email from:</p>
<h2 id='p-1'>Nash Burns!</h2>
<p>…who said “This has been fixed.” It was.
Nash’s email signature was “Nash(Rajaneesh) B”. What a great name, though. Thanks, Nash.</p>
<h2 id='p-2'>Am we mad?</h2>
<p>Not really. Consumer-facing tech support is hard. None of their suggestions were unreasonable.
Doing GDPR correctly is hard.
They’ve been just fine for years and were having a bad week.
Could we expect better from any of CWH’s local competitors? Probably not.</p>
<p>It wasn’t funny at the time, but looking back, it kind
of is.</p>
</div></content></entry>
<entry>
<title>Pure Sound Please</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please' />
<link rel='replies' thr:count='1' type='application/xhtml+xml' href='/ongoing/When/202x/2026/03/16/Pure-Sound-Please#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please</id>
<published>2026-03-16T12:00:00-07:00</published>
<updated>2026-03-18T14:34:31-07:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts/Music' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Music' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>This last weekend we attended a concert entitled <cite>Lenten Reflection</cite> at Vancouver’s Catholic <a href='https://en.wikipedia.org/wiki/Holy_Rosary_Cathedral_(Vancouver)'>Holy Rosary Cathedral</a> featuring the <a href='https://bellevoci.ca'>Belle Voci</a> vocal group and the <a href='https://chilliwacksymphony.com/cantare-super-orchestram/'>Cantare Super Orchestram</a> early-music band. The music was fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below). And so I get to report on good music and yell at production people</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>This last weekend we attended a concert entitled <cite>Lenten Reflection</cite> at Vancouver’s Catholic
<a href="https://en.wikipedia.org/wiki/Holy_Rosary_Cathedral_(Vancouver)">Holy Rosary Cathedral</a> featuring the
<a href="https://bellevoci.ca">Belle Voci</a> vocal group and the
<a href="https://chilliwacksymphony.com/cantare-super-orchestram/">Cantare Super Orchestram</a> early-music band. The music was
fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below).
And so I get to report on good music and yell at production people.</p>
<p>A cathedral is a nice place for a concert!</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_215727574.png" alt="Interior of Vancouver’s Holy Rosary Cathedral" />
<p>The concert opened with just the singers, their voices drifting down from a high place behind us, a balcony or choir loft.
There was no incremental accompaniment and no amplification; the music flowed from vocal cords to
eardrums<span class='dashes'> —</span> not directly, of course, there was lots of reflection and reverberation introduced by the
Cathedral space. The singers were polished and expressive and the sound, drifting through the vast space, beyond exquisite.</p>
<p>They sang a lovely piece by Byrd (1539-1623). Then the instrumentalists played a number by von Biber (1644-1704) while the
singers snuck downstairs. Joined, they performed Bach’s BWV
<a href="https://en.wikipedia.org/wiki/Komm,_Jesu,_komm,_BWV_229">229</a> and
<a href="https://en.wikipedia.org/wiki/Nach_dir,_Herr,_verlanget_mich,_BWV_150">150</a>, then pieces by Pergolesi (1710-1736)
and Steffani (1654-1728).</p>
<p>The Bach pieces, as usual, had more music in the music, but the others were also fun. It was a small ensemble: In
the choir, five sopranos, five altos, a countertenor, four each tenors and basses. The band had five baroque
violins, a baroque viola, a baroque cello, a
<a href="https://en.wikipedia.org/wiki/Violone">violone</a> (think, string bass with frets), a baroque bassoon, and a player
doubling on harpsichord and organ. Thus, an ensemble quite likely not too much bigger or smaller than the ones playing this
music in the 1700s, when it was new.</p>
<h2 id='p-2'>That sound</h2>
<p>Once again, the sound was something special and yeah, the musicians were excellent, but for me, the key thing was the lack of
amplification: vocal cord to eardrum via cathedral. It’s always seemed obvious to me that you can’t run music through a bunch of
electronics and speaker mechanics without changing it; if only spatially, with the sounds coming from speaker diaphragms located
somewhere away from the human musician.
To my ears, there is a fragile magic in pure unamplified sound. I lack the words to describe the difference but it’s not
subtle. </p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_212418188.png" alt="“Lenten Reflections” concert singers and players" />
<p>Does this mean that everything was perfect? No; the choir was a little bit male-heavy; some of the soprano and especially
alto lines were part-hidden behind the massed male voices. Also, the bassoon was right at the front of the stage;
While the playing was fine, it felt as though it were musically, not just physically “in front of” the band and
singers.</p>
<p>Both of these could have been fixed, by telling the men to take it down a notch or having one or two fewer of them. And by
moving the bassoon back to the usual woodwinds spot behind the strings. Still, these were very minor imperfections.</p>
<p>Oh, and the performance and sound of the bass line on that violone was absolutely awesome; clearly audible as a thing on its
own while it wove all the other musical threads together.</p>
<p>I’ve discovered that few classical musicians share my passion for unamplification. I hear things like “I want a
<em>full</em> sound or “The soloists need to cut through the orchestra.” Which, well, OK, but somehow people managed to
accomplish those things for centuries, before amplifiers and speakers were invented.</p>
<h2 id='p-1'>22 months?</h2>
<p>That’s since May of 2024 when I took in the
<a href="/ongoing/When/202x/2024/05/26/TTB">Tedeschi-Trucks Band</a>, whose music couldn’t be more different from anything
called “Lenten Reflections”: electric not acoustic, profane not sacred. But crystal clear and perfectly balanced
sound; so much better than most electric bands achieve.</p>
<p>My sincere thanks to the musicians and their leaders for a lovely experience. And my message to everyone co-ordinating and
leading live music performances: Of course the first priority has to be the quality of the music, but think about the sound and
try to be better. Better than than most performances manage, these days.</p>
<p>We know it’s possible.</p>
</div></content></entry>
<entry>
<title>Because Algospeak</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak' />
<link rel='replies' thr:count='2' type='application/xhtml+xml' href='/ongoing/When/202x/2026/03/05/Because-Algospeak#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak</id>
<published>2026-03-05T12:00:00-08:00</published>
<updated>2026-03-07T10:29:41-08:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Language' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Language' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Life Online' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Life Online' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Recently I read <a href='https://en.wikipedia.org/wiki/Because_Internet'>Because Internet</a> by <a href='https://gretchenmcculloch.com'>Gretchen McCulloch</a> and <a href='https://en.wikipedia.org/wiki/Algospeak_(book)'>Algospeak</a> by <a href='https://en.wikipedia.org/wiki/Adam_Aleksic'>Adam Aleksic</a>. The language we speak (and text) to each other is at the core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth. So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Recently I read
<a href="https://en.wikipedia.org/wiki/Because_Internet">Because Internet</a> by
<a href="https://gretchenmcculloch.com">Gretchen McCulloch</a> and
<a href="https://en.wikipedia.org/wiki/Algospeak_(book)">Algospeak</a> by
<a href="https://en.wikipedia.org/wiki/Adam_Aleksic">Adam Aleksic</a>. The language we speak (and text) to each other is at the
core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth.
So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/covers.png" alt="The covers of “Because Internet” and “Algospeak”" />
<h2 id='p-1'>Because Internet (2019)</h2>
<p>Its approach is historical and its voice fairly uninflected. It smiles and
argues, but it doesn’t ROFL nor does it YELL AT YOU. The history is longer, perhaps, than most people reading this have
been online (or even alive). Ms McCulloch goes back to the days of BBSes (“bulletin-board systems”) and ListServs and IRC. Some of
the jargon and formulations of those days live on; you’d be surprised.</p>
<p>Here’s her table of contents.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/BI-toc.png" alt="Table of Contents from “Because Internet”" />
<p>The analysis is grounded in the formalisms of the author’s profession, academic linguistics. Nothing wrong with that.</p>
<p>Let’s look at a couple of her ideas, beginning with Chapter 1’s “Informal Writing”. A few of us, back in the late
Eighties, noticed that computers in general and the then-nascent Internet in particular were driving a writing
renaissance.</p>
<p>Before computers, a knowledge worker who had laboriously constructed essays in college quite likely wrote
almost nothing for the rest of their working life. People talked face-to-face or on the phone, and dictated to
secretaries. Written communication was seen as necessarily formal and disjoint from the way we spoke, or that we wrote in
personal correspondence. Then, suddenly, everyone was sitting at a keyboard only seconds away from everyone else’s screen.
McCulloch goes deep on this:</p>
<blockquote><p>In the future, the era of writing between the invention of the printing press and the internet may come to be
seen as an anomaly—an era when there arose a significant gap between how easy it was to be a writer versus a reader. An era when
we collectively stopped paying attention to the informal, unedited side of writing and let typography become static and
disembodied.</p>
<p>The internet didn’t create informal writing, but it did make it more common, changing some of our previously spoken
interactions into near-real-time text exchanges.</p></blockquote>
<p>From which all of this follows. It feels like a central insight. I suppose you could argue that centrality of informal text
is fading in the face of short-form video. Maybe,
it’s too soon to tell.</p>
<p>Then consider chapter 5, about emojis. Linguists obviously need to think about them because now they’re an
integral part of written language. McCulloch’s insight is that they correspond almost exactly to gestures, the way we use
our hands to add force to our speech. Obviously, for example, “👍”. Or when you’re talking about something completely
loopy and you twirl your index finger by your ear? You meant “🤪”.</p>
<p>I offer the emoji story for flavor, an example of a linguist’s approach to what we’re doing to our language with our
networks.</p> <p>McCulloch has lots more of this stuff.
I enjoyed <cite>Because Internet</cite> a lot, partly because I’m old and my memories stretch back to those BBS and
IRC days and I had a front-row seat for the decades of linguistic seething and heaving. And also because I’m a
<a href="https://www.rfc-editor.org/rfc/rfc9839.html">Unicode geek</a>.</p>
<h2 id='p-2'>Algospeak (2025)</h2>
<p>The subtitle is “How Social Media Is Transforming the Future of Language”. OK, but…
Social media is a fertile field for language evolution. Thing is, corporate social media discourse
lives in the dire grip of the proprietors’ algorithms. And that’s where Adam Aleksic focuses. He treats all of them
as a single opaque object, “The Algorithm”, which I think is fair because they all are designed with one goal: To
maximize the effectiveness of human conversation at generating advertising revenue.</p>
<p>First, the Table of Contents.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/03/05/AS-toc.png" alt="Table of Contents from “Algospeak" />
<p>Aleksic knows whereof he speaks: As “Etymology Nerd”, his aggregate following across TikTok, Instagram, and YouTube is
over three million. He’s all about cool bits and pieces of
linguistics, often Internet-specific usages.
If I had the patience for podcasts I suppose his would be near the top of my list.</p>
<p>He really enjoys his work and has fun talking about some of Social Media’s more colorful linguistic extrusions; check
that Table of Contents. I’m kind of old and I learned a lot about the words and emojis younger folk emit, and I think most folks,
even those just out of their teens, would too. I’m on a Discord for a
<a href="/ongoing/What/Sports/Soccer/">Major League Soccer</a> team’s fans, and while it’s totally all-ages, I can say I am regularly
less mystified than I was before I read <cite>Algospeak</cite>.
For example, now I know what it means when someone tosses “💀” into a chat. Do you?</p>
<p>Aleksic isn’t averse to a little history himself. Looking back over the successive online-jargon volcanoes, he argues
convincingly that two stand out as extra productive. First of all, the short-lived (but hot stuff at the time)
<a href="https://en.wikipedia.org/wiki/Vine_(service)">Vine</a> video platform. Second, the incel cesspool; sad but
(apparently) true.</p>
<h2 id='p-3'>The Algorithm</h2>
<p>Remember, it’s all about what advertisers want. And wow, do they ever want a lot of things. I’ll just touch on a few of
Aleksic’s points.</p>
<p>First of all, they don’t want to find themselves next to downers. So if you want to talk about death or suicide or rape or
racism or rage,
you need to fool The Algorithm. Thus “unalive” and many other dodges. Of course, The Algorithm learns about them so you
have to keep dodging. Neither side of this struggle can stay ahead for long.</p>
<p>Here’s another thing I didn’t know: Apparently written Chinese is particularly rich in techniques for euphemizing, making it
easier for users of that language to evade, for a time, The Algorithm.</p>
<h2 id='p-4'>Partitioning people</h2>
<p>Another big thing The Algorithm likes is grouping people into smaller and smaller baskets based on interests, generations,
and many other criteria. This is because advertisers can aim very specific campaigns at just exactly the right cohort of people who
are likely to buy what they’re selling. Here’s a quote; See how the language fills in behind advertisers’ pressure?</p>
<blockquote><p>It doesn’t matter how much I label myself. If I’m a demisexual goblincore Gen
Z Swiftie, I guarantee there are still others like me. The only thing these labels really change about me is that they make me
easier to classify and market to. Ironically, true individuality may come out of a <em>lack</em> of labels and stories, because
there’s greater freedom of expression with a blank slate. If everybody’s the “main character,” then nobody is.</p></blockquote>
<p><cite>Algospeak</cite>, unlike <cite>Because Internet</cite>, doesn’t limit itself to written language. One of its most
compelling studies concerns the vocal techniques of podcasters and YouTubers. The finding is simple: It’s hard to build and hold an
audience for your show unless you sound like MrBeast. No, really.</p>
<p>Anyhow, they’re both good books. <cite>Because Internet</cite> educated and entertained me. <cite>Algospeak</cite> is way
more intense, intentionally more like the subject it addresses. Also it made me angry. I am a lover of human language and of its
patterns of growth and mutation and simplification and complexification. Linguistics is one of the disciplines I regret not
having chosen.</p>
<p>Aleksic makes it clear that there’s an amusing narrative about how the people living and speaking in the shade of the Algorithm
can never defeat it, but they can still manage to get their messages across. But they shouldn’t have to struggle!</p>
<p>In fact, a few million of us have found a place to talk to each other that isn’t in The
Algorithm’s shadow: Decentralized social media. Specifically the Fediverse (what people mean when they say “Mastodon”) and maybe
the ATmosphere (same for “Bluesky”).</p>
<p>I want to see how language grows in a place where new forms arrive when they’re needed, to say new things that need to be
said. Not to either serve or resist The Algorithm.</p>
</div></content></entry>
<entry>
<title>Kansas and AI</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI' />
<link rel='replies' thr:count='2' type='application/xhtml+xml' href='/ongoing/When/202x/2026/02/27/Kansas-and-GenAI#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI</id>
<published>2026-02-27T12:00:00-08:00</published>
<updated>2026-02-27T16:06:19-08:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/AI' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='AI' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud. Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural changes.” Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud.
Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural
changes.”
Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010.</p>
<h2 id='p-1'>The Kansas Experiment</h2>
<p>As long as I can remember, a certain class of right-wing evangelists has preached that cutting taxes would stimulate business
growth and everyone would come out ahead. There are a couple of problems with this theory. First, mainstream economists
almost universally think it’s just wrong. Second, most of the people pushing it are rich and would
benefit from the cuts.</p>
<p>Anyhow, in 2010 US Senator Sam Brownback won the race for governor of Kansas on what was then called the “Tea Party” program:
Prosperity through tax cuts. Tea-party Republicans also won a large majority in the state legislature. Unsurprisingly they
immediately
<a href="https://en.wikipedia.org/wiki/Kansas_experiment">did what they said they were going to do</a>: Slashed a wide variety
of taxes, some to zero.</p>
<p>The predicted prosperity failed to happen. The state government’s revenue plunged and it had to dig deep into rainy-day
reserves just to keep the doors open. There were brutal cuts to policing, road repair, and schools. Also a nasty
feedback loop: As the state’s fiscal position worsened, its credit rating fell and interest rates rose, leading to yet more
brutal austerity measures.</p>
<p>Another result was that affluent Kansans made out like bandits; the cost of running the state was substantially
transferred to the less financially fortunate.</p>
<p>In 2017, the legislature threw in their cards and repealed the tax cuts, overriding Brownback’s veto.</p>
<p>While this was a terrible experience for most Kansans, it is historically useful, because whenever you encounter a
tax-cut nut (probably self-interestedly wealthy) you can say “But, Kansas!” Having said that, there are still plenty of
those nuts, and they’ll tell you that the Kansas experiment failed because of one fine-tuning effort or another. That’s a position
that’s hard to defend, though.</p>
<h2 id='p-3'>Sidebar: Trans oppression too</h2>
<blockquote><p>Before I move onto the AI angle, I gotta pause to acknowledge this week’s news story about the Kansas
government’s vicious, brutal, and ignorant
<a href="https://www.theguardian.com/us-news/2026/feb/26/kansas-trans-drivers-license-law-assault-on-rights">assault on trans
people</a>. To be clear, I think the shitty people who hate trans folk are aren’t necessarily the same shitty people as the shitty
people who don’t want to contribute to the public good. But, something about Kansas seems to attract both
flavors.</p></blockquote>
<h2 id='p-2'>The GenAI experiment</h2>
<p>The core value proposition of contemporary AI technology is exactly what Dorsey seems to think: Fire half your
employees and profits will soar! If that’s true, the trillion dollars or so invested so far will seem like small potatoes. Since
we don’t know if
this will actually work, anyone who actually does it is conducting an experiment. Just like Sam Brownback did.
Unsurprisingly, the investor class loves this experiment and is putting their money on it working.</p>
<p>To be fair, voices have been raised to argue that the tech sector is a special case: That following on
feverish over-hiring during the Covid lockdown, they need to slash headcount anyhow, and are using AI as an excuse.
For example
<a href="https://daringfireball.net/linked/2026/02/27/block-layoffs">John Gruber</a>.</p>
<p>I personally
am unconvinced, but even if they’re right, it’s irrelevant. The shareholding class won’t be able to see past that 24% payoff. So
as of today, they’ll be yelling at every CEO on the planet to start pulling the mass-firing trigger. Or else.</p>
<p>I think I know how the experiment will turn out. Just like in Kansas, it’s not going to be fun.</p>
</div></content></entry>
<entry>
<title>Crocuses of 2026</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026' />
<link rel='replies' thr:count='0' type='application/xhtml+xml' href='/ongoing/When/202x/2026/02/24/Crocuses-of-2026#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026</id>
<published>2026-02-24T12:00:00-08:00</published>
<updated>2026-02-26T13:46:17-08:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts/Photos' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Arts' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Photos' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth in early 2003. Except for last year. Because <a href='/ongoing/When/202x/2025/02/28/Moved'>we moved</a> and the new place didn’t have any. Only now it does, and they’re (just barely) up. <i>[Update: Up and open, too.]</i></div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth
in early 2003. Except for last year. Because
<a href="/ongoing/When/202x/2025/02/28/Moved">we moved</a> and the new place didn’t have any. Only now it does, and they’re
(just barely) up. <i>[Update: Up and open, too.]</i></p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56234.png" alt="Crocuses of February 2026" />
<p>Long-time followers may note that they’re pale and fragile compared to the exuberant blossoms of previous
years. Not sure why, but our new place faces north and there’s this enormous
<a href="https://en.wikipedia.org/wiki/Fraxinus_americana">White Ash</a> tree right in front of it, so they’re not getting as
much sun as at the south-facing former joint.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56235.png" alt="Crocuses of February 2026" />
<p>And also this is their first spring. We bought the bulbs and hired a professional with the right tools to jam them
into the earth last autumn, between the big tree’s roots. So they really haven’t had a chance to get their own root systems going.</p>
<p>And finally, it really is the first day that’s bright and warm enough to get out the camera. Maybe they’ll
be better in another few days. And quite likely next Spring.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56244.png" alt="Crocuses of February 2026" />
<p>This would be the place to introduce whatever metaphor this year’s blossoms, fighting their way through the leaf cover in
chilly air toward the sun, fit into, but I’m not gonna.</p>
<p>I, like many, am
<a href="/ongoing/When/202x/2023/10/25/Wild-World">not dealing very well</a> with what I see when I look at the world in either
the big or the ultra-local landscapes.
The world in tough shape and its worst people are making it worse.
People I love are in ugly corners and not finding help.</p>
<p>But you know, the flowers, in their low-key way, look great and so does the tree, still in wintersleep. Today the
sun was shining on them. It’ll be warmer and nicer soon.</p>
<p>Metaphors can go to hell. It’s just late-winter light on pale violet petals. Enjoy the moments you have with it.</p>
<img src="https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56249.png" alt="Spring crocus, now open for business" />
<div class='caption'><p>Update: Now open for business.</p></div>
</div></content></entry>
<entry>
<title>Open Source and GenAI?</title>
<link href='https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion' />
<link rel='replies' thr:count='2' type='application/xhtml+xml' href='/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion#comments' />
<id>https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion</id>
<published>2026-02-16T12:00:00-08:00</published>
<updated>2026-02-18T13:41:14-08:00</updated>
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology/AI' />
<category scheme='https://www.tbray.org/ongoing/What/' term='Technology' />
<category scheme='https://www.tbray.org/ongoing/What/' term='AI' />
<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>I’ve been puttering away on my <a href='/ongoing/What/Technology/Quamina%20Diary/'>Quamina</a> project since 2023. In the last few weeks GenAI has intervened. <a href='/ongoing/When/202x/2026/02/06/Q-Plus-C-Ch1'>Quamina + Claude, Case 1</a> describes a series of Claude-generated human-curated PRs, most of which I’ve now approved and merged. <a href='/ongoing/When/202x/2026/02/14/Q-Plus-C-Ch2'>Quamina + Claude, Case 2</a> considers <a href='https://github.com/baldawarishi/quamina-rs'>quamina-rs</a>, a largely-Claude-driven port from Go to Rust. Both of these stories seem to have happy endings and negligible downsides. So empirically, I <em>can</em> apply LLM technology usefully to software development. But should I?</div></summary>
<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>
<p>I’ve been puttering away on my
<a href="/ongoing/What/Technology/Quamina%20Diary/">Quamina</a> project since 2023. In the last few weeks GenAI
has intervened.
<a href="/ongoing/When/202x/2026/02/06/Q-Plus-C-Ch1">Quamina + Claude, Case 1</a> describes a series of
Claude-generated human-curated PRs, most of which I’ve now approved and merged.
<a href="/ongoing/When/202x/2026/02/14/Q-Plus-C-Ch2">Quamina + Claude, Case 2</a> considers
<a href="https://github.com/baldawarishi/quamina-rs">quamina-rs</a>, a largely-Claude-driven port from Go to Rust.
Both of these stories seem to have happy endings and negligible downsides. So empirically, I <em>can</em> apply LLM
technology usefully to software development. But should I?</p>
<h2 id='p-3'>Conclusions 1: Burn it with fire?</h2>
<p>Let me be clear: In the big GenAI picture, I’m a contra. Why? I’ll pass the mike to Baldur Bjarnason, my
favorite among GenAI’s blood enemies.:
<a href="https://www.baldurbjarnason.com/notes/2026/note-on-debating-llm-fans/">“AI” is a dick move</a>.
His tl;dr is something like “GenAI is environmentally devastating and has the goal of throwing millions of
knowledge workers onto the street and is being sold by the worst people and is used for horrible applications and will increase
society’s already-intolerable level of inequality!” To which I reply “Yes, yes, yes, yes, and yes.”</p>
<p>At the end of the day, the business goal of GenAI is to boost monopolist profits by eliminating decent jobs, and
damn the consequences. This is a horrifying prospect (although I’m somewhat comforted by my belief that it basically won’t
work and most of the investment capital is heading straight down the toilet).</p>
<p>But. All that granted, there’s a plausible case, specifically in software development, for exempting LLMs from this
loathing.</p>
<p>First of all, size.
<a href="https://www.jetbrains.com/lp/devecosystem-data-playground/#global_population">JetBrains thinks</a> that
the world has 21 million or so software developers, i.e. less than 1% of the earth’s working population.
Vanishingly small in the context of the lunatic tsumani of LLM overinvestment.
Training and operating the models required for a market this small is
rounding error measured on the Great GenAI Overbuild scale. There aren’t enough geeks to create a detectable bump in the global
carbon load.</p>
<p>Another odious aspect of LLMs is
<a href="https://en.wikipedia.org/wiki/Reinforcement_learning_from_human_feedback">RLHF</a>, “Reinforcement Learning From Human
Feedback”, which relies on underpaying Third-Worlders to
polish the models’ outputs.
My guess is that much less is required for code-oriented LLMs.
The combination of the compiler and your unit tests provide good starter guardrails. Then skilled
professional intervention is required to deal with the remaining misfires, as with those Quamina PRs.</p>
<p>Finally, it seems making billionaires into multibillionaires is intrinsic to GenAI dreams. But software-development tools won’t
do that. Once again, the market is just too small. But even if it weren’t, consider this from Steve Yegge:</p>
<blockquote><p>For
<a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">this blog post</a>, “Claude Code” means “Claude Code and
all its identical-looking competitors”, i.e. Codex,
Gemini CLI, Amp, Amazon Q-developer ClI, blah blah, because that’s what they are. Clones.</p></blockquote>
<p>(GenAI, overbuilding wherever you look.) None of these products have moats and the chance that any of them become
extractive monopolies is about zilch. Nobody’s ever built a major cash-cow on developer tooling</p>
<p>One reason is (*gasp*) Open Source. Does anybody doubt that in the near future, there will
be entirely open-source versions of what Yegge means by “Claude”?</p>
<p>So, if you want to condemn the use of GenAI in software development, I think you need arguments other than the fact that
it’s also being promoted for societally-toxic business purposes.</p>
<p>I have a few. But stand by, let me push that on the stack and turn to
technology for a bit.</p>
<h2 id='p-4'>Conclusions 2: Engineering sanity?</h2>
<p>Question: Can LLMs even participate in quality software engineering?
Baldur doesn’t think so: “The gigantic, impossible to review, pull requests. Commits that are
all over the place. Tests that don’t test anything. Dependencies that import literal malware. Undergraduate-level security
issues. Incredibly verbose documentation completely disconnected from reality.”</p>
<p>I’m not saying that these pathologies can’t or don’t happen. But in my personal experience with Quamina, they
didn’t. (Mind you, it’s a hobby project.)</p>
<p>And when they do happen, I would assume that mature open-source projects will use a network of
trust, as big operations like Linux already do. PRs that don’t have the imprimatur of someone known to be clueful will be ignored.
When I saw the first of those incoming Quamina PRs, I took the time for a serious look because I knew Rob and had seen evidence that he
was technically competent. If I see an incoming PR that’s nontrivial and from some rando and doesn’t pass a 120-second sanity
check, it’s unlikely to get any more attention.</p>
<p>In fact, some essentials don’t change. If you’re not requiring that PRs be clean and
test coverage be good and code reviews not be skipped and dependencies be curated, you’re going to get a lousy result whether
the upstream code is coming from a human or an LLM.</p>
<p>But it’d be naive to think that a big change in the
shape of that upstream isn’t going to affect the profession.</p>
<h2 id='p-9'>Bottlenecks</h2>
<p>Speaking from personal experience, reviewing the PRs from Claude&Rob was neither faster nor slower, easier nor harder,
than what I’m used to pre-GenAI. The number of my disagreements with the diffs, and the amount of arguing it took to resolve
them, was also about as usual.
Which creates a big problem. Because if we can generate code a whole lot faster but review doesn’t
speed up, all we’ve done is moved the bottleneck in the system.</p>
<p>Speaking of which, Armin Ronacher offers
<a href="https://lucumr.pocoo.org/2026/2/13/the-final-bottleneck/">The Final Bottleneck</a>, from which: “When one part of the
pipeline becomes dramatically faster, you need to throttle input.” Think about that.</p>
<h2 id='p-10'>Burnout</h2>
<p>Meanwhile, evidence is piling up that LLM-based software development is driving
developers to overwork and burnout. Here’s
<a href="https://hbr.org/2026/02/ai-doesnt-reduce-work-it-intensifies-it">a cool-eyed take</a> from <cite>Harvard Business
Review</cite>. Then there’s Steve Yegge’s frantic, overly-long
<a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">The AI Vampire</a>. But my favorite, and I think a
must-read, is Siddhant Khare’s
<a href="https://siddhantkhare.com/writing/ai-fatigue-is-real">AI fatigue is real and nobody talks about it</a>.
From which: “AI reduces the cost of production but increases the cost of coordination, review, and decision-making. And those
costs fall entirely on the human.”</p>
<p>The argument we’re hearing is that GenAI makes development more efficient. And more efficient is better.
<a href="https://www.tbray.org/ongoing/When/202x/2020/07/05/Too-Efficient">Until it’s not</a>.</p>
<p>I’m not sure the profession I joined last century would attract me today. And on Mastodon,
<a href="https://cosocial.ca/@gordwait/116082229876399512">@GordWait said</a> “At our office, we are
noticing a huge drop in Comp Sci co-op applications. The next generation is convinced there’s no future in programming thanks to
AI hype.”</p>
<h2 id='p-11'>Can and should</h2>
<p>Here’s another conundrum. Suppose we <em>can</em> build a whole lot more stuff, faster. <em>Should</em> we? I don’t know about you,
but I am regularly enraged at tools that work just fine popping up “wonderful new features” modals in front of what I’m
trying to get accomplished. Also at damaging UI churn, driven by product managers trying to get promoted. It’s
just not obvious
that speeding up software development is, in the big picture, a good thing.</p>
<p>And I can’t help noting that every attempt to measure the productivity boost due to GenAI has shown zero (or worse)
improvement. Of course, Claude’s cheering section will point out that those studies date to 2024 which is the stone age. Maybe
they’re right.</p>
<h2 id='p-8'>Vampires</h2>
<p>(In which I once again go all
<a href="/ongoing/When/202x/2023/01/16/Class-Reductionism">class-reductionist</a>.) The real problem here is late-stage
capitalism, and I think is best addressed in Yegge’s <cite>AI Vampires</cite> piece, from which I quote:
“…dollar-signs appear in their <i>[employers’]</i> eyeballs, like cartoon bosses. I know that look. There’s no reasoning with
the dollar-eyeball stare.” Yeah.</p>
<p>Thus the ancient question: <i>cui bono?</i> Assuming GenAI genuinely boosts productivity, who gets the
benefits? Because the ownership class sure doesn’t think they should go to their newly-more-efficient employees.</p>
<h2 id='p-7'>But, what do I know?</h2>
<p>I know that you gotta have test coverage or your software is an unmaintainable tangle of festering tech debt. I know you gotta
have code review or your quality is on inexorable downhill drift. I <em>don’t</em> know how to build LLMs into a sane,
sustainable software engineering culture. Nor what to do
about capitalism’s AI Vampires.</p>
<p>And I absolutely do <em>not</em> believe the wild-eyed claims of 10× productivity gains, assuming we demand (as we should) that
they’re sustainable at scale.</p>
<p>So, would I advise executives to tell software engineering shops to discard their
culture in favor of vibe coding in the expectation of monstrous productivity wins? Nope.
<a href="https://simonwillison.net/2025/Oct/7/vibe-engineering/">Vibe engineering</a>, maybe.
<a href="https://locusmag.com/feature/commentary-cory-doctorow-reverse-centaurs/">Centaurs, not reverse centaurs</a>? Indeed.</p>
<p>But would I say “Stay away, don’t even look”? Nope. I’d probably suggest pointing the LLM at well-delimited non-strategic
issues and
optimizations, and emphasize no shortcuts on reviewing or CI/CD standards.</p>
<p>Also note that the GenAI apostles are at one in saying that this year’s tools are <em>so</em> much better than last year’s,
and next year’s are guaranteed to be qualitatively still better! So why would you rush in and risk getting locked into
soon-to-be-outmoded tooling?</p>
<p>Rob Sayre wrote “I would never bother to type out these patches by hand. But I read them all.” I probably wouldn’t have
either and I read them too. And now Quamina is roughly twice as fast. Which is to say, I got good results on a hobby
project. That’s not nothing.</p>
<p>But, also not conclusive.
Once the AI bubble pops and we’ve recovered from the systemic damage, I think there’ll <em>probably</em> be a place for
open-source LLM automation in developer toolkits.</p>
<p>But maybe not. Wouldn’t surprise me much, either way.</p>
</div></content></entry>
</feed>
Raw headers
{
"accept-ranges": "bytes",
"cf-cache-status": "DYNAMIC",
"cf-ray": "a22eccbc3f36258a-CMH",
"connection": "close",
"content-length": "192667",
"content-security-policy": "frame-ancestors 'self';",
"content-type": "application/atom+xml",
"date": "Wed, 29 Jul 2026 20:16:10 GMT",
"etag": "\"2f09b-657c331c11599\"",
"last-modified": "Wed, 29 Jul 2026 17:22:05 GMT",
"server": "cloudflare",
"strict-transport-security": "max-age=31536000; includeSubdomains; preload",
"x-content-type-options": "nosniff"
}
Parsed with @rowanmanning/feed-parser
{
"meta": {
"type": "atom",
"version": "1.0"
},
"language": "en-us",
"title": "ongoing by Tim Bray",
"description": "ongoing fragmented essay by Tim Bray",
"copyright": "All content written by Tim Bray and photos by Tim Bray Copyright Tim Bray, some rights reserved, see /ongoing/misc/Copyright",
"url": "https://www.tbray.org/ongoing/",
"self": "https://www.tbray.org/ongoing/ongoing.atom",
"published": null,
"updated": "2026-07-29T17:22:05.000Z",
"generator": {
"label": "Generated from XML source code using Perl, Expat, Emacs, Mysql, Ruby, and ImageMagick. Industrial-strength technology, baby.",
"version": null,
"url": "/misc/Colophon"
},
"image": {
"title": null,
"url": "rsslogo.jpg"
},
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [],
"items": [
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp",
"title": "Six Summer Days of Music",
"description": "I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced “Wickams”. My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female, worrying about mental fitness, and having time available to invest as you please rather than as you must",
"url": "https://www.tbray.org/ongoing/When/202x/2026/07/26/Music-Camp",
"published": "2026-07-26T19:00:00.000Z",
"updated": "2026-07-28T20:11:40.000Z",
"content": "<p>I spent last week at a summer music camp put on by WCAMS, the West Coast Amateur Musicians Society, pronounced\n “Wickams”.\n My goal in writing this is to influence a few readers in the direction of attending this sort of thing if there’s one\n near you. You might be a candidate if you partake of some subset of: Loving music, getting old, being female,\n worrying about mental fitness, and having time available to invest as you please rather than as you must.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/26/camp-booklet-cover.png\" alt=\"Cover of the WCAMS 2026 camp booklet\"></img>\n <h2 id=\"p-1\">The facts</h2>\n <p>250 attendees, a couple of dozen faculty (all professional musicians), a lovely waterfront venue at a swanky\n boarding school campus in an \n <a href=\"https://en.wikipedia.org/wiki/Mill_Bay,_British_Columbia\">isolated small town</a>.\n The picture above is the cover of the\n <a href=\"https://www.wcams.ca/PDFs/CAMP%20BOOKLET%202026.pdf\">camp booklet</a>.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260719_184302214.png\" alt=\"View from the Malahat highway to Mill Bay\"></img>\n <div class=\"caption\"><p>On the way to the camp.</p></div>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260720_015242804.png\" alt=\"well-manicured lawns stretch down to the Pacific\"></img>\n <div class=\"caption\"><p>This space, while the camp is running,<br></br>usually contains at least one person<br></br> or group emitting\n music.</p></div>\n <p>Let me should expand on that list above.</p>\n <ol>\n <li><p>If you love music, there are multiple concerts per day, some quickies by whoever wants to between sessions, some highly\n polished offerings from the faculty. They all offer\n <a href=\"/ongoing/When/202x/2026/03/16/Pure-Sound-Please\">pure sound</a>; unamplified and in music-friendly spaces. The volume\n and balance and tone are achieved by the performers’ technique and love, nothing is digitized or amplified.</p>\n <p>Then there are the concerts you’ll be practicing for and playing in.</p></li>\n <li><p>The most common hair color was gray. I mean, there were kids and teens and thirtysomethings, but I’d say\n more than half the\n people were at least semi-retired. Not sure why, but it may have to do with retirees having spare time and\n no childcare duties, and music having been more widely taught back when us Olds were kids, and the price, $1300 Canadian\n (about a thousand US) per person, bed and board and music all-in. The venue was a private boarding school, thus “bed and board” was\n of a school-dorm standard, clean and complete but very basic.</p>\n <p>There were attendees who were unsteady on their feet and needed a golf-cart to get around and help on the stairs, but they\n could still play the hell out of their fiddle or trombone or whatever.</p></li>\n <li><p>The place was a matriarchy. My small string ensemble had three men and ten women, my cello seminar eight and two.\n Don’t have a glib explanation except that music teachers were plentiful, and women are over-represented in the teaching\n professions. So, it’s a space where (I’m guessing of course) women are less likely to feel crowded out\n or bossed around.</p></li> \n <li><p>As for mental fitness while aging, the research is in and it’s not subtle. Music, both listening and performing, is\n good for your mind/brain generally, and specifically\n <a href=\"https://www.monash.edu/medicine/news/latest/2025-articles/music-can-stave-off-dementia-by-up-to-40-per-cent,-monash-study-finds\">reduces\n the risk of dementia</a>.</p></li>\n </ol>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/26/PXL_20260723_164158227.png\" alt=\"A woman is towing a large horn behind her in a small cart\"></img>\n <div class=\"caption\"><p>For privacy reasons, we were all asked not to share photos from the camp in public, but I think this\n one is safe.</p></div> \n <h2 id=\"p-4\">The music</h2>\n <p>I found the choice of tunes contrarian; did not hear a single Mozart chestnut.\n I think this works because everyone at the place is musically literate and many are erudite; they’ve heard enough Mozart\n classics.\n Let me sort the choices.\n One basket: Works written in the\n attendees’ lifetimes, including a lot of female composers and Canadian stuff. Another: Oddments from the back pages of the usual\n titans, for example Beethoven’s \n <a href=\"https://en.wikipedia.org/wiki/Septet_(Beethoven)\">Septet</a> (his first big hit, he came to hate it), and\n the graceful but weird second movement of Stravinsky’s\n <a href=\"https://en.wikipedia.org/wiki/Concerto_in_D_(Stravinsky)\">Concerto in D</a>.\n Another: Popular-music classics arranged for acoustic instruments. I heard (and will have more to say about) <cite>Bohemian\n Rhapsody</cite> for woodwind quintet, Cohen’s <cite>Hallelujah</cite> for seven violas, and the Cowboy Junkies’ <cite>Cold Tea\n Blues</cite> for four female voices and ukulele.</p>\n <p>The big final choir-and-orchestra blowout, with 110 people on stage, was\n <a href=\"https://en.wikipedia.org/wiki/Schicksalslied\">Brahms’ <cite>Schicksalslied</cite></a>, which I bet almost none of the people\n reading this have ever heard of (I hadn’t).</p>\n <p>And also Bach. Because of course.</p>\n <h2 id=\"p-6\">How it works</h2>\n <p>You join as many ensembles as you care to. Most people will find themselves in one chamber group or another, an orchestra or choir,\n and some sideline track like for instance, Early Music, Celtic, or Vocal Jazz. The organizers try to get the music mailed out a\n few weeks before the camp, but some lags and some only arrives when you hit the first session on Monday. You get five hours\n of rehearsal and then you perform it on Friday night or Saturday.</p>\n <p>Obviously this calls for quite a bit of practice; there’s plenty of space for that. As you walk from wherever to wherever\n around the joint, you always hear the call of some instrument or voice, often running repeatedly through a tricky bit. \n Noobs join as many groups as they can fit in the schedule.\n Veterans have learned to dial it back a bit; I took their advice, signed up for only five tracks and performed only twice.</p>\n <p>All this is a pretty fucking intense experience, let me tell you. And here’s what I’ll take away: The radiant and heartfelt\n smile on the face of nearly every musician when they finish their performance. And\n basically every piece gets thunderous applause, with hollering. Usually but not always deserved.</p>\n <h2 id=\"p-2\">My adventure</h2>\n <p>I am not particularly gifted at music. I’m old and have pursued the cello on and off since I was a kid, with much more off\n than on and multiple no-cello decades.\n What happened was, my wife Lauren is a gifted singer with a powerful soprano who enjoys participating in choral music. Her\n choir buddies have been encouraging her to come to WCAMS for years. I wanted to support her and it sounded like fun, so I ended a\n 25-year gap and started cello lessons again last October. It’s been painful clawing my way back toward my previous level of\n skill, which was never that great. But WCAMS makes it clear that beginners are welcome, will be encouraged and\n supported. So we signed up.</p>\n <p>Anyhow, my cello skills were solidly in the bottom quartile of the couple of dozen cellists in attendance. Which was humbling\n but not a problem actually, because of that encouragement and support I just mentioned.</p>\n <p>But during that 25-year cello gap I took up the study of West-African and Afro-Cuban drumming, with weekly lessons, and\n then for the last year or so, regular participation in a multi-hour by-invitation-only weekly drum jam. Judging one’s own\n talents is tough, but I seem to get musically further with less work on the drumming side. I even get the occasional spontaneous compliment\n that isn’t just politeness; something that has rarely-to-never happened in my cello career. So I see drums as my primary musical\n hobby.</p>\n <p>But WCAMS doesn’t have an African-music group; thus my cello lessons. Then when we got the initial program I spotted\n the Celtic track, and I know that music comes with drums.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/26/Bodhran.png\" alt=\"A basic bodhrán\" class=\"inline\"></img>\n <p>So, without asking anyone whether it was a good idea, the week before\n the camp I rented a\n <a href=\"https://en.wikipedia.org/wiki/Bodhrán\">bodhrán</a>. It came with a “how to play” DVD that I watched all of, then I went\n and typed “bodhrán practice music” into YouTube and of course there’s plenty. After a few hours I was\n confident that I could keep up if they didn’t go too fast (they didn’t).\n It’s pretty easy to play even though the actual strike-the-drum\n motion is eccentric, unlike any other percussion instrument of my acquaintance.</p>\n <p>I should mention that “bodhrán” is pronounced with the “dh” silent, “bo” as in “bother” and “rán” as in “roan”.</p>\n <p>At the opening-night gathering, I tracked down Amy, the Celtic-track leader, and asked if it would be OK if I\n showed up with the drum. She was welcoming (<em>everyone</em> at WCAMS seems permanently welcoming).\n When we struck up the first tune at the beginning of our Monday gathering, she looked a little nervous but when I joined in\n she nodded emphatically; it turned out the last time a fresh face equipped with a bodhrán had turned up, they couldn’t actually\n find or stay with the beat.</p>\n <p>Anyhow, I joined Amy’s Beginner and Advanced classes, learned a whole lot about Celtic music (starting from\n zero helps), and had more fun than ought to be legal. Got unsolicited compliments.\n Our performance was at the wind-up party after\n the big final Brahmstravaganza, and the crowd yelled and whistled, dancing broke out. I was full of\n joy<span class=\"dashes\"> —</span> I think the whole band was. I’ll never forget it.</p>\n <h2 id=\"p-7\">Musical take-aways</h2>\n <p>Here are the ones that I can still hear when I think back on them.</p>\n <p>The woodwind quintet (who came to camp together as a group) played <cite>Bohemian Rhapsody</cite> on that little waterfront\n auditorium in the picture above. The arrangement was respectful and skilful and it highlighted what a wonderful, complex, piece\n of music that is. 100% by Freddy Mercury, who we all think of as Queen’s muscle, but this is a masterpiece by one of the last\n century’s top composers, any genre.</p>\n <p>Arvo Pärt’s <cite>Spiegel in Spiegel</cite> by faculty cellist\n <a href=\"https://marinahasselberg.com\">Marina Hasselberg</a> and percussion pro\n <a href=\"https://www.rcmusic.com/teachers/g/greg-samek\">Greg Samek</a>, the latter on vibraphone. Exquisite, the notes suspended\n in space like rays of light.</p>\n <p><cite>Krunk</cite>, an Armenian folk song full of tragedy, on solo flute. Impossible to keep your eyes dry.</p>\n <p>A Ukrainian song, lyrics by Shevchenko (there are lots, not sure which) delivered by Eric Hominick, a great singer and\n pianist who is about to retire from the West to East coast, and will be much missed.</p>\n <p><a href=\"https://thesession.org/tunes/82\">Pride of Petravore</a> is a hornpipe, the song that the awesome\n <a href=\"https://www.amystephenmusic.com\">Amy Stephen</a> used to launch the Celtic-music track. She projected the music on the\n whiteboard but wouldn’t make a print-out, insisting that we learn it so that when we opened our set we’d be focused on the music\n not the notes. It’s the song that Amy used to teach me I could get along on bodhrán.</p>\n <p>I’ll be honest, I’ve always liked\n Irish-traditional music, have even been lucky enough to hear it in its natural habitat, a rundown pub in a remote corner of\n Ireland. But I’d never actually \n <em>thought</em> about it much. Now I have, and it’s deeper and stranger than I’d imagined. I’m pretty sure I’ll be investing\n time in it.</p>\n <p>I really hope I get a chance to learn from Amy again, one way or another.</p>\n <p><a href=\"https://www.didchoi.com\">D.I.D. Choi</a> is a young Canadian composer who, in his twenties, is off in LA, working on\n music for films and games and so on. His\n <a href=\"https://www.didchoi.com/remembrance\">Remembrance</a>, written in 2019, played by a wind ensemble,\n created a cloud of music magic in the air over the stage. I found my eyes closed, better to take it in. I’m going to suggest if\n you notice a concert anywhere near you with something by Choi, run don’t walk to the ticket booth.</p>\n <p>I already mentioned the Cowboy Junkies’ <cite>Cold Tea Blues</cite> and it’s the one that hit me the hardest. The four\n singers had lovely light voices, the ukulele swung gracefully, and they did a bit of gentle choreography. The harmonies were\n fabulous. Anyone who’s heard this (and you can guess from the title) knows it’s not a happy song, but they shuffled\n that under the \n covers, casting a spell of light-hearted romance. Then when they planted the cruel razor sharp-hook at the end of the line of lyrics\n they’d been dangling so invitingly, there were audible gasps and cries of sorrow from the crowd. Never experienced anything \n like it.</p>\n <h2 id=\"p-8\">Big band!</h2>\n <p>I’m old, but this is the music my parents listened to. I’d always thought of it as boring fuddy-duddy stuff. That was,\n until I got in a theater with good acoustics and a live 20-piece brass band. This stuff is loud and aggressive at a level that\n approaches Rock&roll, the arrangements are better, and the tunes are strong.</p>\n <p>The way it works is, the different horn sections hand the melody and chorus back and forth, never the same twice, then\n somebody stands up and plays a solo, a pre-assigned number of bars. There was this one solo by a young trombonist that pretty\n well melted my mind. I wonder if this stuff retains any commercial viability, as in, is there somewhere I can go out and see it?</p>\n <h2 id=\"p-9\">Anyhow…</h2>\n <p>Earlier today I bought the rental bodhrán, it’s a basic model and was pretty cheap. I think it’s full of happiness.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Arts/Music",
"term": "Arts/Music",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Arts",
"term": "Arts",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Music",
"term": "Music",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports",
"title": "Sports and Truth",
"description": "This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league baseball game. Took pictures and thought about enjoying this stuff",
"url": "https://www.tbray.org/ongoing/When/202x/2026/07/10/Summer-Sports",
"published": "2026-07-10T19:00:00.000Z",
"updated": "2026-07-16T17:08:37.000Z",
"content": "<p>This summer has been very sporting; in the course of a couple of weeks I attended a World Cup match and a minor-league\n baseball game. Took pictures and thought about enjoying this stuff.</p>\n <h2 id=\"p-1\">“Haha, sportsball…</h2>\n <p>I know that a whole lot of people, including not a few among my online audience, see neither joy nor virtue in fandom.\n That’s an attitude they’re entitled to have assuming they realize the absence of joy is a them thing.</p>\n <p>After joy there’s virtue. Yes, organized professional sport raises serious ethical issues. That’s putting\n it politely. Many-to-most branches of commercial sport are rife with exploitation, oppression, and corruption. I’m not going to\n push back, and in fact I sometimes feel guilty about enjoying the spectacle as much as I do.</p>\n <p>More to come on that.</p>\n <h2 id=\"p-2\">On hating FIFA</h2>\n <p>I’m not going to re-tell the tales of galaxy-scale corruption, the ostentatious displays of wealth and privilege,\n and the cozying-up to dictators, both real and wannabe. Attending the 2026 World Cup gave me more reasons to\n hate; in particular the ticket-buying experience.</p>\n <p>I have always loved fútbol generally and the World Cup in particular, as witness the\n <a href=\"/ongoing/What/Sports/Soccer/\">plentiful digital ink</a> I’ve spilled on the subject here on the blog. So when we\n learned that there were going to be games in Vancouver, I determined that I’d attend one. It was obvious they’d be\n popular so I decided to pounce on the first opportunity. Which is how I ended up buying (no, really) an NFT.</p>\n <p>FIFA’s first round of sales wasn’t tickets, but NFTs, some of which came in packages that included a right to buy tickets for\n a game, participants unknown.\n <a href=\"https://collect.fifa.com/collectible/427320121710592\">Here</a><span class=\"dashes\"> —</span> the first and\n I fervently hope the last time I link to an NFT<span class=\"dashes\"> —</span> is part of the\n package. Can’t show you the right-to-buy NFT because I had to “burn it” to turn it into tickets.</p>\n <p>Neither the NFT nor the tickets were cheap; my son and I attending that game cost well over a thousand\n (Canadian) bucks. (At this point, other attendees are scoffing at me for having paid so little.)\n For what it’s worth, the seats were good.</p>\n <p>And let’s further enhance our basket of reasons to hate FIFA by noting that the ticket prices exclude everyone who’s not\n a member of a very privileged demographic.</p>\n <h2 id=\"p-3\">The match</h2>\n <p>It was\n <a href=\"https://www.fifa.com/en/match-centre/match/17/285023/289273/400021480\">Egypt vs New Zealand</a>, played at Vancouver’s\n “BC Place” stadium on June 21st.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_005115695.png\" alt=\"Preparation for Egypt vs New Zealand at the 2026 World Cup\"></img>\n <div class=\"caption\"><p>The march-in ceremonies.</p></div>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/10/PXL_20260622_010008011.png\" alt=\"New Zealand kicks off vs Egypt at the 2026 World Cup\"></img>\n <div class=\"caption\"><p>New Zealand kicks off.</p></div>\n <p>Confession: My son and I had a blast, can’t think of it without smiling. Most of downtown Vancouver had become a swirl of\n happiness, people dressed up in all sorts of fanciful outfits, singing, chanting, drinking, dancing, photographing. I\n particularly liked the pharaoh’s-headdress the Egypt fans were wearing.</p>\n <p>The game was great fun<span class=\"dashes\"> —</span> <a href=\"https://www.fifa.com/en/watch/30AjAOgeWPeCcjnTx6hdH0\">watch\n the highlights</a>. NZ played better than their international rating would suggest and we got to watch\n <a href=\"https://en.wikipedia.org/wiki/Mohamed_Salah\">Mo Salah</a> carve his way\n into the defense and put away a lethal strike.</p>\n <p>There were way more fans from Egypt than from NZ, but the Kiwis had better-organized cheering; they’ve figured out how to set the\n syllables of “Aotearoa” to the <cite>Seven Nation Army</cite> riff, and does it ever sound great.</p>\n <p>And, while FIFA are assholes, those assholes really know how to run a\n tournament. They had sold out BC Place to the last seat, but never for a moment did I feel scarily crowded. I even managed\n to grab a decent beer and sandwich at half-time without feeling crushed or catching Covid; it helped that I masked up.</p>\n <p>I’ve watched a lot of the tournament on TV and enjoyed it. The games, to be frank, have become less and less\n interesting as the idiosyncratic minor players (in particular the non-European ones) get eliminated by the better-funded Euros with\n their crushingly-precise and often-boring game. It would’ve been nice if the final four included an outsider.</p>\n <p>And if you can set that FIFA issue aside, at some level it’s a beautiful thing; nations competing against each other in a\n framework built on raw aggression, physical virtuosity, disciplined teamwork, and kicking a ball around.</p>\n <h2 id=\"p-7\">World Cup without FIFA?</h2>\n <p>It could be done and it’d be politically popular. The nations of the world get together, dissolve FIFA on the evidence of its\n many sins, and run the tourney on some sort of co-op basis. They could slash most of the ticket prices and\n there’d still be buckets of money to go around to the national associations and some selected charities, based on the\n sponsorships and TV rights. Some of it would go to peacekeeping and Doctors Without Borders.</p>\n <p>I can dream.</p>\n <h2 id=\"p-4\">The game</h2>\n <p>(One says “football match” and “baseball game”. Sounds wrong the other way around. Yay English.)</p>\n <p>It was my son’s birthday so nine of us went off to watch the\n <a href=\"https://en.wikipedia.org/wiki/Vancouver_Canadians\">Vancouver Canadians</a> host the\n <a href=\"https://en.wikipedia.org/wiki/Eugene_Emeralds\">Eugene Emeralds</a> in what’s called the “High-A” minor league.\n Oh my goodness, you can actually watch\n <a href=\"https://www.milb.com/live-stream-games/g819076\">video of the whole game</a>. I don’t recommend it.\n The tickets for nine, decent seats, cost $276 all in.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/10/TXT56290.png\" alt=\"Vancouver Canadians vs Eugene Emeralds, July 1, 2026\"></img>\n <p>It was an OK game. Vancouver leapt to an early lead, then the pitching collapsed and the Emeralds got 12 runs; the home team\n brought it back to within three by game’s end.</p>\n <p>But, what a happy place! Kids everywhere, dressed in hot-dog condiments and pop stains. Snuggling couples. Beer\n vendors. Hollering hosers.</p>\n <p>Since, in baseball, nothing is happening most of the time, the emphasis is on chit-chat and eating and drinking and\n people-watching. I noticed that when I wasn’t talking I was usually smiling.</p>\n <p>This happened: My son’s partner, let’s call them “X”, is of East-Asian\n extraction<span class=\"dashes\"> —</span> a Richmond kid, for the Vancouver-savvy.\n Born here, perfectly Canadian, but sports-oblivious and had never been to a ball game.\n When the seventh-inning stretch came along, I tapped X’s shoulder and said “time to get up and sing”. The crowd charged lustily\n into <cite>Take me out to the ball game</cite>, and X’s face got this absolutely hilarious I’m-on-an-alien-planet look.\n Later, X told me “That’s the whitest thing I’ve ever seen.”</p>\n <p>After the game, fireworks. They were pretty minor-league.</p>\n <h2 id=\"p-5\">So MLB is OK?</h2>\n <p>I have a bit of back story. While working at Sun and then for AWS, I helped MLB evaluate and use various\n bits of Internet technology. Of all the world’s sports organizations, MLB is apparently the leader in using the Net to\n promote and deliver their product. Plus the people I worked with were nice and highly competent. It was one of the highlights\n of my career.</p>\n <p>You will have noticed an absence of the sort of ranting that FIFA provoked above. Does this mean that the MLB\n organization is honorable and nice? Not at all. They are a gaggle of billionaires\n with <a href=\"https://en.wikipedia.org/wiki/Federal_Baseball_Club_v._National_League\">an explicit grant</a> of monopoly\n privileges in the USA.</p>\n <p>The Vancouver Canadians are the only surviving minor-league team in Canada; MLB has shut down many minor-league teams because\n while they make people happy they don’t make much money. Baseball is a big business and, just like any other big business\n these days, often acts in ways that most people would consider unethical.</p>\n <p>There’s what looks like a really good book about all this, \n <a href=\"https://www.penguinrandomhouse.ca/books/719997/homestand-by-will-bardenwerper/9780385549653\">Homestand:\n Small Town Baseball and the Fight for the Soul of America</a> by Will Bardenwerper. I haven’t read it yet, but you can get the\n gist in\n <a href=\"https://walkingtheworld.substack.com/p/two-interviews-an-author-and-a-painter\">this conversation</a> between\n Bardenwerper and Chris Arnade.</p>\n <h2 id=\"p-6\">The problem is…</h2>\n <p>…not baseball, nor fútbol, it’s late-stage capitalism, which reliably makes anything it gets its hands on worse.\n If we don’t like the way those guys behave, and in particular if\n we think some of it should be illegal (it should!) that’s a political problem that has to be addressed with politics.\n Feels like it would be a pretty popular party platform plank.</p>\n <p>I’m not one who’ll preach “no ethical consumption under capitalism” at you, but I don’t have a good come-back when someone\n challenges me on sending money to the FIFA or MLB scum. Is there anyone reading this who is entirely comfortable with all the\n places and practices that bring them enjoyment?</p>\n <h2 id=\"p-8\">The truth is on the field</h2>\n <p>The worlds of business and politics never contain a sentence that’s unscripted or incautious. The substrate of\n trust that a society needs to function is today weakened and still weakening. There’s a pervasive belief\n that what’s on our screen is at least in part self-interested untruth or, put another way, marketing. I often think of this as\n “The LinkedIn pathology”.</p>\n <p>Not out on the field. When Mo Salah’s got the ball at his feet and charges at the NZ back line,\n nobody in the world knows what’s going to happen in the next few seconds. When the Canadians’ pitcher walks in the fifth run of\n the inning, nobody can tell which way his search for the strike zone will turn.</p>\n <p>It’s unpackaged, unvarnished, and unedited. It’s physical truth, being created in real time.</p>\n <p>Put another way: Live unscripted improvised drama. It’s not like anything else in most people’s lives; the only thing I\n can think of that comes close is an instrumental break in a jam, whether that’s in your basement on a stage before thousands.</p>\n <p>It thrills and entertains me. I make no apologies for that. I’d sure like to improve the societal basis that poisons it,\n and increasingly more and more aspects of our lives, so I don’t have to feel bad about being a fan.</p>\n <p>In the meantime, 🎵<i>Take me out to the ball game…</i>🎵</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Sports/Soccer",
"term": "Sports/Soccer",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Sports",
"term": "Sports",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Soccer",
"term": "Soccer",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Sports/Baseball",
"term": "Sports/Baseball",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Baseball",
"term": "Baseball",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon",
"title": "Mastodon, The Only Good Choice",
"description": "Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean any combination of less useful, less safe, or less fun. It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say, offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed",
"url": "https://www.tbray.org/ongoing/When/202x/2026/07/05/Choose-Mastodon",
"published": "2026-07-05T19:00:00.000Z",
"updated": "2026-07-09T18:23:45.000Z",
"content": "<p>Dear World: Now is a good time to get off social media that’s going downhill. Where by “downhill” I mean\n any combination of less useful, less safe, or less fun.\n It’s time for something better, and by “something better” I mean Mastodon. Which, I’m here to say,\n offers a better social-media experience than the alternatives. Furthermore, the alternatives are fatally flawed.</p>\n <p>By “Mastodon” I mean the many servers, mostly (but not all) running the\n <a href=\"https://github.com/mastodon/mastodon\">Mastodon software</a>, that\n communicate using the\n <a href=\"https://en.wikipedia.org/wiki/ActivityPub\">ActivityPub protocol</a>. Now I’ll try to convince you to start using one of\n them.</p> \n <p><i>[I posted an earlier version of this essay called\n <a href=\"/ongoing/When/202x/2025/11/03/Time-to-Migrate\">Time To Migrate</a> last year, but enough things have changed\n that it’s worthwhile revising and reposting.]</i></p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/05/join-mastodon.png\" alt=\"join-mastodon.org\"></img>\n <div class=\"caption\"><p>Start at\n <a href=\"https://joinmastodon.org\">joinmastodon.org</a></p></div>\n <h2 id=\"p-4\">The simplest argument</h2> \n <p>Have you noticed that social-media products, in the long term, seem inevitably to enshittify?\n I have. But there’s a major exception, a tool that’s been serving billions of us for\n decades, and works about as well as it ever did. I’m talking about email.</p>\n <p>Why does email stay reasonably healthy? Because nobody owns it. Anyone on any server can communicate with anyone else on any\n other. Nobody can buy it and make it a vehicle for their politics. Nobody can crank up the ads or\n make things worse to improve their profit margin.</p> \n <p>Mastodon’s like email that way. Plus it does all the Post and Repost and Quote and Follow and Reply and Like and Block stuff\n that you’re used to, and there are thousands of servers. Anyone can run one and nobody can own the whole thing. It doesn’t have\n ads and it won’t. It’s dead easy to use and it’s fun and you should\n <a href=\"https://joinmastodon.org\">give it a try</a>.</p>\n <p>The rest of this essay goes into detail about why Mastodon is generally great and why the alternatives have little future.\n But if the pitch sounds good so far, stop reading,\n <a href=\"https://joinmastodon.org/\">go get an account</a>, and climb on board.</p>\n \n <h2 id=\"p-18\">Why now?</h2>\n <p>Along with that “can’t be owned” and “no ads” stuff, \n the software is getting really good, particularly in the last couple of releases. It’s got cool features you won’t find\n elsewhere, and there’s very little cool stuff from elsewhere that’s not here.</p>\n <p>There was a time when newly-arrived people had\n confusing or unfriendly experiences, or missed features that were important to them.\n It looks to me like those days are over.</p> \n <h2 id=\"p-6\">Migration</h2>\n <p>Mastodon is many thousands of servers, and you can join the biggest,\n <a href=\"https://mastodon.social/explore\">mastodon.social</a>, or\n <a href=\"https://joinmastodon.org/servers\">shop around for another</a>. But here’s the magic thing: If you end up disliking the\n server you’re on, or find a better one, you can migrate and <em>take your followers with you</em>! You can’t ever get locked\n in.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/05/serveres.png\" alt=\"Choosing a Mastodon server\"></img>\n <div class=\"caption\"><p>The server-selection menu has lots of options.</p></div>\n <p>Migration is probably Mastodon’s most important feature. It’s why no billionaire can buy it and no corporation can enshittify it. As\n far as I know, Mastodon is the first widely-adopted social software ever to offer it.</p> \n <h2 id=\"p-7\">Interaction</h2>\n <p>You hear it over and over: “I had <a big number> of followers on Twitter and now I have <a less-big number> on\n Mastodon, but I get so much more conversation and interaction when I post here.”</p>\n <p>One of the people you’ll hear that from is me.\n My follower count is a bit less than half the 45K I had on Twitter-that-was, but I get immensely more intelligent, friendly\n interaction than I ever got there. (And sometimes I get told firmly that I’m completely wrong, but hey.) It’s\n the best social-media experience I’ve ever had.</p>\n <p>Dunno about you, but conversation and interaction\n seem like a big deal to me. One reason things are lively is…</p>\n <h2 id=\"p-8\">Sex</h2>\n <p>Here’s an axiom: An ad-supported service can’t have sex-positive or explicit content. Advertisers simply won’t tolerate\n having their message appear beside NSFW images or Gay-Leatherman tales or exuberant trans-positivity. Mastodon\n has all that stuff.</p>\n <p>Of course, you gotta be reasonable, posting anything actually illegal will get your ass perma-blocked and your account\n suspended. So will posting anything that’s NSFW etc without a “Content Warning”. That’s a built-in feature of Mastodon which\n puts a little warning (“#NSFW” and “#Lewd” are popular) above your post, which is tastefully blurred-out until whoever’s\n looking at it clicks on “Show content”.\n I use these all the time when \n I post about #baseball or #fútbol because a lot of the geeks and greens who follow me are pointedly uninterested in sports.</p>\n <p>(Oh, typing that in reminds me that you can subscribe to hashtags on Mastodon: Let’s see, I currently subscribe to, among\n others,\n <a href=\"https://mastodon.social/tags/vancouver\">#Vancouver</a>,\n <a href=\"https://mastodon.social/tags/murderbot\">#Murderbot</a>, and\n <a href=\"https://mastodon.social/tags/Fujifilm\">#Fujifilm</a>.)</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/05/ivory.png\" alt=\"The Ivory For Mastodon app for Apple platforms\"></img>\n <div class=\"caption\"><p>The “Ivory for Mastodon” app for Apple platforms,<br></br>one of the many fine alternative clients.</p></div>\n <h2 id=\"p-9\">Moderation and defederation</h2>\n <p>Did I just mention, two paragraphs up, getting blocked? Mastodon isn’t free of griefers, but the tools to fight them are good\n and getting better.</p>\n <p>The good news is that each server moderates its own members. There’s variation\n of the standards from server to server, but less than you’d think. Since there are thousands of servers, there are\n thousands of moderators, which is a lot.</p>\n <p>If you act in a way that others find offensive, you’ll probably get blocked by the offended people and also reported; the\n report can come from any server and it’ll go to the moderators on yours. On a well-run server, those mods will have a look and\n if you’ve actually been bad, your post might get yanked and you might get warned, or in an extreme case, booted off.</p>\n <p>(I’ve been reported for saying unkind things about Bibi Netanyahu and for posting too many photos of my\n cats (no, really) but that kind of thing is cheerfully ignored by good moderation teams.)</p>\n <p>Then there’s Mastodon’s nuclear weapon: Defederation.\n Suppose you’re prone to nasty bigotry in public and you get reported a lot and your server’s moderators <em>don’t</em> rein\n you in. Eventually, word will get around, and if things aren’t cleaned up, most servers will defederate yours, so that\n <em>nobody</em> on their server can see posts from anyone on yours. Your site is no longer part of the “Fediverse”; this is a powerful\n incentive for server owners to take moderation seriously.</p>\n <p>The effect is that the haters and scammers and Nazis who show up mostly get shuffled off-stage PDQ. Not\n always, unfortunately; a couple of years ago a wave of incoming Black people had bad experiences with racist abuse. Ouch. Is\n there <em>anywhere</em> in the world that a loud-voiced Black woman won’t provoke a chud eruption? <i>[sigh]</i></p>\n <p>But the good news is that recent Mastodon releases have been shutting prone-to-abuse channels\n down, so things are better than then and should continue to improve.</p>\n <h2 id=\"p-11\">Links are good</h2>\n <p>Corporate social-media services like to\n <a href=\"https://talkingpointsmemo.com/tpm-25/how-elon-musks-changes-to-x-made-our-discourse-far-stupider\">downrank posts with\n links</a>.\n Which makes me want\n to scream, because my favorite thing to post is a link+reaction to something cool, and so are my favorite posts to read.</p>\n <p>On Mastodon, when your post has a link, the software automatically fetches a preview of whatever you linked to and uses\n it to decorate the post.\n I mean, it’s the damn Internet, it only got interesting to non-geeks when we figured out how to turn millions of servers\n into a great big honking searchable hypertext.</p>\n <h2 id=\"p-12\">Search</h2>\n <p>Speaking of which, Mastodon search is pretty good these days. It’s become, just like this blog, part of my outboard\n memory, and I’m always typing things like “telephoto from:me has:media” into the search box. Fast enough, too.</p>\n <h2 id=\"p-13\">Great clients</h2>\n <p>Another good thing about Mastodon is that there is plenty of good client software\n to choose from, mostly open-source. The best ones are miles ahead of Xitter and Threads and\n Bluesky and, really, anything.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/05/Screenshot_20251110-104045.png\" alt=\"A post from Brian Krebs in the Tusky app\"></img>\n <div class=\"caption\"><p>Anniversary post in the Android “Tusky” app.</p></div>\n <p>There are official Web and mobile clients from the Mastodon team and they’re fine, especially for admin and moderation work.\n But iOS people should check out\n <a href=\"https://apps.apple.com/us/app/ivory-for-mastodon-by-tapbots/\">Ivory</a>, Androiders should look at\n <a href=\"https://tusky.app\">Tusky</a>, and everyone should try\n <a href=\"https://phanpy.social\">Phanpy</a>. I live in Phanpy on both my Mac and my Pixel<span class=\"dashes\"> —</span> it’s a\n Web thing but installable as a PWA.</p>\n <p>Commercial products, especially social-media services, have <em>never</em> been at peace with third-party clients.\n Twitter used to be, but then it stabbed those developers in the back. It’s easy to\n understand why; every product manager has it drilled into them that they <em>must control the user experience</em>. This ignores\n the ancient wisdom (I first heard it from\n <a href=\"https://en.wikipedia.org/wiki/Bill_Joy\">Bill Joy</a>) “Wherever you work, most of the smart people are somewhere else.”</p>\n <p>Mastodon doesn’t have that kind of product manager, but it does have a\n <a href=\"https://docs.joinmastodon.org/api/\">fully-capable API</a>, developed in the open and with no\n hidden or restricted features. Which means you’re going to get better clients.</p>\n <h2 id=\"p-14\">Algorithms</h2>\n <p>The algorithms that commercial social-media services use to sort your feed have one goal only: Maximize engagement and thus\n revenue. They have no concern for quality or morality, and have been widely condemned by people who think about this\n stuff. So much so that there’s a feeling that Algorithms Are Bad.</p>\n <p>Mastodon has an algorithm: Show the posts from the accounts you follow, latest first. It works pretty\n well. It also has “Trending” feeds of the most popular posts, hashtags, and links. I hit those once a\n day or so to get a feeling for what’s going on in the world.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/07/05/Trending.png\" alt=\"Trending screen in PhanPy\"></img>\n <div class=\"caption\"><p>The “Trending” display in Phanpy.</p></div>\n <p>I do think there’s room for improvement here; Bluesky has shown off the idea of pluggable feed-ranking algorithms, with many to\n choose from, and I like it. No reason in principle we couldn’t have the same thing on Mastodon.</p>\n <h2 id=\"p-15\">Money</h2>\n <p>Every other social network has started with a big pot of money, whether from venture-capital investors (Twitter, Instagram,\n Bluesky) or from a Big Tech corporate parent (Google+, Threads). The people who provided that money want it back, plus a whole\n lot more.\n Thus, the manic drive for “engagement” and growth at all costs. They need to build huge data centers and employ an elite\n operations team plus an even more elite marketing group.</p>\n <p>Mastodon, eh… a gaggle of nonprofits and co-ops and unincorporated affinity groups, financed by Patreon or low annual dues\n or Some Random Geek who likes running a server.</p>\n <p>Since nobody owns it, nobody can extract a profit from it. Which means that from the big-money point of view, it’s entirely\n non-investable. The goal isn’t for anybody to make money, it’s to be instructive and intense and fun. It’s run on the cheap.\n You know what they call systems that are cheap and diversified? Resilient. Sustainable. Long-lived.</p>\n <p>Last year\n <a href=\"https://www.tbray.org/ongoing/When/202x/2024/11/15/Not-Bluesky\">I wrote</a>: \n “Think of the Fediverse not as just one organism, but a population of mammals, scurrying around the ankles of the bigger and\n richer alternatives. And when those alternatives enshittify and fall, the Fediversians will still be there.” After\n “scurrying” I should have added “and evolving”.</p>\n <h2 id=\"p-19\">But Bluesky!</h2>\n <p>I like the Bluesky people and their software and some of their ideas. But I don’t see it as a good long-term\n option, for two reasons. First, it’s not decentralized, in that it couldn’t survive if\n <a href=\"https://bsky.social/about/faq\">Bluesky Social PBC</a> fell on bad times. Yes, I know about\n <a href=\"https://blackskyweb.xyz\">BlackSky</a> (am a fan) and\n <a href=\"https://eurosky.tech\">Eurosky</a> (dunno enough yet) and they don’t change my opinion.</p>\n <p>Second, I think it’s inevitable that Bluesky-the-company will indeed go sour. They have raised\n <a href=\"https://techcrunch.com/2026/03/19/bluesky-announces-100m-series-b-after-ceo-transition/\">a total of $123M</a> in\n venture-capital investments. The biggest chunk, $100M from\n <a href=\"https://baincapitalcrypto.com\">Bain</a> and friends, was signed in April 2025 but not disclosed\n until a year later. Why not, I wonder? Actually, I don’t wonder at all: Because they knew perfectly well that long-term\n survivors like me would be horrified.</p>\n <p>You, see the people who coughed up all those millions didn’t do it out of pure love or idealism, they want Bluesky to become\n a money machine that emits a fountain of gold so they get a payback in the billions. \n Which, OK; that’s what Venture Capital is for. Except for, I see no evidence that Bluesky has anything resembling a business\n model. See the problem?</p>\n <p>I see two possible outcomes: The company craters when the money runs out, or it builds a\n lucrative income stream, probably based on advertising. Which means we can expect to see the pathologies that make X and\n Facebook and friends so loathsome.</p>\n <h2 id=\"p-16\">Mastodon’s the only option</h2>\n <p>The only social-media option, I mean, that’s decentralized, not owned or controlled by anyone, and working well today as you\n read this. It’s intense and interactive and fun. Why settle for less?</p>\n <p><i>(Disclosure: I have no formal connections with the Mastodon organization, aside from being a low-level supporter on\n Patreon.)</i></p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Business/Publishing",
"term": "Business/Publishing",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Business",
"term": "Business",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Publishing",
"term": "Publishing",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World/Social Media",
"term": "The World/Social Media",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Social Media",
"term": "Social Media",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs",
"title": "Automata, Built For Comfort or Speed",
"description": "It’s been a while. February was the last entry in this Quamina Diary; I never stopped working on it but there hasn’t been much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!",
"url": "https://www.tbray.org/ongoing/When/202x/2026/06/14/DFA-Costs",
"published": "2026-06-14T19:00:00.000Z",
"updated": "2026-06-16T21:10:08.000Z",
"content": "<p>It’s been a while. February was the last entry in this\n <a href=\"/ongoing/What/Technology/Quamina%20Diary/\">Quamina Diary</a>; I never stopped working on it but there hasn’t been \n much blogworthy. This piece offers a progress update for those who’ve been entertained by Quamina, and also a\n pleasing (well, to me anyhow) dip into finite-automata theory and practice. With numbers and graphs and a bluesman!</p>\n <p>Since it’s been so long, here’s what Quamina, a Go-language library, does: You can add “Patterns” to a Quamina instance, they\n match the values of fields in JSON objects, and then you show Quamina a JSON “Event” and it’ll tell you which Patterns matched\n it. It’s pleasingly fast and in many cases the speed is not strongly affected by the number of Patterns you’re trying to\n match.</p>\n <p>The last release, V2.0.2 back in March, marked the arrival of a reasonably-full regular-expression dialect into Quamina’s\n pattern language, so you can say, for example, that the <code>Filename</code> field has to match\n <code>map-[0-9]+.(png|pdf|jpe?g)</code>.\n Regular expressions were a lot of work and a lot of fun.</p>\n <h2 id=\"p-1\">Finite-automaton wrangling</h2>\n <p>Quamina works by compiling the Patterns into finite automata, then matching the Event fields by traversing them.\n To handle multiple Patterns, Quamina merges the automata together, a technique that’s been well-studied in Computer Science for\n decades. From a set-theoretic point of view it’s a union; an OR through Boolean lenses. There’s really no limit in theory\n for how many patterns you can merge, and Quamina has no problem at all with thousands.</p>\n <p>There are two flavors of finite automata: Deterministic (DFAs) and Nondeterministic (NFAs). If you have a university\n degree in CS they probably made you study this at some point. Weirdly, many people find the subject boring.</p> \n <p>I’m not going to explain the differences, if you want to know it’s easy to look up, and anyhow the story I want to tell\n doesn’t need it. Here’s what the story needs:</p>\n <ol>\n <li><p>To implement wildcards and regular expressions, you need NFAs.</p></li>\n <li><p>Matching data with DFAs is generally a whole lot faster than with NFAs.</p></li>\n <li><p>There’s a well-known algorithm for transforming any NFA into a DFA that matches exactly the same data. It’s really a\n lovely algorithm, you want to tickle it under its adorable little chin.</p></li>\n <li><p>In some cases, the algorithm can be brutally expensive, along the lines of <code>O(2<sup>N</sup>)</code>.</p></li>\n </ol>\n <h2 id=\"p-2\">The benchmark from Hell</h2>\n <p>I found a data file in the Wordle source code with 13K or so 5-letter words. I inserted a <code>*</code> at a random location\n in each. To illustrate, here are the first five results: <code>aah*ed</code>, <code>aalii*</code>, <code>*aargh</code>,\n <code>aar*ti</code>, and <code>abaca*</code>.</p>\n <p>The benchmark is, you load these into a Quamina instance and measure how fast it is to load them, how much memory the\n merged NFA consumes, and how many Patterns per second you can match. Then you repeat the exercise, converting each NFA into\n a DFA.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/06/14/Willie.png\" alt=\"Willie Dixon\" class=\"inline\"></img>\n <p>I loaded 10K Patterns in NFA form, but the NFA-to-DFA conversion got so brutal my patience only allowed me to load and\n measure 300 in DFA form. (Which kind of gives away this article’s punchline but stick with me, the details are fun).</p>\n <h2 id=\"p-5\">Willie Dixon</h2>\n <p>He was a famous bluesman and I need help from him to explain my APIs.</p>\n <p>Quamina’s latest PR adds APIs\n to turn the NFA-to-DFA conversion on and off; it’s off by default. There are two <code>MatcherBuildMode</code> values,\n <code>BuiltForComfort</code> and <code>BuiltForSpeed</code>. Which are out-takes from Willie’s 1959 song <cite>Built For\n Comfort</cite>, and the lyrics go like this:</p>\n <blockquote>\n <p>Some people built like this, some people built like that,<br></br>\n The way I’m built, don’t you call me fat<br></br>\n Cause I’m built for comfort, I ain’t built for speed<br></br>\n …</p>\n </blockquote>\n <p>Willie was a big guy, way over six feet and not exactly slender. I know this because I interviewed him once, but that’s\n another story. Lots of others have covered this tune, most of whom are, um, well-rounded.</p>\n <p>Speaking of which… here is Quamina’s memory consumption in NFA mode.</p>\n <img src=\"Comfort-size-in-mb.png\" alt=\"Memory cost of many merged NFAs\"></img>\n <p>The memory cost is pretty well linear in the number of patterns. For 10K patterns Quamina uses something over 25M which feels\n kind of reasonable to me.</p>\n <p>Here’s the story for DFAs.</p>\n <img src=\"Speed-size-in-mb.png\" alt=\"Memory cost of many merged DFAs\"></img>\n <p>I haven’t run regressions or anything and I don’t think that’s actually <code>O(2<sup>N</sup>)</code>, but the second\n derivative is solidly positive, which in simple English means “doesn’t scale”.</p>\n <p>Now let’s look at the Pattern-addition time for NFAs and then DFAs.</p>\n <img src=\"Comfort-msec-per-AddPattern.png\" alt=\"Time cost of merging many NFAs\"></img>\n <img src=\"Speed-msec-per-AddPattern.png\" alt=\"Time cost of merging many DFAs\"></img>\n <p>Once again, the NFA cost increases more or less linearly (albeit interestingly jagged), while for DFAs, look at that\n second derivative. This was what eventually made my patience give out and limit the DFA run to 300 Patterns.</p>\n <p>Now let’s look at the payoff, the number of Event matches/second in NFA- and DFA-land.</p>\n <img src=\"Comfort-matches-per-second.png\" alt=\"Matching speed of many merged NFAs\"></img>\n <img src=\"Speed-matches-per-second.png\" alt=\"Matching speed of many merged DFAs\"></img>\n <p>The NFA performance degrades at something like <code>O(N<sup>-1</sup>)</code>, but DFAs just don’t care. After a few lurches\n it rolls along at between 500 and 600K/second. Not bad, and based on experience with huge DFAs that were built from\n exact string matches, my belief is that the matching speed would eventually drift down, but slowly, not remotely a linear\n function of the number of Patterns.</p>\n <h2 id=\"p-3\">Not just pictures but numbers too</h2>\n <p>It was maybe a little unfair to compare 10K NFAs against only 300 DFAs, so let’s focus in.\n (This is on a 2023 M2 MacBook Pro.)</p>\n <table>\n <tr valign=\"top\" align=\"center\"><td class=\"empty\"></td><th colspan=\"3\">300 Patterns</th></tr>\n <tr valign=\"top\"><td class=\"empty\"></td><th>Memory</th><th>Add-Pattern time</th><th>Matches/sec</th></tr>\n <tr align=\"center\"><td>NFAs</td><td>860K</td><td>0.1 ms</td><td>222K</td></tr>\n <tr align=\"center\"><td>DFAs</td><td>45M</td><td>7.7 sec</td><td>404K</td></tr>\n <tr valign=\"top\" align=\"center\"><td class=\"empty\"></td><th colspan=\"3\">10K Patterns</th></tr>\n <tr align=\"center\"><td>NFAs</td><td>27M</td><td>2.3 ms</td><td>21K</td></tr>\n </table>\n <p>That’s pretty shocking stuff. 10K NFAs occupy less memory than the DFAs equivalent to 300 NFAs.\n And the Add-Pattern time, which is totally dominated by the NFA-to-DFA logic, is getting into intractable territory.\n So why would anyone mess with the DFA conversion? Because it matches data twice as fast!</p>\n <h2 id=\"p-4\">Practical advice for Quamina users</h2>\n <p>First, if you’re a normal human being and only matching a handful of patterns against a few Events/second, ignore all this\n and just take the defaults, Quamina latency will vanish in the static.\n If you’re matching lots of numeric and string values against many Events/second, don’t lose any sleep, keep on packing in the Patterns\n and Quamina probably won’t slow down enough for you to even notice.</p>\n <p>In theory you’d eventually get into memory trouble but in my considerable experience with Quamina and its AWS-built predecessor\n <a href=\"/ongoing/When/202x/2022/09/02/Hello-Ruler\">Event Ruler</a>, you have to be venturing into\n extreme-craziness territory for that to happen. (It did happen. An Amazon group added literally a million Patterns. It \n still ran way faster than anything else they could find.)</p>\n <p>If you need to match wildcards or regexps, adding Patterns stops being free. The slowdown is roughly linear in the number of\n Patterns and isn’t actually terrible, see the data above. But if you’re using a relatively small number of regexp Patterns, go\n right ahead and turn on DFA conversion with “BuiltForSpeed” mode.</p>\n <h2 id=\"p-6\">What next?</h2>\n <p>There’s one minor Quamina feature that’s disabled in BuiltForSpeed mode, so I’ll need to fix that and do a release.</p>\n <p>I bet there are still low-hanging fruits that could speed up the Hell benchmark, but anyone looking for those should\n bear in mind that they’re fighting settled Computer Science, you’re never going to make NFA-to-DFA conversion reliably\n linear.</p>\n <p>But to be honest, Quamina is starting to feel fairly feature-complete.\n I’d like to see a few adapters so you could use Quamina with Protobufs and Thrift and CBOR and other formats that\n aren’t JSON.</p>\n <p>But in fact Quamina doesn’t have that many users; I’ve only heard from a handful. Who knows, maybe the problems you learn to solve\n when you’re working at AWS, and most of the groups think millions of events per seconds is an ordinary workload, aren’t widely\n applicable in the broader world of Open Source?</p>\n <p>Which is to say, me working on Quamina isn’t helping that many people. At one level, I don’t care, because it’s been fun and\n instructive.\n I’d probably enjoy turning this “Quamina Diary” series into a monograph or small book if there were an interested publisher.</p>\n <p>And thanks to everyone who’s been reading along.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/Quamina Diary",
"term": "Technology/Quamina Diary",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Quamina Diary",
"term": "Quamina Diary",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links",
"title": "Long Links (AI-free)",
"description": "Hey everyone, I know you’re overloaded because everything has become overly efficient. Long-form reading or writing or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok",
"url": "https://www.tbray.org/ongoing/When/202x/2026/06/05/Long-Links",
"published": "2026-06-05T19:00:00.000Z",
"updated": "2026-06-10T18:40:51.000Z",
"content": "<p>Hey everyone, I know you’re overloaded because everything has \n <a href=\"/ongoing/When/202x/2020/07/05/Too-Efficient\">become overly efficient</a>. Long-form reading or writing\n or art or music, who’s got time for that? Fortunately there are those who still do and here’s some if it. I hope one or two of the\n link targets can chisel their way into your jammed schedule and bring with them joy or rage or another appropriate\n feeling. Today’s curation has a lot of books and music and way more humor than usual. Also, a good electric wok.</p>\n <p>Now, let’s all take a couple of breaths and gingerly approach the A-word, namely “AI” (as understood in 2026).\n Which is occupying much more of my attention and cognition than I would like, and there are gems embedded \n in the flood; granted, sparsely but they still add up.\n I respect that many of you will have just fucking had it with that subject. So I shuffled that material off into \n <a href=\"/ongoing/When/202x/2026/06/08/Long-Links-AI\">Long Links (AI)</a>, which you can drop by (or not) as you please.</p>\n <h2 id=\"p-1\">Books</h2>\n <p>One of the weirdest and flawed but still good things I’ve read this year is\n <a href=\"https://en.wikipedia.org/wiki/The_Luminaries\">The Luminaries</a>, written by Eleanor Catton back in 2013, a pretty dark\n tale of murder and theft and love and oppression in a not-so-great corner of New Zealand during an 1866 gold rush. Really super\n intense and hard to put down; even though it’s 900+ pages I never got bored.\n But freakishly complicated and I was left puzzled by multiple plot elements. Fortunately (yay\n Internet!) there’s \n <a href=\"https://115journals.com/2014/04/05/deconstructing-the-luminaries-a-timeline\">Deconstructing The\n Luminaries</a>, an explainer.</p>\n <p>Other recent books: <cite>Platform Decay</cite>, minor Murderbot, but still worth reading. <cite>The Incandescent</cite> by\n Emily Tesh, yet another highschool-for-magic book, only with the grownups in the foreground and the kids behind them. Way more fun\n than the last few instances of that genre. Also, sex. Finally worth mentioning: <cite>The Everlasting</cite> by Alix Harrow,\n which started slow but eventually got a real grip on me; recommended.</p>\n <p>I was in the library today and I always cruise past the “featured” table, where I saw\n <a href=\"https://en.wikipedia.org/wiki/Nobody%27s_Girl_(memoir)\">Nobody’s Girl</a> by Epstein victim Virginia Giuffre (R.I.P.)\n and\n <a href=\"https://en.wikipedia.org/wiki/Empire_of_AI\">Empire of AI</a>, Karen Hao’s huge takedown of OpenAI and Altman. But\n I just now do not have the spoons. Maybe later.</p>\n <p>Hmm, they tell me men can write books too. Must look into some.</p>\n <h2 id=\"p-2\">Political economy</h2>\n <p>I and many others are deeply discontented with the current flavor of late-stage capitalism, that “late-stage” a\n conscious callout to terminal illness. So do we really want to do away with Capitalism as\n such, or retain it but try to regulate away inhumane behaviors and effects? Or what? Let’s not forget that there are still\n people out there proud to call themselves Socialists and their take is that Capitalism can’t be fixed and must be replaced. With\n what?</p>\n <p>Anyhow, if you want to hear what these people are saying the place to go is\n <a href=\"https://jacobin.com\">Jacobin</a>. I’m not a regular visitor but when I do drop by I’m starting to hear the phrase\n “market socialism”. Thus\n <a href=\"https://jacobin.com/2026/05/market-socialism-capitalism-ownership-exploitation\">How Socialism in the 21st Century\n Could Work</a>. The tone is kind of nonspecific and academic but it’s part of a conversation that\n I think the (large, growing) mad-at-Capitalism demographic needs to have.</p>\n <p>Speaking of the pathologies of late-stage capitalsm, Paul Krugman’s\n <a href=\"https://paulkrugman.substack.com/p/bezos-backlash-and-zombies\">Bezos, Backlash and Zombies</a> describes a Bezos TV\n appearance in which Jeff said some really dumb things. Which is a bit surprising because while fewer and fewer people seem to like\n him, most people think he’s pretty smart. Krugman tears apart Bezos’s deep and broad misunderstanding of how taxation works. He\n attributes it to what he calls “Billionaire Brain”; the notion is plausible. The discussion goes on into popular perceptions\n of business in general, technology in particular. And (*sigh*) AI. Good stuff.</p>\n <p>People like reading books on screens and most public libraries now support that. I believe a high proportion of such loans go\n through <a href=\"https://libbyapp.com/\">Libby</a>, which is what I use.\n But the publishers don’t actually sell e-books to libraries, they rent them,\n a price for a fixed number of loans. And as you might expect, that price keeps going up, to the point that public libraries all\n over the world are hurting. So,\n <a href=\"https://www.publishersweekly.com/pw/by-topic/industry-news/libraries/article/100488-library-organizations-urge-big-five-to-address-digital-pricing.html\">Library Orgs Urge Big Five to Address Digital Pricing</a>.\n Paper books are looking better and better.</p>\n <p>It turns out that America’s capital is a good experimental platform for crime research. Check out\n <a href=\"https://www.niskanencenter.org/washington-dc-crime-decline-and-its-lessons-for-american-policing/\">Washington, D.C.’s\n crime decline and its lessons for American policing</a> from the Niskanen Center. Guess what: There’s little correlation\n between the number of cops and the amount of crime. Also, when Trump sent in the National Guard to stand around with their\n thumbs up their asses being visible, the effect was tiny and only on “property crimes of opportunity”. Does that mean graffiti?</p>\n <h2 id=\"p-4\">Funnies</h2>\n <p>Staying in the political lanes, here’s an\n <a href=\"https://talkingpointsmemo.com/where-things-stand/bessent-forced-to-defend-treasurys-prep-work-for-a-250-bill-with-trumps-face-on-it\">evening\n briefing</a> from <cite>Talking Points Memo</cite>, my favorite US-Politics blog. It’s got two unintentional jokes. First of\n all, this little sequence on the subject of Trump wanting to print a $250 bill with his face on it.</p>\n <blockquote><p>… two political appointees at the Treasury Department … repeatedly urged staff at the agency’s Bureau of Engraving\n and Printing to prepare prototypes of the note, according to the employees, who said the move raised concerns because federal\n law currently allows only deceased people to appear on bills.</p></blockquote>\n <p>There’s more than one way to read that… I’m suddenly starting to see the advantages of printing that bill.</p>\n <p>Then, a little further down, it turns out JD Vance gave a speech at the Air Force Academy, from which:</p>\n <blockquote><p>So as AI transforms the battlefield — in some ways positively, in some ways not — I ask that you be jealous and\n selfish about your role as a decision-maker in warfare,” he continued. “Use technology to make you better, but never submit to\n it. You are the masters of warfare…</p></blockquote>\n <p>Yeah well Bob wrote a whole song about\n <a href=\"https://www.bobdylan.com/songs/masters-war-mono/\">Masters Of War</a> and got the trade-offs about right.\n JD’s cluelessness is mountainous.</p>\n <p>OK, here’s an organized-crime story that makes me smile because it’s just so hilariously blatant. It’s like this: Worldwide,\n cricket is a big-money sport. Any readers who come from India or English-speaking southern-hemisphere countries are nodding\n because well of course. Cricket in Canada is <em>not</em> a big deal; our South Asian and Caribbean immigrants may be seen\n playing in the park on weekends with nobody but spouses and kids are watching.</p>\n <p>Nonetheless the International Cricket Council has been sending a few million dollars a year to Cricket Canada to develop the sport\n hereabouts. But no longer. It seems that Cricket Canada has been a comical hotbed of theft, fraud, extortion, and\n match-fixing. Recently gunshots were fired at its president’s house. The TV segments have been hilarious, with\n leaders of Canada’s cricket establishment sweatily denying everything while looking over their shoulders. Anyhow, if you like\n colorful true-crime drama, start with\n <a href=\"https://www.cbc.ca/news/canada/icc-suspends-cricket-canada-9.7218815?cmp=rss\">Cricket Canada surprised after\n “unexpected” suspension by governing body over breaches of membership</a>.</p>\n <h2 id=\"p-6\">Photography</h2>\n <p>I visit <a href=\"https://petapixel.com\">Petapixel</a> more days than not; it’s got the goods in the world of cameras and\n photography. There are solid camera and lens reviews, and a lot of focus on individual photographers. Here’s\n <a href=\"https://www.dpreview.com/articles/8507786637/the-photographer-who-never-stopped-chasing-the-perfect-shot\">The\n photographer who never stopped chasing the perfect shot</a> (and, on the evidence, got plenty). Next, Jeff Austin has been\n shooting the same parts of Tokyo through vintage glass for decades; he contributed\n <a href=\"https://petapixel.com/2026/06/06/twenty-years-one-city-what-tokyo-taught-me-about-patience-and-glass/\">Twenty Years,\n One City: What Tokyo Taught Me About Patience and Glass</a> and has a Web site,\n <a href=\"https://www.tokyoforgeries.com/\">Tokyo Forgeries</a>.</p>\n <p>Not just metal and glass; here’s an interesting camera bag: \n <a href=\"https://petapixel.com/2026/05/21/the-pilot-88-is-a-limited-edition-wotancraft-messenger-designed-by-chris-niccolls/\">The\n Pilot 88 Is a Limited Edition Wotancraft Messenger Designed by Chris Niccolls</a>. Finally, the story of Edith\n Tudor-Hart, in\n <a href=\"https://petapixel.com/2026/05/03/edith-tudor-hart-photographer-cambridge-five-soviet-spy/\">The Hidden History of a\n British Female Photographer Turned Soviet Agent</a>.</p>\n <h2 id=\"p-7\">Disturbing Evidence</h2>\n <p>Now, I said I liked Petapixel, and I do. But there’s a dark side; one \n can’t help notice the many <em>many</em> stories about the terrible\n things that happen to photographers. Then there’s the sub-genre of terrible things that\n happen in the context of wedding photography, which seems a swamp of suffering and pain. Well… why not both?\n <a href=\"https://petapixel.com/2026/05/26/wedding-photographer-seriously-injured-after-being-stabbed-by-guest/\">Wedding\n Photographer Seriously Injured After Being Stabbed by Guest</a>. I mean, it goes on and on:\n <a href=\"https://petapixel.com/2026/05/26/photographer-bitten-by-shark-or-sea-lion-during-surf-competition/\">Photographer\n Bitten by “Shark or Sea Lion” During Surf Competition</a> and\n <a href=\"https://petapixel.com/2026/06/04/woman-pleads-guilty-to-manslaughter-after-gun-themed-polaroid-photo-shoot-ends-with-photographers-death/\">Woman Pleads Guilty to Manslaughter After Gun-Themed Polaroid Photo Shoot Ends with Photographer’s Death</a>!\n Mommas, don’t let your babies grow up to be photogs.</p>\n <h2 id=\"p-3\">Personalities & misc</h2>\n <p>In the world of Big Biz generally and Big Tech specifically, PR leaders are very near the center of everything. CxOs are\n basically never allowed to say anything that isn’t carefully scripted in advance; PR does the scripting. When somebody fucks up\n and things (including the share price) go off the rails, PR owns the problem.</p>\n <p>During the years when I was a blogging in a\n relatively unsupervised way while employed in BigTech, I\n became pretty intimate with some of those PR folks.\n I remember not too long after I joined Amazon, my manager, a really good person who’d gone to lots of work to hire me,\n grabbed me in the hallway and said “PR is pissed about what you wrote about Microsoft” and I said “Don’t worry, talking PR\n people down off the ledge is one of my core competences.” He looked worried: “Well, good luck.” But it was OK.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/06/05/dont-be-evil.png\" alt=\"Cover of Don’t Be Evil by claire Stapleton\" class=\"inline\"></img>\n <p>Anyhow, Claire Stapleton was in PR at Google during the glory years, and was close to the center of things. She got laid off\n in 2023 and wrote <a href=\"https://techsupport.substack.com/p/game-over\">game over - some thoughts on layoffs and life</a>.\n A few things in there widened my eyes and I suspect they’ll do the same for anyone else who’s been in the Google ecosystem.\n Anyhow, recently she\n <a href=\"https://techsupport.substack.com/p/the-returning-cog\">wrote a book</a> which I have to say looks pretty promising.</p>\n <p>JA Westenberg’s <a href=\"https://www.joanwestenberg.com/p/on-wintering\">On wintering</a> speaks to me. One of the nice things\n about being (mostly) retired is I get lots of time for this. It’s hard to see how the machineries of Late Capitalism could allow\n this kind of space though; another reason to find something better.</p>\n <p>At least once a year I point excitedly at something by Paul Ford; this time it’s\n <a href=\"https://ftrain.com/canons\">Canons</a>. Beautiful stuff.</p>\n <h2 id=\"p-11\">Product pitch</h2>\n <p>For the last few years, we’ve had induction stovetops, which I totally love: Responsive, hot, easy to clean, low carbon load.\n but, I like to stir-fry and you can’t really balance a wok on an induction top. So we picked up an\n <a href=\"https://abangdun.com/products/induction-wok-cooktop-induction-burner-1700w-85v120v-electric-wok-curved-surface-electronic-cooker-concave-stoves\">Abangdun 1700W 100V~185V Induction Cooktop Concave Curved Surface 2026 New Electric Stove Wok</a>.\n It’s great; I stir-fry a couple times a month and get good reviews. Its built-in fan is kinda noisy.</p>\n <h2 id=\"p-8\">Music</h2>\n <p>Recently I ran across\n <a href=\"https://thesleeveens.com/tour/\">The Sleeveens</a>, Irish punks in Nashville. I said “punk” and I mean it, it’s nearly\n the pure stuff, somewhere on the Clash-to-Ramones axis, and like those bands, the tunes are good, and like the Clash, the lyrics\n are political and gonna make you sit up. Their recent outing\n <a href=\"https://thesleeveens.bandcamp.com/album/national-anthem\">National Anthem</a> is just one banger after another. My\n favorites are <cite>If I Was A Casual</cite> and <cite>Cowboy Queen</cite> and then there’s the title track, which begins “Burn\n your fuckin’ country to the ground in the name of love…” oh yeah.</p> \n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/06/05/Sleeveens.png\" alt=\"The Sleeveens\"></img>\n <p>Now let’s lean into a fertile field of musicological scholarship: Guitar solos! <cite>Rolling Stone</cite> let their dimbulb\n flag fly with \n <a href=\"https://www.rollingstone.com/music/music-lists/best-guitar-solos-1235519961/st-vincent-rattlesnake-1235520236/\">The\n 100 Greatest Guitar Solos Of All Time</a>, which unforgivably omits Ry Cooder on <cite>Amandrai</cite>, Susan Tedeschi on\n <cite>Pity the Fool</cite>, David Lindley on <cite>Do Ya Wanna Dance</cite>, Neil Young on <cite>Love To Burn</cite>, Megan\n Lovell on <cite>Preachin’ Blues</cite>, also <i>[Tim, enough -Ed.]</i>.</p>\n <p>But wait, there’s more. Not to be outdone,\n <a href=\"https://consequence.net\">Consequence</a> (of which I know nothing) came up with\n <a href=\"https://consequence.net/list/best-guitar-riffs-21st-century/\">70 Best Guitar Riffs of the 21st Century (So\n Far)</a>, which is full of smiles. I have to confess that I’d heard less than 10% of these.</p>\n <p>But anyhow Japanese metallistas Boris, about whom I’ve blogged not\n <a href=\"/ongoing/When/201x/2011/10/13/Pictures-of-Wata\">once</a>, not\n <a href=\"/ongoing/When/201x/2018/05/17/SotD-Attention-Please\">twice</a>, but\n <a href=\"/ongoing/When/201x/2017/10/13/Live-Metal\">thrice</a>, are on both lists! #61 on the solos, #7 on the riffs.\n Which they noticed, and took a bow. Here’s\n <a href=\"https://boris.bandcamp.com/album/akuma-no-uta-2\">Akuma no Uta</a> and also\n <a href=\"https://www.youtube.com/watch?v=QZ-BTzNsHnA\">a pretty hot live capture</a>.</p>\n <p>Finally, if you like Arvo Pärt and art that strains at the edges (what other kind is worth liking?) check out\n <a href=\"https://www.youtube.com/watch?v=XvEEeGqPsVA\">Robert Wilson’s “Adam’s Passion” (Music of Arvo Pärt)</a>. An hour and a\n half of fine music, well-played, and live human movement following Pärt’s slow pulse. Nakedness is involved.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/06/05/Adams-Passion.png\" alt=\"Perfomers in Robert Wilson’s “Adam’s Passion”\"></img> \n <h2 id=\"p-9\">Tech</h2>\n <p>I gather that Marcin Wichary is name to conjure with in design circles; he’s recently launched\n <a href=\"https://unsung.aresluna.org\">Unsung, my blog about software craft and quality</a> and boy, it’s outstanding.\n A lot of it is simple celebrations of typographical or UI excellence, but what got my attention was a polite-but-savage takedown\n of a recent Photoshop release: Parts\n <a href=\"https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-1/\">1</a> and\n <a href=\"https://unsung.aresluna.org/photoshops-challenges-with-focus-pt-2/\">2</a>.\n You’ll learn a lot about how to think about UI construction by reading this.</p>\n <p>Armin Ronacher, to whom it seems I’ve been linking a lot recently, offers\n <a href=\"https://lucumr.pocoo.org/2026/4/28/before-github/\">Before GitHub</a>, which to be fair contains equal parts of Current GitHub\n and After GitHub thinking, pretty well all of which seems good to me. Single points of failure are just bad, we should know\n that now, particularly when they start failing.</p>\n <p>Finally, have a look at \n <a href=\"https://www.construction-physics.com/p/the-age-of-the-amplifier\">The Age of the Amplifier</a> by Brian Potter at a Web\n site called “Construction Physics”. There are several different kinds of amplifiers, and most of the interesting ones were developed\n at Bell Labs during the 20<sup>th</sup> century. This is a history of that, based on the premise that “Amplifiers in general are\n important”. They are! The history is interesting, assuming you know what “voltage” and “current” are. It pleases me that people\n will still write long-winded pieces about narrow slices of history and apparently have fun doing it.</p>\n <h2 id=\"p-10\">That’s all folks</h2>\n <p>Well except for the companion aggregation of <a href=\"/ongoing/When/202x/2026/06/08/Long-Links-AI\">Long AI-related Links</a>.</p>\n <p>Until next time.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI",
"title": "Long Links (AI)",
"description": "The piece you’re now looking at exists because my latest “Long Links” curation of interesting not-lightweight material included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people have had more than enough of this discourse and I thought I’d spare them by moving these bits over here",
"url": "https://www.tbray.org/ongoing/When/202x/2026/06/08/Long-Links-AI",
"published": "2026-06-08T19:00:00.000Z",
"updated": "2026-06-10T18:35:01.000Z",
"content": "<p>The piece you’re now looking at exists because\n <a href=\"/ongoing/When/202x/2026/06/05/Long-Links\">my latest “Long Links”</a> curation of interesting not-lightweight material\n included quite a few focused on our dominant malaise, namely you-know-what, I mean it’s in the title. Plenty of people\n have had more than enough of this discourse and I thought I’d spare them by moving these bits over here.</p>\n <p>Let’s start with raw data: Is AI improving people’s lives?\n <a href=\"https://dustycloud.org\">Christine Lemmer-Webber</a> was kind enough to\n <a href=\"https://social.coop/@cwebber/116698488515037678\">ask the world</a> or at least the Mastodon part of it, and the results\n weren’t subtle or nuanced at all.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/06/08/CL-W-poll.png\" alt=\"“genAI has made my life” poll by Christine Lemmer-Webber\"></img>\n <p>I encourage everyone to follow the link and read the conversation that broke out around that poll. It will not cheer you\n up.</p>\n <p>And for my money that’s the most important take-away I’m offering today. Whether we’re using it or not, “AI” is not a thing\n that is making us happy.</p>\n <h2 id=\"p-1\">Where I stand</h2>\n <p>Currently, I’m a contra. GenAI is being pushed by terrible people who are trafficking in lies and abusing the planet, and\n should their far-fetched dreams come true the consequences would be terrible for most people. Because they want to\n disempower knowledge workers, remove them from the economy, and cast them loose on the tender mercies of the market.</p>\n <p>The reason for that “Currently” in the paragraph above is that we’re living in a liminal space where everybody I know who has\n any brains is convinced that there’s a bubble inflated by trillions of dollars of speculative and likely doomed investment. It’s \n very near popping, and the consequent miasma of fear and greed makes it absolutely impossible to have a reasonable\n discussion of what GenAI might be good for and might not.</p>\n <p>The onrushing terrible trio of IPOs (SpaceX, OpenAI, Anthropic) feels to me like when there’s a 9.2 earthquake 50km offshore and\n so far no tsunami has been detected but everyone’s glancing nervously at the horizon.</p>\n <p>So anyhow, for now I’m not going to use any GenAI tools myself. Post-pop, it may develop that there ways it can be\n ethical and useful, albeit at an immensely smaller scale than the LLM edgelords are pitching. We’ll see.</p>\n <p>I have been accepting human-curated Claude-driven PRs on my Quamina hobby project. For which I’ve already been called a Nazi\n by someone whose views I take seriously. (But I really don’t think I am.) I do think that when the dust settles,\n there will be a role for LLMs in software development, but I also think we haven’t figured out yet what it is. I\n absolutely do not believe for a second the claims of 10x improvements in “productivity” (I do not think that word means what you\n think it means).</p>\n <p>Having said all that, here are morsels of gold from the torrent of AI dross that wants to flood every fucking one of my\n input channels.</p>\n <h2 id=\"p-3\">Critiques</h2>\n <p>Bram Cohen says \n <a href=\"https://bramcohen.com/p/the-cult-of-vibe-coding-is-insane\">The Cult Of Vibe Coding Is Insane</a>. Yup.\n Kyle Kingsbury writes a long sad series: <a href=\"https://aphyr.com/posts/411-the-future-of-everything-is-lies-i-guess\">The\n Future of Everything is Lies, I Guess</a>. He seems to come out about where I do: Not going there for now.</p>\n <p>Dr Bethan Tovey-Walsh offers us <a href=\"https://linguacelta.com/blog/2026/05/LLMs.html\">The Community is the\n Achievement; the Achievement is the Community</a>, subtitled <cite>An ethical love-letter to distributed technology\n communities</cite>.\n It’s long and defies summarization, but light-hearted, a pleasant read. Its bottom line is, and I quote: “The right thing, in my\n view, for tech communities and projects to do is to reject contributions of LLM-generated content.” Recommended even if you\n disagree.</p>\n <p>Wow, here’s one that hits hard, academic output from big-name universities:\n <a href=\"https://www.researchgate.net/publication/403562106_AI_Assistance_Reduces_Persistence_and_Hurts_Independent_Performance?utm_source=substack&utm_medium=email\">AI Assistance Reduces Persistence and Hurts Independent Performance</a>.\n What’s shocking is that it doesn’t take that much AI exposure before the symptoms start appearing.</p>\n <p>Corey Quinn’s day job is helping people lower their AWS bills, and he markets it (very successfully) by writing snark-heavy\n essays on more or less anything cloud-related generally and AWS-focused specifically. It seems he’s got a new AI-oriented platform\n called “Artificial Confidence”, whence\n <a href=\"https://artificialconfidence.com/p/artificial-confidence-xai-the-neocloud\">Artificial Confidence: xAI, the\n Neocloud</a>. Corey is a gifted polemicist and xAI is a soft target. It does not come off well. Since xAI is a major chunk of\n the looming SpaceX IPO, this piece is highly relevant, possibly to your retirement savings.</p>\n <p>I know\n <a href=\"https://nooneshappy.com/article/appearing-productive-in-the-workplace/\">Appearing Productive in The Workplace</a>\n was widely posted and quite likely you’ve seen it; if you haven’t, go read it and if you already have, another visit\n might be beneficial.</p>\n <h2 id=\"p-2\">Bug finding</h2>\n <p>From the Linux-kernel world, there’s\n <a href=\"https://www.theregister.com/software/2026/03/26/linux-kernel-czar-says-ai-bug-reports-arent-slop-anymore/5226256\">AI\n bug reports went from junk to legit overnight, says Linux kernel czar</a> and\n <a href=\"https://lwn.net/Articles/1065620/\">Significant raise of reports</a>, which says about the same thing with a couple of\n plausible and important conclusions.\n There was a report about Linus Torvalds criticizing the inflow,\n (<a href=\"https://lkml.org/lkml/2026/5/17/896\">see here</a>) but it turns out he was after the practice of LLM-script\n kiddies reporting them to the “secret” mailing list. Which is a no-brainer because if an LLM that everyone can run finds a bug,\n then it’s obviously not a secret.</p>\n <p>Anyhow, looks like GenAI can be put to good use finding vulnerabilities.</p>\n <h2 id=\"p-5\">War stories and advice</h2>\n <p>Assuming that post-bubble it becomes possible to use AI in coding without being called a Nazi, we have to face the fact\n that we really don’t have any consensus best practices for doing that. So I enjoy reading narratives of people who describe\n what they did, in detail (no architecture astronautics) what worked, and what didn’t.</p>\n <p>Lalit Maganti’s\n <a href=\"https://lalitm.com/post/building-syntaqlite-ai/\">Eight years of wanting, three months of building with AI</a> which\n centers around building an SQL parser that exactly matches SQLite’s. That’s a freaking hard problem and I think Maganti’s\n narrative has pointers to a plausible future.</p>\n <p>The redoubtable and loud-voiced Daniel Stenberg of Curl fame offers us\n <a href=\"https://daniel.haxx.se/blog/2026/06/10/a-human-in-control/\">A Human In Control</a>, which says about what the title\n does, with feeling.</p>\n <p>Nelson Minar posted\n <a href=\"https://nelsonslog.wordpress.com/2026/03/18/first-impressions-of-jules-googles-coding-agent/\">First impressions of\n Jules, Google’s coding agent</a>; this will probably be interesting to those living in the Claude or Copilot territory.</p>\n <p>Rails is regarded as a good framework for building certain classes of Web site. Normally, it is considered as Ruby code and\n executed using the Ruby runtime. Sam Ruby (the surname is a coincidence) has been doing remarkable work arranging for\n Rails app specifications to be executed by other runtime platforms, notably including Typescript, Rust, and Elixir\n with no ruby (except for Sam) involved.</p>\n <p>He relies heavily on GenAI and describes his findings in \n <a href=\"https://intertwingly.net/blog/2026/05/22/The-Drucker-Inversion.html\">The Drucker Inversion</a>.\n It’s deep, thoughtful stuff.</p>\n <p>Joe Magerramov’s\n <a href=\"https://blog.joemag.dev/2026/05/the-valley-of-calm.html\">The Valley of Calm</a> makes perfect sense to me because I\n spent some years inside AWS. His basic point is that if GenAI ends up increasing the number of commits, your CI/CD pipeline is\n likely to cave under pressure. Looks to me like he’s right, and his proposals for how to address the problem sound plausible.\n “Plausible” isn’t good enough, this is another area where we just don’t yet know what the best practices are, and there’s only one way\n to find out.</p>\n <p>Hey, two AWS people in a row: Brooke Jamieson is a Developer Advocate, what I used to be at Google.\n <a href=\"https://medium.com/@brookejamieson/make-your-coding-agent-opinionated-10ca175801a9\">Make Your Coding Agent\n Opinionated</a> begins “I’ve been using coding agents daily for over a year across Kiro, Claude Code, Cursor, and Codex.”\n Here are her lessons.</p>\n <h2 id=\"p-6\">That’s all folks</h2>\n <p>We can argue with each other about how best (or if at all) to use this technology. Maybe it’s all irrelevant or (I think) at\n best a side-show until the AI-bubble greed and fear dissipates. Which can’t come too soon. Maybe it’s useful to work\n on the problem in standby mode while we wait for the bubble to collapse.</p>\n <p>I’m pretty sure it will.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/AI",
"term": "Technology/AI",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "AI",
"term": "AI",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026",
"title": "XML and JSON in 2026",
"description": "The best thing about long-lived incumbent technologies like JSON and XML is that nobody really has to think about them much any more. Except for, I do occasionally, because while I’m not the inventor of either, my name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run! And what ever happened to XML? Let’s shake off the dust and have a look",
"url": "https://www.tbray.org/ongoing/When/202x/2026/06/01/XML-and-JSON-in-2026",
"published": "2026-06-01T19:00:00.000Z",
"updated": "2026-06-02T23:08:22.000Z",
"content": "<p>The best thing about long-lived incumbent technologies like JSON and XML\n is that nobody really has to think about them much any more. Except for, I do occasionally, because\n while I’m <a href=\"/ongoing/When/200x/2008/11/22/Not-the-Inventor-of-XML\">not the inventor</a> of either, my\n name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run!\n And what ever happened to XML? Let’s shake off the dust and have a look.</p>\n <h2 id=\"p-1\">JSONiana</h2>\n <p><a href=\"https://datatracker.ietf.org/doc/html/rfc8259\">RFC 8259</a> is now nine years old and, like all the RFCs, is\n immutable. And, as is usually the case, a\n <a href=\"https://errata.rfc-editor.org/search/?rfc_number=8259\">list of errata</a> has built up over the years.</p>\n <p>Until a few days ago, many of the errata apparently hadn’t ever been looked at for a period\n measured in years. Now they’ve all been rejected or accepted. Despite a couple having been marked “Held for Document Update”,\n nobody is interested in writing a superseding RFC. There are already enough other JSON specs\n [<a href=\"https://www.json.org/json-en.html\">1</a>][<a href=\"https://ecma-international.org/publications-and-standards/standards/ecma-404/\">2</a>]\n but fortunately they all say the same thing.</p> \n <p>Which is to say, JSON is what it is and will never be improved or changed in any way. Among other things, there are literally\n billions of instances of JSON-reading software out there, most of them embedded in dumb low-rent devices that will never be\n updated.</p>\n <p>Granted, it’s irritating that JSON doesn’t have comments (ProTip: Add a “comment” field to your messages) and makes it\n hard to get the commas right and doesn’t distinguish between the different flavors of numbers and doesn’t have date/time literals and\n <a href=\"https://www.rfc-editor.org/rfc/rfc9839.html\">allows junk Unicode</a>. Not gonna be fixed. Which is OK because\n empirically, it’s good enough. Probably a few megabytes of JSON will have flowed back and forth between your phone or computer\n and the Net while you’ve been reading this.</p>\n <p>Of course, there’s YAML and TOML and CBOR and Thrift and Avro and Protobufs and Markdown and more. Maybe for your app one of\n them is a better choice than JSON.</p>\n <p>Oh wait, I forgot, there is a new thing:\n <a href=\"https://datatracker.ietf.org/wg/jsonschema/about/\">Work is under way</a> to write an RFC specifying JSON Schema,\n which is quite widely used but not well specified. Good luck to the people working on that; I’m not one of them.</p>\n <p>The best thing about JSON is nobody really has to think about it any more.</p>\n <h2 id=\"p-2\">XMLitude</h2>\n <p>Last month, on the “xml-dev” mailing list,\n <a href=\"https://en.wikipedia.org/wiki/Elliotte_Rusty_Harold\">Elliotte Rusty Harold</a> remarked, on the subject of XML\n generally: “Count me as one\n of the people who thinks it’s mostly obsolete and ultimately a failed experiment. People don’t want or need markup\n that’s designed to make documents easier for computers to read but harder for humans to write.”</p>\n <p>I replied and here’s an expanded version of what I wrote:</p>\n <p>Irrespective of the current uptake, and seen as an experiment, XML has been \n a success. It proved that:</p>\n <ol>\n <li><p>You can have a data interchange format that is radically independent\n of your computer architecture, operating system, programming language, and\n application.</p></li>\n <li><p>The only sane text standard for modern computing is Unicode, which in\n practice is affordable and reasonably straightforward to use.</p></li>\n </ol>\n <p>Prior to 1996, neither of these things were widely believed. The only\n “interoperable” data format was ASN.1, which is horrible and lacked quality\n software support. The resistance to Unicode was significant and\n widespread, and adoption was disappointing. Today, #1 and #2 above are the\n (low) bar to entry for any data packaging technology.</p>\n <p>As for current use, I guess “office\" document formats are XML for the long\n haul\n [<a href=\"https://en.wikipedia.org/wiki/Microsoft_Office_XML_formats\">3</a>]\n [<a href=\"https://en.wikipedia.org/wiki/OpenDocument#Application_support\">4</a>], but relatively few developers ever have to\n look inside them (thank goodness). XML remains a de-facto standard for text-oriented humanities computing\n [<a href=\"https://tei2026.tei-c.org\">5</a>], and for\n legislative data processing [<a href=\"https://www.legislation.gov.uk/developer/formats/xml\">6</a>][<a href=\"https://www.elegislation.gov.hk/datagovhk/hkel_data-dictionary_en.pdf\">7</a>][<a href=\"https://www.govinfo.gov/app/search/curated/uslm\">8</a>].\n At one point it dominated things like\n aircraft maintenance manuals, don’t know if that’s still true. RSS and Atom\n aren’t what they once were, but are far from gone; they’re how I drive my own personal news-reading.\n Then of course there’s\n <a href=\"https://en.wikipedia.org/wiki/EPUB\">EPUB</a>; do you read books on screens?\n And are\n <a href=\"https://en.wikipedia.org/wiki/XBRL#Lack_of_accuracy\">XBRL</a> and\n <a href=\"https://en.wikipedia.org/wiki/Universal_Business_Language#Global_Adoption_and_Implementation\">UBL</a> still things?</p>\n <p>It is true that there are few-to-no new applications that I know\n of that have much reliance on XML.</p>\n <p>Eh, it’s OK, it had a good run and moved the needle. It’ll keep a few\n folks employed for the foreseeable future.</p>\n <p>Like JSON, the best thing about XML is nobody has to think about it any more. Oops, if you got here I guess you just\n did. Sorry bout that.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/XML",
"term": "Technology/XML",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "XML",
"term": "XML",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology/Software",
"term": "Technology/Software",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Software",
"term": "Software",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore",
"title": "Tab Trick",
"description": "A person watching over my shoulder asked “How are you switching around so fast?” and I realized that while most readers here know this trick, some may not, and it’s awfully useful",
"url": "https://www.tbray.org/ongoing/When/202x/2026/05/24/Tab-Lore",
"published": "2026-05-24T19:00:00.000Z",
"updated": "2026-05-24T18:36:06.000Z",
"content": "<p>A person watching over my shoulder asked “How are you switching\n around so fast?” and I realized that while most readers here know this trick,\n some may not, and it’s awfully useful.</p>\n <p><i>[Update: I published an earlier version of this\n <a href=\"/ongoing/When/201x/2012/04/22/Tab-Lore\">in 2012</a> but have got that “How do you” question a couple times recently, so\n maybe it’ll still be new news to a few people.]</i></p>\n <p>In all the browers I use, Command-1 takes you to your leftmost tab,\n command-2 to the next one over, and so on up to Command-8. Command-9 selects the\n rightmost tab. Also, you can right-click on a\n tab and “pin” it; which shrinks it down to just the favicon, and moves it as far left as\n it can go.</p>\n <p>So the trick is, pin the same heavily-used tabs in the same place, and\n leave them there forever. In my main browser (currently Safari) it’s like\n this: </p>\n <ol>\n <li><p><a href=\"https://messages.google.com/web/\">SMS/RCS texts, linked to my Pixel.</a> This is a Google thing, not sure if you need to be on\n Android for it to work. But for those serious conversations that remain in text-land, it’s awfully nice when you can resort to\n an actual keyboard.</p></li>\n <li><p>Calendar.</p></li>\n <li><p>Mastodon (<a href=\"https://cosocial.ca/home\">CoSocial</a> via the\n <a href=\"https://phanpy.social/\">Phanpy</a> client).</p></li>\n <li><p>The local staging version of this blog, where I review and edit articles.</p></li>\n <li><p>What you are now reading.</p></li>\n <li><p>Blog comment review/approval.</p></li>\n <li><p><a href=\"https://github.com/timbray/quamina\">Quamina</a> (probably moving to Codeberg soon).</p></li>\n <li><p>Bluesky; but it seems I never go there any more unless I’m following links from elsewhere. To be honest, not sure what\n I’d replace it with.</p></li>\n </ol>\n <p>Have fun!</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/Web",
"term": "Technology/Web",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Web",
"term": "Web",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America",
"title": "Declining America",
"description": "Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and unbeliever contributions would be welcome. I declined, because it’s in the USA",
"url": "https://www.tbray.org/ongoing/When/202x/2026/05/19/Declining-America",
"published": "2026-05-19T19:00:00.000Z",
"updated": "2026-05-20T19:08:48.000Z",
"content": "<p>Recently I got an invitation from an organization I respect, to a gathering of senior people, unconference format. Yes, it’s\n mostly about AI. No, it doesn’t reek of boosterism. My guess is that the discussions would be relatively intelligent and\n unbeliever contributions would be welcome.\n I declined, because it’s in the USA.</p>\n <p>Here’s the text; maybe someone in a similar situation might find it useful.</p>\n <hr></hr>\n <p>Thanks to whoever thought of me for the kind invitation, which I must regretfully decline.</p>\n <p>I’m Canadian and as a matter of principle feeling negative about visiting a neighboring country whose leader has repeatedly\n threatened our sovereignty and shown massive disrespect for our nationhood. Particularly when that leader has followed up\n similar statements about other nations with military action.</p>\n <p>I could probably work around that. But there’s also the issue of entering the US; if I roll up at the border and am asked to\n disclose my social media output, there’s a significant risk of an extremely negative outcome. I have a family to support and\n really can’t afford that risk.</p>\n <p>I still consider myself a friend of your organization, and one with strong opinions about the subjects scheduled for\n discussion; my regrets about having to decline are entirely sincere.</p>\n <p>—Regards, Tim</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "The World/Politics",
"term": "The World/Politics",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Politics",
"term": "Politics",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology/AI",
"term": "Technology/AI",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "AI",
"term": "AI",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime",
"title": "Life During Class Wartime",
"description": "War is bad. Don’t start one. But we’re already in a class war and we’re losing. Where by “we” I mean most people; the winning side comprises, roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.] So, what to do in a war one didn’t choose?",
"url": "https://www.tbray.org/ongoing/When/202x/2026/05/03/Life-During-Class-Wartime",
"published": "2026-05-03T19:00:00.000Z",
"updated": "2026-05-06T17:28:35.000Z",
"content": "<p>War is bad. Don’t start one. But we’re already in a class war and we’re losing.\n Where by “we” I mean most people; the winning side comprises,\n roughly, the richest 0.1% of the population, who are morphing into a hereditary aristocracy. [I mean that, see below.]\n So, what to do in a war one didn’t choose?</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/05/03/Oxfam-distribution-of-wealth.png\" alt=\"Share of global wealth 2010-2015\" class=\"inline\"></img>\n <h2 id=\"p-1\">How bad is it?</h2>\n <p>It’s really bad, and getting worse fast. I recommend cruising through Wikipedia’s excellent\n article on\n <a href=\"https://en.wikipedia.org/wiki/Distribution_of_wealth\">Distribution of wealth</a>; maybe jump straight to the\n <a href=\"https://en.wikipedia.org/wiki/Distribution_of_wealth#Wealth_inequality\">Wealth inequality</a> section.\n I’ve pulled one helpful graph,\n sourced from Oxfam, into the margin. The article has loads of other statements of the form “The richest X compared to the\n poorest Y have Z times️ as much.” The values of X, Y, and Z are uniformly saddening.</p>\n <p>As a resident of a wealthy West-Coast New-World city, the effects of pathological inequality are in my face every day:\n Bentleys gleaming on the road, ragged people huddled in the rain cadging cash outside the drugstores,\n <a href=\"https://homelesshub.ca/community_profile/vancouver/\">thousands homeless</a>.</p>\n <h2 id=\"p-5\">Why is that bad?</h2>\n <p>It’s not only sinful by any sane definition of sin, but stupid, inefficient, and damaging. I turn once again to\n Wikipedia: <a href=\"https://en.wikipedia.org/wiki/Effects_of_economic_inequality\">Effects of economic equality</a>.\n I’ll add one pointer to an effect that is less obvious: It\n <a href=\"https://talkingpointsmemo.com/cafe/inquality-affordability-tax-wealthy\">exacerbates the unaffordability crisis</a>.</p>\n <p>One effect of the increasing imbalance between the ultra-wealthy and\n everyone else is the emergence of, effectively, a hereditary aristocracy. “Wait!” you exclaim, “How about high income-tax rates for\n the wealthy, and inheritance taxes?” You might well ask. It turns out those are no longer operative. I’ll get into\n details about that, but first…</p>\n <h2 id=\"p-3\">A parable: Grant Gustavson</h2>\n <p>I am, as previously related (see\n <a href=\"/ongoing/When/202x/2025/05/04/Southsiders\">Southsiders</a> and\n <a href=\"/ongoing/When/202x/2025/11/23/Soccer-vs-Football\">Fútbol Joy</a>) a fan of the Vancouver Whitecaps Football Club (VWFC)\n who play in\n <a href=\"https://www.mlssoccer.com\">Major League Soccer</a>. It’s affordable, light-hearted, high-drama, high-quality\n entertainment and has lifted my spirits notably in the recent dark years.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023555451.png\" alt=\"Fans with a “Save the Caps” message\"></img>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/05/03/PXL_20260426_023603197.png\" alt=\"Fans with a “Save the Caps” message\"></img>\n <div class=\"caption\"><p>Vancouver Whitecaps fans bring the love</p></div>\t\t\t\t\t\t \n <p>However, it appears that Vancouver’s about to lose the Whitecaps, at the whim of a Vegas-based purchaser, of whom\n <a href=\"https://www.nytimes.com/athletic/7244005/2026/04/30/las-vegas-vancouver-whitecaps-mls-buyer-gustavson/\">The Athletic\n writes</a>:</p>\n <blockquote><p>The potential buyer is Grant Gustavson, the son of Kentucky billionaire Tamara Gustavson and grandson of B. Wayne\n Hughes, founder of Public Storage, according to multiple sources with knowledge of the discussions. Forbes estimates Tamara\n Gustavson’s net worth at $8.5 billion.</p>\n <p>Gustavson, 30, lives in Las Vegas. A graduate of the University of Southern California, he has been involved with the\n athletic department at his alma mater and helped to develop the Name, Image and Likeness (NIL) program there. He continues to\n work with the USC basketball program and is also involved in the management of his family’s farm, “the country’s premier\n thoroughbred farm with decades of storied champions throughout the stables.”</p>\n </blockquote>\n <p>So this fucking youngster, who has life experience working at the gym at USC (where his Mom’s\n <a href=\"https://boardoftrustees.usc.edu/trustees/\">on the Board of Trustees</a>) and helping out at the family farm, can reach out\n his mighty hand and snatch away a popular pleasure from another nation. <i>Droit du seigneur</i> in action.</p>\n <h2 id=\"p-6\">Staying rich</h2>\n <p>I highly, highly recommend\n <a href=\"https://www.nytimes.com/2026/04/17/opinion/ezra-klein-podcast-ray-madoff.html\">Our Tax System Should Make You\n Furious</a> from the <cite>NYT</cite>. By “our” they mean America’s. First, it addresses the canard that the tax system is\n actually progressive; people who like things the way they are like to say “Forty percent of people pay no federal income taxes,\n and then the top 1 percent pay 40 percent of the income taxes.” (Tl;dr: Somewhere between highly misleading and a big fat lie.)</p>\n <p>Second, it explains the mechanisms by which\n generational wealth is accumulated and preserved, effectively in perpetuity. People like Bezos and Musk pay basically no\n income tax, and the way they do it isn’t complicated or hard to understand.</p>\n <p>There is actually a family of financial products called\n <a href=\"https://en.wikipedia.org/wiki/Dynasty_trust\">Dynasty Trusts</a>. The first ad that popped\n up in response to my Web search had the marketing copy “Dynasty trusts: preserving family assets for future generations”.\n Or, put another way, “Dynasty trusts: Starving beggars in your neighborhood.”</p>\n <h2 id=\"p-2\">Revenue from the rich</h2>\n <p>So what can we do about it? Tax expert Ray Madoff, the interviewee in the “Should Make You Furious” piece, has smart things to\n say. Then there’s \n <a href=\"https://www.lemonde.fr/en/opinion/article/2025/06/14/thomas-piketty-opponents-of-the-tax-on-the-ultra-wealthy-lack-historical-perspective_6742333_23.html\">Thomas \n Piketty: “Opponents of the tax on the ultra-wealthy lack historical perspective”</a>.</p>\n <p>The common thread is taxation of wealth not income, because the arcane abstractions of accounting make income too easy to\n hide. The argument is that a wealth tax of say 2%/year, starting at a threshold of a few tens of millions, won’t\n impair the lifestyles of the seriously wealthy, but still yield systemically important public-sector revenue</p>\n <p>Also worth reading, from the International Monetary Fund:\n <a href=\"https://www.imf.org/en/blogs/articles/2018/02/13/game-changers-and-whistle-blowers-taxing-wealth\">Game-Changers and\n Whistle-Blowers: Taxing Wealth</a>.\n Among other things, it reports that the proportion of wealth that is hidden in one offshore tax shelter or another is pretty small,\n ranging from 8% in the developed countries up to 30% in poor nations. Apparently it’s harder to hide wealth than income.</p>\n <h2 id=\"p-7\">Good karma</h2>\n <p>If wealth taxation won’t touch wealthy lifestyles and will help build a safer, calmer, happier society, it feels\n sort of irrational to oppose it. And some of the wealthy don’t. My favorite example of this is Avi Bryant. Check out\n <a href=\"https://macleans.ca/politics/tax-the-rich/\">I’m a Millionaire. Tax Me More, Please</a> and\n <a href=\"https://thenarwhal.ca/canada-wealth-tax/\">Meet a millionaire who wants Canada to tax the rich</a>. [Disclosure: I made\n a nice little chunk of money when my tiny investment in Avi’s startup turned into pre-IPO Twitter shares.] I’m also interested in\n <a href=\"https://patrioticmillionaires.ca\">Patriotic Millionaires</a>, which Avi founded.</p>\n <p>Also worth checking out: Jeff Atwood’s\n <a href=\"https://blog.codinghorror.com/stay-gold-america/\">Stay Gold, America</a> and\n <a href=\"https://blog.codinghorror.com/launching-the-rural-guaranteed-minimum-income-initiative/\">Launching The Rural Guaranteed\n Minimum Income Initiative</a>. So, not all of the 0.1% are The Enemy.</p>\n <h2 id=\"p-8\">It’s not complicated</h2>\n <p>Around the world, governments are running up huge debts and cutting back social programs because the taxation revenue doesn’t\n come near the amount it requires to provide a livable society. So the choice is stark: Cut and slash deeper (read: starving beggars)\n or find more money. There’s lots of money out there basically just playing financial\n games; it needs to be put to work doing something useful.</p>\n <p>This package of ideas should be easy to sell to voters. Of course, resistance will be ferocious and\n extremely well-funded. But the currently-winning side in our class war is actually a soft target. Target for what weapon, you ask?\n Democracy. No need for tumbrils and guillotines. Yet.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "The World/Politics",
"term": "The World/Politics",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Politics",
"term": "Politics",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives",
"title": "Corey’s Captives",
"description": "That’s James S.A. Corey, which is to say Daniel Abraham and Ty Franck, and their new series The Captive’s War, an in-progress work comprising 2¼ or so novels. The Coreys are of course best-known for their deservedly wildly popular The Expanse series and the subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should wade in, the following is for you",
"url": "https://www.tbray.org/ongoing/When/202x/2026/04/26/Coreys-Captives",
"published": "2026-04-26T19:00:00.000Z",
"updated": "2026-04-27T19:05:14.000Z",
"content": "<p>That’s\n <a href=\"https://en.wikipedia.org/wiki/James_S._A._Corey\">James S.A. Corey</a>, which is to say Daniel Abraham and Ty Franck,\n and their new series\n <a href=\"https://en.wikipedia.org/wiki/The_Captive%27s_War\">The Captive’s War</a>, an in-progress work comprising 2¼\n or so novels. The Coreys are of course best-known for their deservedly wildly popular <cite>The Expanse</cite> series and the\n subsequent success of the streaming-video version. The new series is… different. If you’re wondering whether or not you should\n wade in, the following is for you.</p>\n <h2 id=\"p-1\">Minor and meta spoilers</h2>\n <p>Don’t worry, you can go on reading this even if you plan to read the books. Here’s a spoiler that has appeared in every public\n mention of the book, which I’ll give away with a quote from page 102: “I think some important scientific questions have finally\n been answered. Alien life exists, and they are assholes.” Which is to say, it doesn’t go well for the humans.</p>\n <p>Now for the meta-spoilers. The novels are <cite>The Mercy of Gods</cite> and <cite>The Faith of Beasts</cite>, then there’s a\n novella, <cite>Livesuit</cite>. I found <cite>The Mercy of Gods</cite> a bit of a grind, and if that’s all I’d read I would have\n been pretty negative about this project. There is a major, <em>major</em> reveal partway into <cite>The Faith of Beasts</cite>\n that changed my whole outlook on the series; it makes the storytelling velocity really pick up. It’s a little annoying that\n <cite>Livesuit</cite> was published between the two full novels because it only really makes sense if you’ve finished both of\n them. So do like I did, and read the novella last.</p>\n <p>I have to ask why the Coreys couldn’t have pulled the curtain aside a little earlier on. And while I’m griping, let me add\n that the sped-up storytelling runs into a big honking cliffhanger ending at high velocity. Harumph.</p>\n <h2 id=\"p-2\">My take-away</h2>\n <p>It could go off the rails but if they can maintain their <cite>Expanse</cite> form, I suspect this series is going to be\n pretty great. The characters are fun to know and the narrative revolves around the great mother of all trolley-problem ethical\n challenges, which was not nearly resolved at cliffhanger-ending time.</p>\n <p>Those of us who are fussy about the plausibility of future technologies (hey, Charlie Stross) should avert their eyes from\n the Coreys’ fairly low-effort attempts to explain how the aliens and humans in this story accomplish the things they do. Doesn’t\n bother me much, though.</p>\n <p>Having said all that, this series is not cheerful stuff; I do <em>not</em> recommend it to those who, like many in these\n troubled times, are having trouble seeing the bright side of, well, anything.</p>\n <h2 id=\"p-3\">Will I read the next volume?</h2>\n <p>Yep, no hesitation. And they’ve already started working on a streaming version. Unfortunately it’s going to be on Amazon\n Prime, which I haven’t missed since unsubscribing a couple years ago. Getting this thing on the screen is\n going to be an extended, difficult, task. There are multiple species of aliens that the show is going to have to absolutely nail, with\n emotional credibility, for the story to work. Don’t hold your breath.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Arts/Books",
"term": "Arts/Books",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Arts",
"term": "Arts",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Books",
"term": "Books",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras",
"title": "Spring Evening",
"description": "On impulse, Lauren and I went out for a short walk — around just a few blocks — as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera on the way out the door",
"url": "https://www.tbray.org/ongoing/When/202x/2026/04/13/Modern-Cameras",
"published": "2026-04-13T19:00:00.000Z",
"updated": "2026-04-16T05:23:17.000Z",
"content": "<p>On impulse, Lauren and I went out for a short walk<span class=\"dashes\"> —</span> around just a few\n blocks<span class=\"dashes\"> —</span> as the grey Spring afternoon shaded to dusk. On a second impulse, I grabbed the camera\n on the way out the door.</p>\n <p>In our local community garden, here’s (I think) a\n <a href=\"https://en.wikipedia.org/wiki/Chard\">chard</a>.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56259.png\" alt=\"Looking down on a vegetable plant with glossy green leaves and orange-yellow stalks\"></img>\n <p>That was in Vancouver’s Mount Pleasant park, small but nice and apparently never not used. Also this old blackened\n fruit tree, we’re a bit past the fruit-blossom peak for this year. Nice to see I’m not the only old citizen trying to brighten\n things up.</p> \n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56264.png\" alt=\"Fruit-tree blossoms on a blackened branch\"></img>\n <p>Now we’re walking up a locally-main street called Main Street or “The Main” if you’re trying to sound\n hip. Someone put work into that window! I’ve bought my daughter a couple of cool birthday presents from the store behind it. My\n thanks to the building across the street for providing a dark background reflection.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56265.png\" alt=\"Used-fashion store window \"></img>\n <p>Back to the next block over from ours. A while ago a bunch of people were building little fairy/elf/hobbit villages at the\n bottoms of the big old trees. This isn’t that. What is it?</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/04/13/TXT56270.png\" alt=\"Dolls and related tree artifacts at the base of a tree in dim light\"></img>\n <p>The colors of the natural surfaces are real.</p>\n <h2 id=\"p-1\">Cameras</h2>\n <p>When I shot these, it\n was getting dark but I didn’t think much, mostly just pointed and shot. (Fiddled with the aperture dial a bit.) Then I came\n home and pulled them into Lightroom and didn’t need to do really anything about colors. A bit of contrast and highlights here\n and there. Oh, and fairly brutal cropping, especially on that fruit-tree-flowers pic. Because like I said, I didn’t think very\n much when I was shooting and I didn’t have to because on a Twenties camera you don’t.</p>\n <p>I could take that heavily-cropped fruit-tree\n picture and print it big enough to occupy any domestic wall in your place and yeah, there’d be grain but it wouldn’t\n bother your eyes.</p>\n <p>Anyhow, modern cameras are pretty great. The lowest ISO in today’s set is 2500 and the highest is 6400; the apertures range\n from 2.8 to 5.6.\n Bet you can’t tell the differences. My camera is a reasonably modern Fujifilm but not remotely\n bleeding-edge in camera tech. (Note: 35mm F1.4, now all the Fuji fanfolk are smiling and nodding.)</p>\n <p>Anyhow, there are very <em>very</em> few photographers for whom the camera they carry is the limiting factor in the\n goodness of their pictures. Certainly not me.</p>\n <p>Consider getting a camera. Used is fine, anything built in the last five years, maybe more, will effortlessly take brilliant\n pictures in almost any conditions. Sure, your phone can take great shots too, but the feeling of walking along with something\n that fits your hand and you only have to press one physical button once, that feeling, it helps you see the good pictures when they happen.</p>\n <p>Then go out after and take a walk in the Spring dusk.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Arts/Photos",
"term": "Arts/Photos",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Arts",
"term": "Arts",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Photos",
"term": "Photos",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst",
"title": "Password Manager Angst",
"description": "Our family has used 1Password for many years. Most recently 1Password 7, now at least three years out of date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring Bitwarden. The best choice isn’t obvious; here’s the story thus far",
"url": "https://www.tbray.org/ongoing/When/202x/2026/04/09/Password-Manager-Angst",
"published": "2026-04-09T19:00:00.000Z",
"updated": "2026-04-10T17:42:16.000Z",
"content": "<p>Our family has used\n <a href=\"https://1password.com\">1Password</a> for many years. Most recently 1Password 7, now at least three years out of\n date. We didn’t want to upgrade to the latest version, went looking for alternatives, and have been exploring\n <a href=\"https://bitwarden.com\">Bitwarden</a>. The best choice isn’t obvious; here’s the story thus far.</p>\n <p>Important note: I suspect that most-to-all of the people reading this already are using a password manager. If you’re not,\n please, <i><b>PLEASE</b></i> start now. Your browser probably has an OK one built-in, which is much better than\n nothing.\n <a href=\"https://www.cyber.gc.ca/en/guidance/password-managers-security-itsap30025\">Here</a> is a good write-up on the basics.</p>\n <h2 id=\"p-6\">Our needs</h2>\n <p>They’re not fancy. The house contains Macs and Androids and Windows and an iPad. \n We have hundreds of accounts (some require an authenticator) and a basketfull of secure notes: Government-ID numbers, recovery\n codes, and so on.</p> \n <h2 id=\"p-5\">1Password7 and 8</h2>\n <p>1Password had this nice feature where you could sync between devices without involving any 1Password servers, in a variety\n of ways. We used one of those and liked it.\n 1Password8 insists on storing your data (encrypted, more on that later). That always bothered me because, obviously, that\n repository is a top-priority juicy target for all the bad guys, who range from employees of the Chinese government to geeky\n narcos.</p>\n <p>So we’ve been ignoring 1Password’s increasingly plaintive reminders that we were using years-out-of-date software\n and chugging along with version 7. But, early this year, they broke our sync mode on the Android app and were pretty blunt that the only\n way to get it back was to go to 1P8.</p>\n <h2 id=\"p-7\">Alternatives</h2>\n <p>There are plenty of password managers (Let’s just say “PMs”) out there, but as a regular scanner of the landscape,\n it seems to me that 1Password \n (hereinafter “1P”) and Bitwarden (“Bw”) stand out as leaders. The rest of this piece will focus on those two.\n If you think I’m wrong, say so below but also please say why.</p>\n <p>Note that Bw comes in two flavors: That offered as a subscription service by the company of the same name, or as an open-source\n software suite you can build and run yourself.</p>\n <p>This is not to say that the PMs that are starting to appear built-in to browsers and OSes are worthless or unimportant,\n just that some of us need a little more.</p>\n <h2 id=\"p-8\">The threat models</h2>\n <p>Two are obvious. The first is incompetence, like for example\n <a href=\"https://en.wikipedia.org/wiki/LastPass#Security_incidents\">LastPass</a>, who apparently left the doors more or less\n wide open to those bad guys I mentioned a few paragraphs ago. Complete horror-show.</p>\n <p>The second is legal compulsion, where a government applies pressure to a PM provider to cough up our\n secrets. Anybody who thinks governments won’t try is fooling themselves, because they’ve repeatedly said they want to, and are\n eager to pass ill-considered legislation such as the\n <a href=\"https://en.wikipedia.org/wiki/CLOUD_Act\">CLOUD Act</a>. So we care about that aspect a lot.</p>\n <h2 id=\"p-9\">1P vs Bw: Security</h2>\n <p>I think they both have acceptably-good security postures; check out \n <a href=\"https://bitwarden.com/help/bitwarden-security-white-paper/\">Bitwarden Security Whitepaper</a> and\n <a href=\"https://support.1password.com/1password-security/\">About the 1Password security model</a>.</p>\n <p>Both of them offer to host your data outside of the US, specifically in Canada or the EU.</p>\n <p>But it doesn’t matter <em>that</em> much if a bad guy or bad government gets their hands on your password store; what\n matters is whether or not they can decrypt it. I’m not an infosec professional but I know some and listen to them, and both\n those security postures give me a good feeling. It’s not an accident that they’re pretty similar.</p>\n <p>The actual threat isn’t so much that an adversary cracks the crypto; that’s very unlikely. It’s that they find a way to force\n a PM vendor to build a back door into their software to get access to keys and passwords. For that reason, it would warm\n my heart if either or both of Bw and 1P were to post a\n <a href=\"https://en.wikipedia.org/wiki/Warrant_canary\">Warrant Canary</a>.</p>\n <p>But I’m going to give Bw a very slight edge. First, because of the fact that you can build and run it yourself, if you’re\n willing to take responsibility for operating a server with strong security requirements. (I’m not.)</p>\n <p>The source being open potentially offers a second, and more important I think, advantage: If they were able to get a\n <a href=\"https://en.wikipedia.org/wiki/Reproducible_builds\">Reproducible build</a> working, you’d have assurance that the code\n you can download is the one their service is running. Which reduces the attack surface. (Mind you,\n <a href=\"https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf\">not to zero</a>.) Reproducible\n builds are hard, but if they did that, it would make a difference to me.</p>\n <p>On the other hand, Bw’s software development process\n <a href=\"https://contributing.bitwarden.com/contributing/ai/\">embraces GenAI</a> generally and Claude specifically.\n At this stage in the growth of those technologies, this sends a chill up my spine. To be fair, 1P’s website\n shouts that it’s just the thing for agentic security, whatever that means. And we don’t know anything about 1P’s internal\n software-dev process.</p>\n <h2 id=\"p-10\">1P vs Bw: Fit and finish</h2>\n <p>1P wins this one. The problem is, do they always pop up when needed and never when they’re not? Can they fill every login\n field that needs filling? Does the popup show you just what you need and nothing extraneous? I’ve used both and 1P is just\n better.</p>\n <h2 id=\"p-11\">Business issues</h2>\n <p>This one is also pretty well a saw-off. Both of them have taken substantial chunks of VC money and thus are going to\n come under relentless pressure to enshittify. I worry a little less about this because from what I read,\n there’s not much lock-in.</p>\n <p>Personal experience too: I recently did an export of everything out of 1P and into Bw and it all Just Worked, albeit putting all\n my stuff into a folder named \"No Folder\" that I can’t figure out how to rename.</p>\n <p>Both Bw and 1P are subscription-only, at prices that seem fair to me.</p>\n <h2 id=\"p-12\">Death and recovery and pen and paper</h2>\n <p>As I was reading up on this stuff, the issue of recovering access to your PM after it had been lost came up a couple of times.\n Here’s a scenario where that could be really important: I die. And then my wife needs to get access to bank accounts and\n business emails and so on.</p>\n <p>Somebody (I’ve lost the link) was horrified that one of the PMs suggested writing the password down on a piece of paper as a\n last-resort measure, but I’m here to tell you that they’re wrong. My wife has an envelope containing a piece of paper on which\n appear the passwords for my PM and Mac, my mobile-phone PIN, and a very small number of other secret things she might really\n need if I’m suddenly gone. I have no idea where she put it, but she’s really smart so I don’t worry.</p>\n <p>You should probably do something like this too.</p>\n <h2 id=\"p-13\">What will we do?</h2>\n <p>We’ve paid for a year’s worth of both Bw and 1P. At the moment, we’re leaning to 1P because it’s a little more polished.\n Which matters because my PM is something I use many times every day. Also they’re somewhat Canadian.</p>\n <p>If you think we’ve missed something, please do let us know.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/Identity",
"term": "Technology/Identity",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Identity",
"term": "Identity",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology/Security",
"term": "Technology/Security",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Security",
"term": "Security",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links",
"title": "Long Links",
"description": "This will be the 30th Long-Links outing. I’m 100% sure that there does not live a human being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to open one occasionally. All aboard!",
"url": "https://www.tbray.org/ongoing/When/202x/2026/03/24/Long-Links",
"published": "2026-03-24T19:00:00.000Z",
"updated": "2026-03-26T23:36:32.000Z",
"content": "<p>This will be the 30<sup>th</sup> Long-Links outing. I’m 100% sure that there does not live a human\n being who has looked at all those Links, but my logfiles say that quite a few of you, Dear Readers, at least take the time to\n open one occasionally. All aboard!</p>\n <p>Sadly, more than half the Long Links, this time out, are about AI. I almost decided to bury the piece but, whatever you or I\n think, the subject matters. And the ones I posted are a tiny fraction of those I read (or tried to) and I think are \n useful and not immoral.</p>\n <p>But, let’s put all the non-AI stuff at the front so you can stop reading partway through if you’ve just had enough of\n that stuff.</p>\n <h2 id=\"p-1\">Not about GenAI</h2>\n <p>Paul Ford has, after a lengthy gap, started writing again at\n <a href=\"https://ftrain.com\">ftrain.com</a>. Excellent!\n Go there any day and there’ll almost certainly be something good at the top of the\n page. He’s a technologist and, yeah, writes about AI sometimes, but\n <a href=\"https://ftrain.com/warp-and-woof\">Warp and Woof</a> is about dogs and their people. Charming.</p>\n <p>I think most people who aren’t ultra-wealthy now agree that inequality is currently a central problem of our society. But it\n would be nice to put some numbers behind that assertion.\n <a href=\"https://paulkrugman.substack.com/p/talking-with-gabriel-zucman\">Here</a> is a conversation between Paul Krugman,\n Nobel-prizewinning economist, and Gabriel Zucman, a French specialist in the subject and frequent Piketty collaborator.\n Now, there are quite a few paragraphs up front of talk about general macroeconomic issues and comparisons between the US and Europe,\n which I enjoyed reading. And then inequality; here’s Zucman: “And so everybody now understands what was long understood for\n centuries, very much including in the West, which is that extreme wealth is never virtual, it is always extreme power.”</p>\n <p>CO<sub>2</sub> densities in Parts Per Million are a good measure of how full your inhalations are of others’ exhalations. And\n thus of how likely you are to catch something by breathing. Especially, Covid, which everyone with a half a brain knows is not\n nearly over. Anyhow, A. Grieve-Smith offers\n <a href=\"https://grieve-smith.com/ftn/2026/03/nine-observations-from-carbon-dioxide-monitoring/\">Nine observations from carbon\n dioxide monitoring</a>: “I’ve been checking carbon dioxide levels for over three years now, and I’ve started to see patterns.”\n This piece could save your life, and that’s not a metaphor.</p>\n <p>Patrick McKenzie, who writes <cite>Bits About Money</cite>, has an icy-cool style and this Link could be a Little Less Long,\n but I learn interesting things every time I read one of his pieces. \n <a href=\"https://www.bitsaboutmoney.com/archive/fraud-investigation/\">Fraud Investigation is Believing Your Lying\n Eyes</a> launches from the Minnesota child-care fraud story, but is mostly, as the title suggests, relates the conventional wisdom\n (which I didn’t know) about how to go sniffing around for in-progress fraud. \n From which “As a fraud investigator, you are allowed and encouraged to read Facebook at work.”</p>\n <p>Hari Kunzru has written good books and is a former London native. <cite>Harpers</cite> gave him an assignment:\n Walk around and write about the city, thus\n <a href=\"https://harpers.org/archive/2026/02/another-london-situationists-hari-kunzru/\">Another London: Excavating the\n disenchanted city</a>. It’s a tour through time as much as space<span class=\"dashes\"> —</span> London, obviously, is\n history-drenched<span class=\"dashes\"> —</span> and not just politics and power either, but arts and ideas. The writing is\n beautiful. It’ll take a chunk out of your day but the trade-off is good.</p>\n <p>Here’s something beautiful:\n <a href=\"https://thehtml.review/05/\">The HTML Review</a>. Now I want to publish there, but I’d have to up my\n writing game.</p>\n <h2 id=\"p-5\">Lankum</h2>\n <p>They’re an Irish band I just discovered, courtesy of Qobuz. The music grows out of traditional Irish acoustic folk. They play\n old and new songs and throw in a heavy dose of snarl and drone. Some of the chords are like rotated model augmented 11ths or some\n such, scratchy around the edges but helped with an itch I hadn’t known I had. Terrific musicians. Here’s\n <a href=\"https://www.youtube.com/watch?v=lUReQ9GhT8s\">Hunting the Wren</a>. I might get over-excited and fly to Ireland to see them.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/24/Lankum.png\" alt=\"Lankum in concert\"></img>\n <h2 id=\"p-2\">Tech, but not GenAI</h2>\n <p>Sebastian Pipping is, among other things, an Open-Source software developer, with whom\n <a href=\"/ongoing/When/202x/2021/03/24/XMLWF-dash-k\">I’ve collaborated</a>. His recent\n <a href=\"https://blog.hartwork.org/posts/learn-from-me/\">Learn from me!</a> begins “Not too long ago, someone literally asked me\n what they \"could learn from me\", and that question has stuck with me since.” So he offers a few candidate lessons. What a nice\n idea! What could people learn from <em>you</em>?</p>\n <p>Filippo Valsorda, another OSS dev, is particularly interesting because he and a few partners have apparently figured out\n <a href=\"https://geomys.org\">how to make a living from their work</a>. \n He recently published\n <a href=\"https://words.filippo.io/dependabot/\">Turn Dependabot Off</a> and I’m not going to offer a word of explanation because\n if you understand the title I guarantee you’ll be interested in the piece. (I’m terrified of Dependabot.)</p>\n <p>It seems like every day I hear from another person who’s trying to get their personal lives off Big Tech. Me too. So…\n In <cite>The Verge</cite>,\n <a href=\"https://www.theverge.com/tech/879114/best-big-tech-app-alternatives-installer\">How to un-Big Tech your online life</a>.\n And from Paris Marx,\n <a href=\"https://disconnect.blog/getting-off-us-tech-a-guide/\">Getting off US tech: a guide</a>. We are in the early stages of\n de-Googling our family life, so this stuff is super useful. I expect to see more of it.</p>\n <h2 id=\"p-4\">Amazon polemics, maybe a little AI</h2>\n <p>I don’t loathe Amazon any more nor less than the rest of the Big Techs, but boy are there are a lot of people\n publishing diatribes against the company. Not sure I understand why. But, worth reading.</p>\n <p>In\n <a href=\"https://markatwood.substack.com/p/how-amazon-dies-a-possible-maybe?\">How Amazon Dies: A Possible, Maybe Likely\n Future</a> Mark Atwood predicts that the infestation of amazon.com with highly-profitable advertising is a perhaps-fatal\n blunder. What’s maybe more interesting is that he points out several potential Amazon alternatives that don’t suffer from\n that same infestation; they hadn’t occurred to me.</p>\n <p>And from a year ago, Cory Doctorow’s\n <a href=\"https://pluralistic.net/2025/03/13/electronic-whipping/#youre-next\">The future of Amazon coders is the present of\n Amazon warehouse workers</a> introduces the “shitty technology adoption curve”. I missed this piece at the time but boy, is it\n easy to believe.</p>\n <p>Finally, reading\n <a href=\"https://www.bigtechnology.com/p/writing-crystalized-thinking-at-amazon?\">Writing Crystalized Thinking At Amazon. Is AI\n Muddying It?</a> angered me. While I have no remaining respect or affection for any of the Big Techs, I enjoyed my time at AWS\n and part of it was the writing culture. I think the Way Of The Six-pager is the best business-process innovation I witnessed in\n my working life. If Amazon really is slopifying it, I predict disastrous outcomes. </p>\n <h2 id=\"p-3\">OK, here’s the AI stuff</h2>\n <p>My own position, just to be clear: There are going to be LLM applications in a few domains here and there, and one of them is\n software development, but they won’t be nearly big enough to damage earth’s climate any further, nor to prevent the bubble from\n popping. That said…</p>\n <p>Let’s do the worst first:\n <a href=\"https://www.heavybit.com/library/article/write-only-code\">Write-Only Code</a> lays out a genuinely frightening future.\n Quote: “I was maniacally insistent that any proposed change to our SDLC (software development life cycle) be evaluated first\n through the lens of developer velocity.”\n I think I’d rather not go there.</p> \n <p>Most of us who watch the space, and have no idea where it’s going or what the future holds, are I think particularly\n interested in Anthropic’s Claude. If you’re one, you’ll probably enjoy\n <a href=\"https://www.newyorker.com/magazine/2026/02/16/what-is-claude-anthropic-doesnt-know-either\">What Is Claude? Anthropic\n Doesn’t Know, Either</a>.</p>\n <p>It’s probably not that GenAI is intrinsically immoral. As Karl Bode writes,\n <a href=\"https://karlbode.com/the-problem-with-ai-is-shitty-human-beings/\">The Problem With AI Is Shitty Human Beings</a>. I\n covered some of the same territory last year in\n <a href=\"/ongoing/When/202x/2025/07/06/AI-Manifesto\">The Real GenAI Issue</a>, but Bode is excellent:\n “…the grand vision of modern automation's benefits can never materialize if its stewards are <i>foundationally fucking terrible\n human beings disinterested in the contours of empathy.</i> If we're not talking prominently about that, we aren't really talking at\n all.” (Emphasis his.)</p>\n <p>One of the things that shitty people do is lie. Like for example charismatic leaders of AI “startups” valued in the tens of\n billions. But then so do the less-visible, which provoked Kyle Kingsbury A.K.A. Aphyr to write\n <a href=\"https://aphyr.com/posts/405-trudging-through-nonsense\">Trudging Through Nonsense</a>. It’s sad and angry but I think\n usefully so.</p>\n <p>Armin Ronacher is not bursting with rage, but he is skeptical about all the right things in\n <a href=\"https://lucumr.pocoo.org/2026/3/20/some-things-just-take-time/\">Some Things Just Take Time</a>. Quote:\n “There’s a feeling that all the things that create friction in your life should be automated away. That human involvement should\n be replaced by AI-based decision-making. Because it is the friction of the process that is the problem. When in fact many times\n the friction, or that things just take time, is precisely the point.”</p>\n <p>For another cool-voiced critique, here’s Rishi Baldawa:\n <a href=\"https://rishi.baldawa.com/posts/ai-mandates-manufacture-noise/\">AI Mandates Manufacture Noise</a>. While I’m not\n entirely a burn-it-all-with-fire GenAI foe, the “boss mandate” always struck me as dumb, and Rishi spells it out clearly\n and simply. It’s really good, so here are a couple of quotes: “But those not in the weeds had no way to know any of this\n because… well they aren’t in the weeds. So they feel compelled to solve their information gap with a policy hammer.” and \n “As said before, none of this is revolutionary and that’s sort of the point. AI is a ’mirror and multiplier‘. It intensifies\n whatever was already happening.”</p>\n <h2 id=\"p-6\">That’s all</h2>\n <p>Let’s really hope the bubble bursts soonest. Because when the money goes away, so will a lot of the shitty people.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "The World",
"term": "The World",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns",
"title": "Nash Burns Saves the Day",
"description": "What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their emails to us were bouncing. Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on. Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly price, and has been trouble-free",
"url": "https://www.tbray.org/ongoing/When/202x/2026/03/20/Nash-Burns",
"published": "2026-03-20T19:00:00.000Z",
"updated": "2026-03-20T20:53:25.000Z",
"content": "<p>What happened was, soon after New Year’s, friends and colleagues in the UK and Germany started letting us know that their\n emails to us were bouncing. \n Our “textuality.com” family domain is a Google Workspace (or whatever they call it this year) for email and docs and so on.\n Its Web presence, including DNS, has for many years been handled by a local outfit I’ll call “CWH” for some absurdly low monthly\n price, and has been trouble-free.</p>\n <p>So, what could be wrong? We investigated and discovered that Google was offering a new-and-improved MX-record option,\n although they emphasized that the old setup should still work. Anyhow, we installed the New Thing and it didn’t help.</p>\n <p>So, we filed a ticket with CWH tech support and somebody got back to us pretty quick, saying they’d changed a firewall\n setting that was blocking connections to Germany. I detect the scent of GDPR, but whatever. <br></br>\n Euro-email: Bounce, bounce.</p>\n <p>CWH: Probably an MX-record issue, and we should wait for DNS propagation. Several days passed and\n bounce, bounce, bounce. <br></br>Us: “Not DNS propagation.” <br></br>CWH: “Still could be.”</p>\n <p>So we VPN’ed to Germany and discovered we couldn’t ping\n Textuality’s IP address. Smells like a firewall to me. We told CWH that.</p>\n <p>CWH: We have made some changes to firewall settings.\n <br></br>EMail: bounce, bounce, bounce.\n <br></br>VPN+Ping: Request timeout, request timeout, request timeout.</p>\n <p>CWH: Try traceroute?\n <br></br>VPN+Traceroute: 14 hops, no joy.</p>\n <p>CWH: Your VPN settings must be wrong. Here are instructions to use Windows PC VPN correctly.<br></br>\n Us: Thanks but no.</p>\n <p>CWH: Your MX records are configured incorrectly. <br></br>Us: No, they are correct per Google guidance. We sent an email beginning\n “Please believe us.”</p>\n <p>CWH: It must be DNSSEC. Check to see if your registrar implements DNSSEC. <br></br>Us: We are using your DNS servers.</p>\n <p>CWH: Perhaps your registrar is broadcasting an old record? <br></br>Us: Our registrar doesn’t do DNSSEC.</p>\n <p>At this point we consulted a friend who’s an expert on DNS and Email and even DNSSEC. He verified that not only could\n you not ping \n Textuality from Germany, you also couldn’t ping CWH or its name servers. Firewall firewall firewall!</p>\n <p>CWH: “I did test the site access using a 3rd party application, and it seems to be accessible on all parts.” <br></br>Us: Look at the\n output, it shows we can’t be reached from anywhere in Germany.</p>\n <p>Also, for all the remaining messages in the email trail, we prefixed our input with bold face extra-large text reading:\n <b>Systems located in Germany cannot ping Textuality.com’s IP address, nor can they ping the IP addresses of textuality.com’s\n designated name servers. This is the problem.</b></p>\n <p>CWH: Let’s try migrating you to a different server; try pinging these hostnames. <br></br>VPN+Ping: Nope.</p>\n <p>CWH: Are you sure it’s not your VPN settings? <br></br>Us: Are you sure it’s not your GDPR settings?<br></br>\n CWH: Raising your issue to Tier 3.</p>\n <p>20 hours pass, then we get email from:</p>\n <h2 id=\"p-1\">Nash Burns!</h2>\n <p>…who said “This has been fixed.” It was.\n Nash’s email signature was “Nash(Rajaneesh) B”. What a great name, though. Thanks, Nash.</p>\n <h2 id=\"p-2\">Am we mad?</h2>\n <p>Not really. Consumer-facing tech support is hard. None of their suggestions were unreasonable.\n Doing GDPR correctly is hard. \n They’ve been just fine for years and were having a bad week.\n Could we expect better from any of CWH’s local competitors? Probably not.</p>\n <p>It wasn’t funny at the time, but looking back, it kind\n of is.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/Web",
"term": "Technology/Web",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Web",
"term": "Web",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please",
"title": "Pure Sound Please",
"description": "This last weekend we attended a concert entitled Lenten Reflection at Vancouver’s Catholic Holy Rosary Cathedral featuring the Belle Voci vocal group and the Cantare Super Orchestram early-music band. The music was fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below). And so I get to report on good music and yell at production people",
"url": "https://www.tbray.org/ongoing/When/202x/2026/03/16/Pure-Sound-Please",
"published": "2026-03-16T19:00:00.000Z",
"updated": "2026-03-18T21:34:31.000Z",
"content": "<p>This last weekend we attended a concert entitled <cite>Lenten Reflection</cite> at Vancouver’s Catholic\n <a href=\"https://en.wikipedia.org/wiki/Holy_Rosary_Cathedral_(Vancouver)\">Holy Rosary Cathedral</a> featuring the\n <a href=\"https://bellevoci.ca\">Belle Voci</a> vocal group and the\n <a href=\"https://chilliwacksymphony.com/cantare-super-orchestram/\">Cantare Super Orchestram</a> early-music band. The music was\n fine and it was the most beautiful sound I’ve heard in a long time. Twenty-two months, to be precise (see below).\n And so I get to report on good music and yell at production people.</p>\n <p>A cathedral is a nice place for a concert!</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_215727574.png\" alt=\"Interior of Vancouver’s Holy Rosary Cathedral\"></img>\n <p>The concert opened with just the singers, their voices drifting down from a high place behind us, a balcony or choir loft.\n There was no incremental accompaniment and no amplification; the music flowed from vocal cords to\n eardrums<span class=\"dashes\"> —</span> not directly, of course, there was lots of reflection and reverberation introduced by the\n Cathedral space. The singers were polished and expressive and the sound, drifting through the vast space, beyond exquisite.</p>\n <p>They sang a lovely piece by Byrd (1539-1623). Then the instrumentalists played a number by von Biber (1644-1704) while the\n singers snuck downstairs. Joined, they performed Bach’s BWV\n <a href=\"https://en.wikipedia.org/wiki/Komm,_Jesu,_komm,_BWV_229\">229</a> and\n <a href=\"https://en.wikipedia.org/wiki/Nach_dir,_Herr,_verlanget_mich,_BWV_150\">150</a>, then pieces by Pergolesi (1710-1736)\n and Steffani (1654-1728).</p>\n <p>The Bach pieces, as usual, had more music in the music, but the others were also fun. It was a small ensemble: In\n the choir, five sopranos, five altos, a countertenor, four each tenors and basses. The band had five baroque\n violins, a baroque viola, a baroque cello, a\n <a href=\"https://en.wikipedia.org/wiki/Violone\">violone</a> (think, string bass with frets), a baroque bassoon, and a player\n doubling on harpsichord and organ. Thus, an ensemble quite likely not too much bigger or smaller than the ones playing this\n music in the 1700s, when it was new.</p>\n <h2 id=\"p-2\">That sound</h2>\n <p>Once again, the sound was something special and yeah, the musicians were excellent, but for me, the key thing was the lack of\n amplification: vocal cord to eardrum via cathedral. It’s always seemed obvious to me that you can’t run music through a bunch of\n electronics and speaker mechanics without changing it; if only spatially, with the sounds coming from speaker diaphragms located\n somewhere away from the human musician.\n To my ears, there is a fragile magic in pure unamplified sound. I lack the words to describe the difference but it’s not\n subtle. </p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/16/PXL_20260314_212418188.png\" alt=\"“Lenten Reflections” concert singers and players\"></img>\n <p>Does this mean that everything was perfect? No; the choir was a little bit male-heavy; some of the soprano and especially\n alto lines were part-hidden behind the massed male voices. Also, the bassoon was right at the front of the stage;\n While the playing was fine, it felt as though it were musically, not just physically “in front of” the band and\n singers.</p>\n <p>Both of these could have been fixed, by telling the men to take it down a notch or having one or two fewer of them. And by\n moving the bassoon back to the usual woodwinds spot behind the strings. Still, these were very minor imperfections.</p>\n <p>Oh, and the performance and sound of the bass line on that violone was absolutely awesome; clearly audible as a thing on its\n own while it wove all the other musical threads together.</p>\n <p>I’ve discovered that few classical musicians share my passion for unamplification. I hear things like “I want a\n <em>full</em> sound or “The soloists need to cut through the orchestra.” Which, well, OK, but somehow people managed to\n accomplish those things for centuries, before amplifiers and speakers were invented.</p>\n <h2 id=\"p-1\">22 months?</h2>\n <p>That’s since May of 2024 when I took in the \n <a href=\"/ongoing/When/202x/2024/05/26/TTB\">Tedeschi-Trucks Band</a>, whose music couldn’t be more different from anything\n called “Lenten Reflections”: electric not acoustic, profane not sacred. But crystal clear and perfectly balanced\n sound; so much better than most electric bands achieve.</p>\n <p>My sincere thanks to the musicians and their leaders for a lovely experience. And my message to everyone co-ordinating and\n leading live music performances: Of course the first priority has to be the quality of the music, but think about the sound and\n try to be better. Better than than most performances manage, these days.</p>\n <p>We know it’s possible.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Arts/Music",
"term": "Arts/Music",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Arts",
"term": "Arts",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Music",
"term": "Music",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak",
"title": "Because Algospeak",
"description": "Recently I read Because Internet by Gretchen McCulloch and Algospeak by Adam Aleksic. The language we speak (and text) to each other is at the core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth. So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry",
"url": "https://www.tbray.org/ongoing/When/202x/2026/03/05/Because-Algospeak",
"published": "2026-03-05T20:00:00.000Z",
"updated": "2026-03-07T18:29:41.000Z",
"content": "<p>Recently I read\n <a href=\"https://en.wikipedia.org/wiki/Because_Internet\">Because Internet</a> by\n <a href=\"https://gretchenmcculloch.com\">Gretchen McCulloch</a> and\n <a href=\"https://en.wikipedia.org/wiki/Algospeak_(book)\">Algospeak</a> by\n <a href=\"https://en.wikipedia.org/wiki/Adam_Aleksic\">Adam Aleksic</a>. The language we speak (and text) to each other is at the\n core of who and what we are, and the Internet is the strongest among the forces that channel and fertilize its growth.\n So there’s scope for plenty of books on the subject. Both books educated and entertained, one made me angry.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/05/covers.png\" alt=\"The covers of “Because Internet” and “Algospeak”\"></img>\n <h2 id=\"p-1\">Because Internet (2019)</h2>\n <p>Its approach is historical and its voice fairly uninflected. It smiles and\n argues, but it doesn’t ROFL nor does it YELL AT YOU. The history is longer, perhaps, than most people reading this have\n been online (or even alive). Ms McCulloch goes back to the days of BBSes (“bulletin-board systems”) and ListServs and IRC. Some of\n the jargon and formulations of those days live on; you’d be surprised.</p>\n <p>Here’s her table of contents.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/05/BI-toc.png\" alt=\"Table of Contents from “Because Internet”\"></img>\n <p>The analysis is grounded in the formalisms of the author’s profession, academic linguistics. Nothing wrong with that.</p>\n <p>Let’s look at a couple of her ideas, beginning with Chapter 1’s “Informal Writing”. A few of us, back in the late\n Eighties, noticed that computers in general and the then-nascent Internet in particular were driving a writing\n renaissance.</p>\n <p>Before computers, a knowledge worker who had laboriously constructed essays in college quite likely wrote\n almost nothing for the rest of their working life. People talked face-to-face or on the phone, and dictated to\n secretaries. Written communication was seen as necessarily formal and disjoint from the way we spoke, or that we wrote in\n personal correspondence. Then, suddenly, everyone was sitting at a keyboard only seconds away from everyone else’s screen.\n McCulloch goes deep on this:</p>\n <blockquote><p>In the future, the era of writing between the invention of the printing press and the internet may come to be\n seen as an anomaly—an era when there arose a significant gap between how easy it was to be a writer versus a reader. An era when\n we collectively stopped paying attention to the informal, unedited side of writing and let typography become static and\n disembodied.</p>\n <p>The internet didn’t create informal writing, but it did make it more common, changing some of our previously spoken\n interactions into near-real-time text exchanges.</p></blockquote>\n <p>From which all of this follows. It feels like a central insight. I suppose you could argue that centrality of informal text\n is fading in the face of short-form video. Maybe,\n it’s too soon to tell.</p>\n <p>Then consider chapter 5, about emojis. Linguists obviously need to think about them because now they’re an\n integral part of written language. McCulloch’s insight is that they correspond almost exactly to gestures, the way we use\n our hands to add force to our speech. Obviously, for example, “👍”. Or when you’re talking about something completely\n loopy and you twirl your index finger by your ear? You meant “🤪”.</p>\n <p>I offer the emoji story for flavor, an example of a linguist’s approach to what we’re doing to our language with our\n networks.</p> <p>McCulloch has lots more of this stuff.\n I enjoyed <cite>Because Internet</cite> a lot, partly because I’m old and my memories stretch back to those BBS and\n IRC days and I had a front-row seat for the decades of linguistic seething and heaving. And also because I’m a\n <a href=\"https://www.rfc-editor.org/rfc/rfc9839.html\">Unicode geek</a>.</p>\n <h2 id=\"p-2\">Algospeak (2025)</h2>\n <p>The subtitle is “How Social Media Is Transforming the Future of Language”. OK, but… \n Social media is a fertile field for language evolution. Thing is, corporate social media discourse\n lives in the dire grip of the proprietors’ algorithms. And that’s where Adam Aleksic focuses. He treats all of them\n as a single opaque object, “The Algorithm”, which I think is fair because they all are designed with one goal: To\n maximize the effectiveness of human conversation at generating advertising revenue.</p>\n <p>First, the Table of Contents.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/03/05/AS-toc.png\" alt=\"Table of Contents from “Algospeak\"></img>\n <p>Aleksic knows whereof he speaks: As “Etymology Nerd”, his aggregate following across TikTok, Instagram, and YouTube is\n over three million. He’s all about cool bits and pieces of\n linguistics, often Internet-specific usages.\n If I had the patience for podcasts I suppose his would be near the top of my list.</p>\n <p>He really enjoys his work and has fun talking about some of Social Media’s more colorful linguistic extrusions; check\n that Table of Contents. I’m kind of old and I learned a lot about the words and emojis younger folk emit, and I think most folks,\n even those just out of their teens, would too. I’m on a Discord for a \n <a href=\"/ongoing/What/Sports/Soccer/\">Major League Soccer</a> team’s fans, and while it’s totally all-ages, I can say I am regularly\n less mystified than I was before I read <cite>Algospeak</cite>.\n For example, now I know what it means when someone tosses “💀” into a chat. Do you?</p>\n <p>Aleksic isn’t averse to a little history himself. Looking back over the successive online-jargon volcanoes, he argues\n convincingly that two stand out as extra productive. First of all, the short-lived (but hot stuff at the time)\n <a href=\"https://en.wikipedia.org/wiki/Vine_(service)\">Vine</a> video platform. Second, the incel cesspool; sad but\n (apparently) true.</p>\n <h2 id=\"p-3\">The Algorithm</h2>\n <p>Remember, it’s all about what advertisers want. And wow, do they ever want a lot of things. I’ll just touch on a few of\n Aleksic’s points.</p>\n <p>First of all, they don’t want to find themselves next to downers. So if you want to talk about death or suicide or rape or\n racism or rage, \n you need to fool The Algorithm. Thus “unalive” and many other dodges. Of course, The Algorithm learns about them so you\n have to keep dodging. Neither side of this struggle can stay ahead for long.</p>\n <p>Here’s another thing I didn’t know: Apparently written Chinese is particularly rich in techniques for euphemizing, making it\n easier for users of that language to evade, for a time, The Algorithm.</p>\n <h2 id=\"p-4\">Partitioning people</h2>\n <p>Another big thing The Algorithm likes is grouping people into smaller and smaller baskets based on interests, generations,\n and many other criteria. This is because advertisers can aim very specific campaigns at just exactly the right cohort of people who\n are likely to buy what they’re selling. Here’s a quote; See how the language fills in behind advertisers’ pressure?</p>\n <blockquote><p>It doesn’t matter how much I label myself. If I’m a demisexual goblincore Gen\n Z Swiftie, I guarantee there are still others like me. The only thing these labels really change about me is that they make me\n easier to classify and market to. Ironically, true individuality may come out of a <em>lack</em> of labels and stories, because\n there’s greater freedom of expression with a blank slate. If everybody’s the “main character,” then nobody is.</p></blockquote>\n <p><cite>Algospeak</cite>, unlike <cite>Because Internet</cite>, doesn’t limit itself to written language. One of its most\n compelling studies concerns the vocal techniques of podcasters and YouTubers. The finding is simple: It’s hard to build and hold an\n audience for your show unless you sound like MrBeast. No, really.</p>\n <p>Anyhow, they’re both good books. <cite>Because Internet</cite> educated and entertained me. <cite>Algospeak</cite> is way\n more intense, intentionally more like the subject it addresses. Also it made me angry. I am a lover of human language and of its\n patterns of growth and mutation and simplification and complexification. Linguistics is one of the disciplines I regret not\n having chosen.</p>\n <p>Aleksic makes it clear that there’s an amusing narrative about how the people living and speaking in the shade of the Algorithm\n can never defeat it, but they can still manage to get their messages across. But they shouldn’t have to struggle!</p>\n <p>In fact, a few million of us have found a place to talk to each other that isn’t in The\n Algorithm’s shadow: Decentralized social media. Specifically the Fediverse (what people mean when they say “Mastodon”) and maybe\n the ATmosphere (same for “Bluesky”).</p>\n <p>I want to see how language grows in a place where new forms arrive when they’re needed, to say new things that need to be\n said. Not to either serve or resist The Algorithm.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Language",
"term": "Language",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Language",
"term": "Language",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Life Online",
"term": "Life Online",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Life Online",
"term": "Life Online",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI",
"title": "Kansas and AI",
"description": "Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud. Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural changes.” Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010",
"url": "https://www.tbray.org/ongoing/When/202x/2026/02/27/Kansas-and-GenAI",
"published": "2026-02-27T20:00:00.000Z",
"updated": "2026-02-28T00:06:19.000Z",
"content": "<p>Block announced that it’s cutting 40% of its workforce. It didn’t say it was replacing those people with GenAI. Not out loud.\n Jack Dorsey did say “I believe the majority of companies will reach the same conclusion and make similar structural\n changes.”\n Wall Street loved it, bidding up the share price by 24%. Which reminded me of Kansas in 2010.</p>\n <h2 id=\"p-1\">The Kansas Experiment</h2>\n <p>As long as I can remember, a certain class of right-wing evangelists has preached that cutting taxes would stimulate business\n growth and everyone would come out ahead. There are a couple of problems with this theory. First, mainstream economists\n almost universally think it’s just wrong. Second, most of the people pushing it are rich and would\n benefit from the cuts.</p>\n <p>Anyhow, in 2010 US Senator Sam Brownback won the race for governor of Kansas on what was then called the “Tea Party” program:\n Prosperity through tax cuts. Tea-party Republicans also won a large majority in the state legislature. Unsurprisingly they\n immediately\n <a href=\"https://en.wikipedia.org/wiki/Kansas_experiment\">did what they said they were going to do</a>: Slashed a wide variety\n of taxes, some to zero.</p>\n <p>The predicted prosperity failed to happen. The state government’s revenue plunged and it had to dig deep into rainy-day\n reserves just to keep the doors open. There were brutal cuts to policing, road repair, and schools. Also a nasty\n feedback loop: As the state’s fiscal position worsened, its credit rating fell and interest rates rose, leading to yet more\n brutal austerity measures.</p>\n <p>Another result was that affluent Kansans made out like bandits; the cost of running the state was substantially\n transferred to the less financially fortunate.</p>\n <p>In 2017, the legislature threw in their cards and repealed the tax cuts, overriding Brownback’s veto.</p>\n <p>While this was a terrible experience for most Kansans, it is historically useful, because whenever you encounter a\n tax-cut nut (probably self-interestedly wealthy) you can say “But, Kansas!” Having said that, there are still plenty of\n those nuts, and they’ll tell you that the Kansas experiment failed because of one fine-tuning effort or another. That’s a position\n that’s hard to defend, though.</p>\n <h2 id=\"p-3\">Sidebar: Trans oppression too</h2>\n <blockquote><p>Before I move onto the AI angle, I gotta pause to acknowledge this week’s news story about the Kansas\n government’s vicious, brutal, and ignorant\n <a href=\"https://www.theguardian.com/us-news/2026/feb/26/kansas-trans-drivers-license-law-assault-on-rights\">assault on trans\n people</a>. To be clear, I think the shitty people who hate trans folk are aren’t necessarily the same shitty people as the shitty\n people who don’t want to contribute to the public good. But, something about Kansas seems to attract both\n flavors.</p></blockquote>\n <h2 id=\"p-2\">The GenAI experiment</h2>\n <p>The core value proposition of contemporary AI technology is exactly what Dorsey seems to think: Fire half your\n employees and profits will soar! If that’s true, the trillion dollars or so invested so far will seem like small potatoes. Since\n we don’t know if \n this will actually work, anyone who actually does it is conducting an experiment. Just like Sam Brownback did.\n Unsurprisingly, the investor class loves this experiment and is putting their money on it working.</p>\n <p>To be fair, voices have been raised to argue that the tech sector is a special case: That following on\n feverish over-hiring during the Covid lockdown, they need to slash headcount anyhow, and are using AI as an excuse.\n For example\n <a href=\"https://daringfireball.net/linked/2026/02/27/block-layoffs\">John Gruber</a>.</p>\n <p>I personally\n am unconvinced, but even if they’re right, it’s irrelevant. The shareholding class won’t be able to see past that 24% payoff. So \n as of today, they’ll be yelling at every CEO on the planet to start pulling the mass-firing trigger. Or else.</p>\n <p>I think I know how the experiment will turn out. Just like in Kansas, it’s not going to be fun.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/AI",
"term": "Technology/AI",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "AI",
"term": "AI",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026",
"title": "Crocuses of 2026",
"description": "I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth in early 2003. Except for last year. Because we moved and the new place didn’t have any. Only now it does, and they’re (just barely) up. [Update: Up and open, too.]",
"url": "https://www.tbray.org/ongoing/When/202x/2026/02/24/Crocuses-of-2026",
"published": "2026-02-24T20:00:00.000Z",
"updated": "2026-02-26T21:46:17.000Z",
"content": "<p>I’ve run early-spring pictures of these little purple guys almost every year since this blog’s birth\n in early 2003. Except for last year. Because\n <a href=\"/ongoing/When/202x/2025/02/28/Moved\">we moved</a> and the new place didn’t have any. Only now it does, and they’re\n (just barely) up. <i>[Update: Up and open, too.]</i></p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56234.png\" alt=\"Crocuses of February 2026\"></img>\n <p>Long-time followers may note that they’re pale and fragile compared to the exuberant blossoms of previous\n years. Not sure why, but our new place faces north and there’s this enormous\n <a href=\"https://en.wikipedia.org/wiki/Fraxinus_americana\">White Ash</a> tree right in front of it, so they’re not getting as\n much sun as at the south-facing former joint.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56235.png\" alt=\"Crocuses of February 2026\"></img>\n <p>And also this is their first spring. We bought the bulbs and hired a professional with the right tools to jam them\n into the earth last autumn, between the big tree’s roots. So they really haven’t had a chance to get their own root systems going.</p>\n <p>And finally, it really is the first day that’s bright and warm enough to get out the camera. Maybe they’ll\n be better in another few days. And quite likely next Spring.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56244.png\" alt=\"Crocuses of February 2026\"></img>\n <p>This would be the place to introduce whatever metaphor this year’s blossoms, fighting their way through the leaf cover in\n chilly air toward the sun, fit into, but I’m not gonna.</p>\n <p>I, like many, am\n <a href=\"/ongoing/When/202x/2023/10/25/Wild-World\">not dealing very well</a> with what I see when I look at the world in either\n the big or the ultra-local landscapes.\n The world in tough shape and its worst people are making it worse.\n People I love are in ugly corners and not finding help.</p>\n <p>But you know, the flowers, in their low-key way, look great and so does the tree, still in wintersleep. Today the\n sun was shining on them. It’ll be warmer and nicer soon.</p>\n <p>Metaphors can go to hell. It’s just late-winter light on pale violet petals. Enjoy the moments you have with it.</p>\n <img src=\"https://www.tbray.org/ongoing/When/202x/2026/02/24/TXT56249.png\" alt=\"Spring crocus, now open for business\"></img>\n <div class=\"caption\"><p>Update: Now open for business.</p></div>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Arts/Photos",
"term": "Arts/Photos",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Arts",
"term": "Arts",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Photos",
"term": "Photos",
"url": "https://www.tbray.org/ongoing/What/"
}
]
},
{
"id": "https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion",
"title": "Open Source and GenAI?",
"description": "I’ve been puttering away on my Quamina project since 2023. In the last few weeks GenAI has intervened. Quamina + Claude, Case 1 describes a series of Claude-generated human-curated PRs, most of which I’ve now approved and merged. Quamina + Claude, Case 2 considers quamina-rs, a largely-Claude-driven port from Go to Rust. Both of these stories seem to have happy endings and negligible downsides. So empirically, I can apply LLM technology usefully to software development. But should I?",
"url": "https://www.tbray.org/ongoing/When/202x/2026/02/16/GenAI-and-OSS-opinion",
"published": "2026-02-16T20:00:00.000Z",
"updated": "2026-02-18T21:41:14.000Z",
"content": "<p>I’ve been puttering away on my\n <a href=\"/ongoing/What/Technology/Quamina%20Diary/\">Quamina</a> project since 2023. In the last few weeks GenAI\n has intervened. \n <a href=\"/ongoing/When/202x/2026/02/06/Q-Plus-C-Ch1\">Quamina + Claude, Case 1</a> describes a series of\n Claude-generated human-curated PRs, most of which I’ve now approved and merged.\n <a href=\"/ongoing/When/202x/2026/02/14/Q-Plus-C-Ch2\">Quamina + Claude, Case 2</a> considers\n <a href=\"https://github.com/baldawarishi/quamina-rs\">quamina-rs</a>, a largely-Claude-driven port from Go to Rust.\n Both of these stories seem to have happy endings and negligible downsides. So empirically, I <em>can</em> apply LLM\n technology usefully to software development. But should I?</p>\n <h2 id=\"p-3\">Conclusions 1: Burn it with fire?</h2>\n <p>Let me be clear: In the big GenAI picture, I’m a contra. Why? I’ll pass the mike to Baldur Bjarnason, my\n favorite among GenAI’s blood enemies.: \n <a href=\"https://www.baldurbjarnason.com/notes/2026/note-on-debating-llm-fans/\">“AI” is a dick move</a>.\n His tl;dr is something like “GenAI is environmentally devastating and has the goal of throwing millions of\n knowledge workers onto the street and is being sold by the worst people and is used for horrible applications and will increase\n society’s already-intolerable level of inequality!” To which I reply “Yes, yes, yes, yes, and yes.”</p>\n <p>At the end of the day, the business goal of GenAI is to boost monopolist profits by eliminating decent jobs, and\n damn the consequences. This is a horrifying prospect (although I’m somewhat comforted by my belief that it basically won’t\n work and most of the investment capital is heading straight down the toilet).</p>\n <p>But. All that granted, there’s a plausible case, specifically in software development, for exempting LLMs from this\n loathing.</p> \n <p>First of all, size.\n <a href=\"https://www.jetbrains.com/lp/devecosystem-data-playground/#global_population\">JetBrains thinks</a> that\n the world has 21 million or so software developers, i.e. less than 1% of the earth’s working population.\n Vanishingly small in the context of the lunatic tsumani of LLM overinvestment.\n Training and operating the models required for a market this small is\n rounding error measured on the Great GenAI Overbuild scale. There aren’t enough geeks to create a detectable bump in the global\n carbon load.</p>\n <p>Another odious aspect of LLMs is\n <a href=\"https://en.wikipedia.org/wiki/Reinforcement_learning_from_human_feedback\">RLHF</a>, “Reinforcement Learning From Human\n Feedback”, which relies on underpaying Third-Worlders to \n polish the models’ outputs. \n My guess is that much less is required for code-oriented LLMs. \n The combination of the compiler and your unit tests provide good starter guardrails. Then skilled\n professional intervention is required to deal with the remaining misfires, as with those Quamina PRs.</p>\n <p>Finally, it seems making billionaires into multibillionaires is intrinsic to GenAI dreams. But software-development tools won’t\n do that. Once again, the market is just too small. But even if it weren’t, consider this from Steve Yegge:</p>\n <blockquote><p>For\n <a href=\"https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163\">this blog post</a>, “Claude Code” means “Claude Code and\n all its identical-looking competitors”, i.e. Codex, \n Gemini CLI, Amp, Amazon Q-developer ClI, blah blah, because that’s what they are. Clones.</p></blockquote>\n <p>(GenAI, overbuilding wherever you look.) None of these products have moats and the chance that any of them become\n extractive monopolies is about zilch. Nobody’s ever built a major cash-cow on developer tooling</p>\n <p>One reason is (*gasp*) Open Source. Does anybody doubt that in the near future, there will\n be entirely open-source versions of what Yegge means by “Claude”?</p>\n <p>So, if you want to condemn the use of GenAI in software development, I think you need arguments other than the fact that\n it’s also being promoted for societally-toxic business purposes.</p>\n <p>I have a few. But stand by, let me push that on the stack and turn to\n technology for a bit.</p>\n <h2 id=\"p-4\">Conclusions 2: Engineering sanity?</h2>\n <p>Question: Can LLMs even participate in quality software engineering?\n Baldur doesn’t think so: “The gigantic, impossible to review, pull requests. Commits that are\n all over the place. Tests that don’t test anything. Dependencies that import literal malware. Undergraduate-level security\n issues. Incredibly verbose documentation completely disconnected from reality.”</p>\n <p>I’m not saying that these pathologies can’t or don’t happen. But in my personal experience with Quamina, they\n didn’t. (Mind you, it’s a hobby project.)</p>\n <p>And when they do happen, I would assume that mature open-source projects will use a network of\n trust, as big operations like Linux already do. PRs that don’t have the imprimatur of someone known to be clueful will be ignored.\n When I saw the first of those incoming Quamina PRs, I took the time for a serious look because I knew Rob and had seen evidence that he\n was technically competent. If I see an incoming PR that’s nontrivial and from some rando and doesn’t pass a 120-second sanity\n check, it’s unlikely to get any more attention.</p>\n <p>In fact, some essentials don’t change. If you’re not requiring that PRs be clean and\n test coverage be good and code reviews not be skipped and dependencies be curated, you’re going to get a lousy result whether\n the upstream code is coming from a human or an LLM.</p>\n <p>But it’d be naive to think that a big change in the\n shape of that upstream isn’t going to affect the profession.</p>\n <h2 id=\"p-9\">Bottlenecks</h2>\n <p>Speaking from personal experience, reviewing the PRs from Claude&Rob was neither faster nor slower, easier nor harder,\n than what I’m used to pre-GenAI. The number of my disagreements with the diffs, and the amount of arguing it took to resolve\n them, was also about as usual.\n Which creates a big problem. Because if we can generate code a whole lot faster but review doesn’t\n speed up, all we’ve done is moved the bottleneck in the system.</p>\n <p>Speaking of which, Armin Ronacher offers\n <a href=\"https://lucumr.pocoo.org/2026/2/13/the-final-bottleneck/\">The Final Bottleneck</a>, from which: “When one part of the\n pipeline becomes dramatically faster, you need to throttle input.” Think about that.</p>\n <h2 id=\"p-10\">Burnout</h2>\n <p>Meanwhile, evidence is piling up that LLM-based software development is driving\n developers to overwork and burnout. Here’s\n <a href=\"https://hbr.org/2026/02/ai-doesnt-reduce-work-it-intensifies-it\">a cool-eyed take</a> from <cite>Harvard Business\n Review</cite>. Then there’s Steve Yegge’s frantic, overly-long\n <a href=\"https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163\">The AI Vampire</a>. But my favorite, and I think a\n must-read, is Siddhant Khare’s\n <a href=\"https://siddhantkhare.com/writing/ai-fatigue-is-real\">AI fatigue is real and nobody talks about it</a>.\n From which: “AI reduces the cost of production but increases the cost of coordination, review, and decision-making. And those\n costs fall entirely on the human.”</p>\n <p>The argument we’re hearing is that GenAI makes development more efficient. And more efficient is better.\n <a href=\"https://www.tbray.org/ongoing/When/202x/2020/07/05/Too-Efficient\">Until it’s not</a>.</p>\n <p>I’m not sure the profession I joined last century would attract me today. And on Mastodon,\n <a href=\"https://cosocial.ca/@gordwait/116082229876399512\">@GordWait said</a> “At our office, we are\n noticing a huge drop in Comp Sci co-op applications. The next generation is convinced there’s no future in programming thanks to\n AI hype.”</p>\n <h2 id=\"p-11\">Can and should</h2>\n <p>Here’s another conundrum. Suppose we <em>can</em> build a whole lot more stuff, faster. <em>Should</em> we? I don’t know about you,\n but I am regularly enraged at tools that work just fine popping up “wonderful new features” modals in front of what I’m\n trying to get accomplished. Also at damaging UI churn, driven by product managers trying to get promoted. It’s\n just not obvious \n that speeding up software development is, in the big picture, a good thing.</p>\n <p>And I can’t help noting that every attempt to measure the productivity boost due to GenAI has shown zero (or worse)\n improvement. Of course, Claude’s cheering section will point out that those studies date to 2024 which is the stone age. Maybe\n they’re right.</p>\n <h2 id=\"p-8\">Vampires</h2>\n <p>(In which I once again go all\n <a href=\"/ongoing/When/202x/2023/01/16/Class-Reductionism\">class-reductionist</a>.) The real problem here is late-stage\n capitalism, and I think is best addressed in Yegge’s <cite>AI Vampires</cite> piece, from which I quote: \n “…dollar-signs appear in their <i>[employers’]</i> eyeballs, like cartoon bosses. I know that look. There’s no reasoning with\n the dollar-eyeball stare.” Yeah.</p>\n <p>Thus the ancient question: <i>cui bono?</i> Assuming GenAI genuinely boosts productivity, who gets the\n benefits? Because the ownership class sure doesn’t think they should go to their newly-more-efficient employees.</p>\n <h2 id=\"p-7\">But, what do I know?</h2>\n <p>I know that you gotta have test coverage or your software is an unmaintainable tangle of festering tech debt. I know you gotta\n have code review or your quality is on inexorable downhill drift. I <em>don’t</em> know how to build LLMs into a sane,\n sustainable software engineering culture. Nor what to do \n about capitalism’s AI Vampires.</p>\n <p>And I absolutely do <em>not</em> believe the wild-eyed claims of 10× productivity gains, assuming we demand (as we should) that\n they’re sustainable at scale.</p>\n <p>So, would I advise executives to tell software engineering shops to discard their\n culture in favor of vibe coding in the expectation of monstrous productivity wins? Nope.\n <a href=\"https://simonwillison.net/2025/Oct/7/vibe-engineering/\">Vibe engineering</a>, maybe.\n\n <a href=\"https://locusmag.com/feature/commentary-cory-doctorow-reverse-centaurs/\">Centaurs, not reverse centaurs</a>? Indeed.</p>\n <p>But would I say “Stay away, don’t even look”? Nope. I’d probably suggest pointing the LLM at well-delimited non-strategic\n issues and \n optimizations, and emphasize no shortcuts on reviewing or CI/CD standards.</p>\n <p>Also note that the GenAI apostles are at one in saying that this year’s tools are <em>so</em> much better than last year’s,\n and next year’s are guaranteed to be qualitatively still better! So why would you rush in and risk getting locked into\n soon-to-be-outmoded tooling?</p>\n <p>Rob Sayre wrote “I would never bother to type out these patches by hand. But I read them all.” I probably wouldn’t have\n either and I read them too. And now Quamina is roughly twice as fast. Which is to say, I got good results on a hobby\n project. That’s not nothing.</p>\n <p>But, also not conclusive.\n Once the AI bubble pops and we’ve recovered from the systemic damage, I think there’ll <em>probably</em> be a place for\n open-source LLM automation in developer toolkits.</p>\n <p>But maybe not. Wouldn’t surprise me much, either way.</p>",
"image": null,
"media": [],
"authors": [
{
"name": "Tim Bray",
"email": null,
"url": null
}
],
"categories": [
{
"label": "Technology/AI",
"term": "Technology/AI",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "Technology",
"term": "Technology",
"url": "https://www.tbray.org/ongoing/What/"
},
{
"label": "AI",
"term": "AI",
"url": "https://www.tbray.org/ongoing/What/"
}
]
}
]
}