Warning: ./cache is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable. in /usr/home/lhd/public_html/reason/reason_package/simplepie/library/SimplePie.php on line 1369
SimplePie: Demo

ongoing by Tim Bray

ongoing fragmented essay by Tim Bray

I Wasted an Hour on X 13 Oct 2026, 2:00 pm

Recently John Gruber, whom I’ve followed for decades, published X Once Again Marks the Spot. It’s short and I’m not going to try to summarize it so go read it if you haven’t already. But here are two key quotes: “I see more interesting posts on X than I do on Threads, Bluesky, and Mastodon combined. I wish that weren’t so but it is.” and “The culture on X today is remarkably friendly and inclusive. It is a cheerful place.” Reaction on Bluesky and the Fediverse has been pretty fierce.

I think the following things can all be true.

It’s less toxic than it used to be

Well yeah, Elon isn’t in everyone’s feed, clearly a major quality-of-life improvement.

It’s still his shop, and he’s a slimy fascist

Go read X is bad, though by Lex Freidman. I mean, Musk delivers sieg-heil Nazi salutes in public and boasted about how he, the world’s richest man, cut off food rations to the world’s poorest children. Lex has a longer list of reasons but those two are all I need.

Then there’s the unforgiveable doctrine of tuning the algorithm to bury posts that have links in them.

The CEOs are there

This was Gruber’s starting point. But, uh… CEOs are boring. They have to be ruthlessly on-message and never stray a millimeter from their core mission, which is promoting their company to the investment class. If I want to learn about Apple I’ll go read actual humans like Gruber or Friedman and ignore the vacuous arm-waving from the executives.

It’s not just CEOs, I saw Macron and Burnham and Zelenskyy and Modi. In fact, today’s reality on X is that the people posting are mostly public figures, already established as writers or politicians or executives or whatever. Most of them are there with a business or party or product to promote and that’s what they do.

There are very few who are just interesting voices you haven’t heard before; and that’s part of what I go online looking for.

It’s not “cheerful” for everyone

I dunno, I just spent an hour there and I find myself totally gloomed out. Putinist propaganda. Zionist settler hasbara. Rod Dreher ranting incomprehensibly, and I quote: “…young Jews became Bolsheviks in part to "murder" their fathers - that is, to destroy Judaism.” LLM cheerleading, that get-on-board-or-you’re-history flavor we all remember from the heydey of crypto. Joni Mitchell gleeful at her US-Citizenship ceremony. Slanted political propaganda, against the incumbents in the current BC election, until I switched to Explore and it switched to pro-incumbent puffery.

This is fun?

Anyhow, here’s a list

People, I mean, who are there but should really know better and of whom I now think less: Joni. Nicholas Kristoff. Josh Marshall. Jeet Heer. Nate Silver. Aaron Rupar. Corey Quinn. Stephen King. The Tsleil-Waututh Nation. Miguel de Icaza. Fortunately none of them care what I think of them. I could go on but I’m already blue enough. And I’m not going to even start listing the many featured voices belonging to people whom I already thought of as unsalvageable scumfucks.

The future

Twitter is part of the SpaceX LLMs+rockets conglomerate. If you believe, as I do, that the bubble is going to pop soon and loudly, it’s going to be desperate times when SpaceX’s valuation collapses and it can’t borrow billions to keep the doors open. Twitter has never made really significant profits (and I saw exactly zero ads in the hour I spent poking around).

So what happens then? Feels to me like the choices are extinction or enshittification. We’ll see.

Where I stand

I’m still a happy Fediversian, here’s why. Yeah, there aren’t as many people and it’s kinda geeky and leftist and queer; also unattractive to billionaires and CEOs. I can see why that’s less appealing for some folk out there and, well, OK. But I’m having fun on Fedi. And it’ll be a loooong time before I waste another hour on X.

2026 Aussie Visit 12 Oct 2026, 2:00 pm

What happened was, Lauren’s NZ family includes a nephew who’s currently living in Brisbane and got married last month, so a dozen or so Kiwis and three of us Canadians got on airplanes and converged on easternmost Australia. We went on to tourist a bit and visit friends in the Melbourne area. Came away with impressions and pictures.

Australia’s different. I don’t claim any particular deep understanding, but at least we were mostly among locals and often off the tourist trail. Also I find some of the pictures pleasing.

Damn, that’s a long plane flight.

Ice crystals on airplane window

Eleven or so hours into the journey, dawn over the Pacific; ice crystals on the windows plus something put the Pixel into Macro mode and thus the reflections. Vaguely self-portrait-ish.

The wedding

It was great; she’s a Grade 4 teacher and he’s a cop. They’re both exceptionally attractive and have large supportive families. It was well-organized and good fun.

Mothers of the bride and groom

The mothers of the bride and groom both looked very sharp.

A young girl silhouetted making a heart with her arms

Niece of the groom sends a silhouetted heart.

Brisbane

The city didn’t do much for me, but maybe that’s because we were mostly out in the burbs: Our Airbnb, the Kiwi-branch Airbnb, the bride & groom’s place, and the wedding venue. All in decent but (except for our joint in Brighton) not terribly memorable neighborhoods.

Also there was “Chermy”, the Westfield Chermside Mall. OMG. It’s the size of a small European nation and getting prepped for the wedding required enough time there to drive my nervous system nearly to meltdown, I’m not good at malls.

I’m left with the impression that Brisbane is designed and optimized for automobiles but, once again, maybe we just came at it wrong.

Tidal flats off of Brighton, Queensland, Australia.

Low tide off Flinders Parade in Brighton, Queensland.

Kookaburra on a branch

Kookaburra of course.

After the wedding there was a gathering at Felons Brewing, an absolutely massive gastropub on the banks of Brisbane’s river, which I totally recommend. The place is too big but somehow they make it work and the food is really good.

Warragul

Our dear friend Sally, after a long career in Melbourne, sold her house in a decent Melbourne neighborhood and bought something of a palace in Warragul, a couple of hours by train to the east. It’s in Gippsland, a green and pleasant part of Australia.

Warragul is small, busy in the center, and very quiet outside it.

Sun setting behind a Eucalypt Eucalypts on a green hill under a cloudy sky Magnolia with a large green tree behind Extremely blue flowers on a small bush

Warragul.

My favorite thing about the town was Bandolier Brewing, which has a friendly and relaxed small-town vibe and terrific pizzas. The beer is OK but not memorable.

The countryside around it is remarkably nice.

Gippsland countryside

Looking down on Gippsland pastureland
from the Cape Horn Lookout.

Melbourne

Lauren got her Ph.D. here and has lots of context on the place, plus still a few friends. It’s a cool city; the fact that it’s got twice Vancouver’s population shows. A whole lot of style statements were really working, plus the streets and alleys operate on a welcoming human scale.

Dining in a Melbourne alley Melbourne evening scene

It’s a foodie city, which as a side-effect highlights a big difference between there and here: Pay is better in Australia. Here are the minimum-wage rules (for Americans, those Aussie bucks are worth about 70¢ just now). Those rates are a lot higher than where I live. “But,” our taxi driver told us, “nobody’ll work for the minimum, you have to offer more than that.”

This is in your face when you eat out; first, because everything on the menu is expensive. Second, nobody asks for a tip. I kind of like this set of trade-offs and wish North America would get a clue. If you follow that minimum-wage link above you’ll observe it’s from “Australian Unions” and they claim a lot of credit for the pay structure. To the extent that’s true, good on ’em.

Anyhow, back to Melbourne. The center of the town is Flinders Street Station, which I’ve pictured on this blog before and will again; the place makes me happy.

A train station in yellow and red A young woman looks at her phone seated on a stone staircase

At Flinders Street station.

On our last day we visited the Vic Market, where a huge and remarkably random selection of merchants sell, more or less, everything imaginable. A cheery place; my daughter and I had a food-truck lunch (me: Ethiopian, her: Mexican) that was at least competitive in quality with the fancier-restaurant fare.

Vintage-watch vendor at Melbourne’s Victoria Market Spiritually-flavored objects for sale at the Vic Market

Trailing observations

Here’s a place near Sally’s in Warragul.

A brick house in Warragul, Australia

It nicely illustrates a few of my take-aways. Item: Vast lawn. Item: Nice brickwork. Item: Capacious roof overhang for shelter from rain and sun. Item: Since they don’t have alleys, every house has a front-facing garage (behind the bush in this pic). Item: Solar; in reasonably new/modern areas, somewhere around a third of residences have these. It’s subsidized enough to make it a financial no-brainer. Item: Impeccably clean road and curb. Item: Single story, no basement or upstairs.

I actually like a lot of the Aussie residential architecture. Pity about those front-facing garages.

Finally, speaking as a full-time hat wearer, for my money Akubra makes the world’s coolest. Expensive, but rugged and stylish. Check ’em out.

Color Study: Fujifilm vs Pixel 10 Oct 2026, 2:00 pm

Our neighorhood has many deciduous trees, which means, in Canadian October, lots of bright colors overhead and also on the ground. The camera (from its corner in my office) and phone (from my pocket) both quiver with eagerness to be pointed at those colors. Sinced I’ve grumbled a bit recently about the Pixel’s color rendition, I thought I should try some side-by-sides. So here are three pairs of pictures from the mobile and the “real” camera.

The gear

The mobile is a Pixel 10, shooting with the default Google camera app. Since it shoots at a wider angle than either of the camera lenses I used, those shots have been cropped down quite a bit, but I don’t think that affects the fairness of the comparison.

The camera is a Fujifilm X-T5, four years old now but not too far off the state of the art. For camera nerds only: The sensor is APS-C not full-frame, which is why the body and (especially) lenses are smaller and lighter.

Two lenses are used; amusingly, they are the pair I bought with my first Fujifilm camera in 2013, the 35mm F1.4 and the 18-55m F2.8.

For each pair, the pictures were shot at the about the same time.

I used Lightroom, but only to crop and rotate the Pixel shots. Which you could argue is a flaw in this comparo because normally I touch up photos quite a bit before I share them. But I think these straight-out-of-the-camera versions have something to teach.

Fallen autumn leaves, shot with Pixel 10 Fallen autumn leaves, shot with Fujifilm

Pixel above, Fujifilm + 35mm F1.4 below.

I could have made a flip-to-compare widget but that’s too much JavaScript for the weekend. Get the enlarged versions open in adjacent tabs and flip back and forth
if you want that kind of thing.

Look, I like the Pixel, it’s not a “great camera for a mobile”, it’s just a great camera. I use it all the time with confidence that it’ll give me an excellent chance at a keeper. But it doesn’t come off well here.

I can guess why: First, this was a cloudy afternoon with a row of big houses between the leaves and the part of the sky the sun was in. Apparently the Fuji sensor does better with this particular flavor of low light.

Second, that lens; I think a whole lot of people in Fuji-land would agree that that 35mm F1.4 is one of the greatest lenses ever made by anybody ever. Things just look better through it. Go looking online and you’ll find lots of moist but inarticulate voices and they’re all saying something along the lines of “I dunno what it is but I like it.”

In this case, the Fujifilm picture looks strikingly more three-dimensional than the Pixel’s. Lens design is one of the last domains of analog engineering design. For which I’m thankful.

The Pixel version is light on context and the less-dark leaves look blown out. It would benefit from Lightroom adjustments but I don’t think it’d catch up.

Fallen autumn leaves, well lit, Pixel 10 Fallen autumn leaves, well lit, Fujifilm

Pixel above, Fujifilm + 18-55mm F2.8 below.

When I got these two up side-by-side on the screen I wondered “Is the Fuji exaggerating the saturation and contrast and brightness?” Maybe so. But if the Pixel version is accurate, I don’t think I would have been impressed enough to take the picture. The cameras’ opinions on the relationship between the red and yellow differ sharply. I think the Fuji is right but I can’t remember where exactly I shot that, so I haven’t checked.

If you zoom way in, the Pixel actually got slightly better focus. Which is irrelevant to the way the picture looks on screen. You might be able to notice on a really big print?

Anyhow, I’m not sure what’s going on here. There was plenty of light; the Pixel was at 1/180sec, the Fuji 1/60. Now I’m going to be suspicious of my camera, is it lying to me in a pleasing way?

Autumn leaves against blue sky, Pixel Autumn leaves against blue sky, Fujifilm

Pixel above, Fujifilm + 18-55mm F2.8 below.

Obviously, all the light anyone could want, loads of contrast, and it’s hard to pick a winner. The Pixel does a little bit better at capturing branch textures; those branches are mostly just silhouettes per the Fuji. If you look really close and care a lot, the Fuji’s take on the color of the sky is better. I’ve griped about this before, I think there’s something in the Google computational photography that detects sky and slams the pretty-sky-blue lever over on the color mixer.

Take-aways

I’m pretty sure I would have been willing to share either version of each of these pictures, especially post-Lightroom. Since the Fuji is shooting RAW, those files would have had “deeper data” and thus more scope for pulling light out of darkness or texture out of highlights.

The differences in image quality are there, and they’re significant. But the “real” camera’s biggest advantage is that it’s shaped to fit in your hand and has physical knobs and dials to adjust things, and is awake more or less instantly when you turn it on. It’s not trying to be anything but a camera. Also, you can attach a huge variety of funky lenses, including extreme telephotos. The bottom line: Cameras are immensely more fun to shoot with. But you’re going to have the mobile with you more often.

I’m pretty sure my conclusions would have been the same had the camera been a Canon/Nikon/Sony or whatever. But the Fuji cameras have better ergonomics than those.

The phone-cams will go on getting better. But until they can do the hand thing and the lenses thing, I can’t see going without a real camera.

The Purpose Isn’t What It Does 24 Sep 2026, 2:00 pm

“The purpose of a system is what it does.” Such a neat little turn of phrase; it makes you sound wise and cynical and like a person who sees through things. But it’s mostly wrong and almost always counterproductive.

A bit of background; the phrase (and let’s just say “POSIWID”) was coined in 1979 by a British management consultant. It’s thrown around heavily; a search on my Mastodon server turns up plenty of examples. Most of which, instructively, are lightweight arm-waving. Try it on yours.

Rhetoric

It means “the art of persuasion” and more specifically, the category of language used in an effort to convince, to make a point, to help another human understand your point of view. POSIWID, if it’s to have any currency at all, should be useful as a rhetorical tool.

Which matters. Because we are currently embedded in a torment nexus around values and humanism and antifascism and tolerance and late-stage capitalism and AI and AI and AI and AI. We need good rhetorical tools. And we need to be clear about what the purposes of systems are.

My claim is that POSIWID doesn’t help us understand the why and who of the malignant forces we’ve found ourselves horrified by and, I hope, are fighting back against. In other words, it’s rhetorically lousy. Let’s work by example:

The purpose IS

The purpose of GenAI IS to increase the wealth of a tiny handful of already-wealthy people.

The purpose of Grok/X IS to promote Musk-flavored fascism.

The purpose of the Fediverse IS to serve as a conversational platform that can’t be bought or shut down.

The purpose of a handgun IS to kill humans.

The purpose ISN’T

The purpose of the Internet ISN’T to serve revenge porn.

The purpose of a hammer ISN’T to enable domestic violence.

The purpose of the automobile ISN’T to accelerate the climate catastrophe.

The purpose of GenAI ISN’T to usher in a newer better world.

Late capitalism again

If we believe that money talks, we need an add-on. Because almost anything with a lot of human and/or financial investment also has the purpose of enriching someone. For example: The purpose of a handgun IS to enrich its manufacturer. So in discussions of purpose, let’s not leave that out.

Also, note that unlike many of the other things in the lists above, the purpose of the Fediverse ISN’T to make money for anyone. It’s fairly unique in that respect.

And, as the handgun example illustrates, it’s usually “purposes” not “purpose”, plural not singular. Another reason why chanting “#POSIWID” is generally misguided.

Anyhow…

When we engage in struggle for or (more often, these days) against something, we need to understand its purposes. And a vacuous mantra like POSIWID doesn’t help.

Regulate and Standardize AI? Nope. 18 Sep 2026, 2:00 pm

Nate Silver’s latest is A supermajority wants to slow AI down, noting the general convulsion of fear provoked by the AI Guys’ it’ll-kill-us-all palpitations. From which:

And then there’s a weird faction of AI denialists — people ostensibly on the left — who are convinced that AI is all a scam and therefore there isn’t much need for regulation.

In parallel, the IETF (Internet Engineering Task Force, the people who standardize protocols so the Internet can work) is seeing a steady flow of proposals along the lines of “something Agent something Validation something Enablement something”.

Money

I’m a leftist (but not that weird) and I think regulation and standardization of LLM-land are a waste of effort at this point in history. Because money. You don't have to believe all GenAI is crap to think that the financial premises are, well, crap.

First, the only sector today where there are large numbers of people willing to pay substantial sums for access to AI services is software. Software people are roughly 1% of the global workforce, which isn't enough to move the financial needle.

For the other 99%, are they (or their employers) willing to pay enough for AI goods and services to turn a profit on the global multi-trillion-dollar investment surge? I could be wrong but I don't think so.

That leaves the possibility that employers can discard tens of millions of knowledge workers, thus boosting profits enough to validate the global investment premise. I don't think it's weird to find that scenario dubious.

Finally, I don't see how we can have a rational discussion of regulation or standardization under the huge global investment overhang. The miasma of greed and fear obscures hard facts of actual utility and ROI. Which you can’t regulate or standardize without. My advice is: Let’s wait for that bubble to pop.

Money’s the biggest issue, but there are other bad problems with regulation and standardization

Moving target

For standardization in particular: The technology (and business landscape) are changing really fast and all the time. I’ve personally had multiple conversations where I say “X is a dumb thing about LLMs.” The response is usually “X is so six-weeks-ago. Everything is perfect now.” Please, please, don’t make anyone sit on a committee trying to specify anything about technology that’s so obviously immature.

The law

And for regulation: There’s the money issue, and then there’s that moving target issue. But I think current law remains a useful tool as-is.

If you launch an LLM-backed agent and it causes me serious business or personal damage, I think I can hire a lawyer and sue your ass. Because lots of people are, notably including most of the world’s largest publishers.

If it causes large numbers of people personal or financial harm, you’ve probably violated existing law and might find yourself facing a criminal conviction. We already have a solid precedent that saying “the AI did it” is not a valid defense. Yeah, obviously, a legal assault on huge, rich, and fashionable entities like OpenAI and Anthropic is an uphill struggle. But if Nate Silver is right and the anti-AI rage is bipartisan, the BigAI castles may be built on sand.

My answer

As a senior and fairly visible software person, I repeatedly get questions like "should we be scared?" and "will I lose my job?" My answer is always the same: Wait for the bubble to pop, then we'll find out.

Canceling Emily 8 Sep 2026, 2:00 pm

Meet Emily van Lidth de Jeude, an artist who lives on an island and has the most adorable chicken coop you’ll ever see. Those URLs start with emilyartist.ca now; until recently it was emilyvanartist.noblogs.org. But that site, there for many years, is down now, and not coming back up. Why? Well, her email address used to end with @autistici.org (it’s broken too now), and therein lies the story.

It’s because the Trump administration declared that the “Autistici/Inventati” collective hosting Emily’s website and email was a terrorist organization, and blasted them off the Internet with legal nuclear weapons. Here is the A/I collective’s statement. A more compact journalist narrative is Als de Amerikaanse regering je tot terrorist heeft bestempeld: deze Italiaanse internetprovider kwam vorige week op de sanctielijst which is in Dutch but it machine-translates nicely. Emily’s own take, on her blog, is Canaries of Hope.

It’s been professionally and personally devastating, vanishing Emily’s online history and nuking her email network.

Emily van Lidth de Jeude painting

Canadian eco-social practice artist Emily van Lidth de Jeude in her studio, 2023, working on a series about wildfires. Beside her on the floor stands a portrait of her Ukrainian grandmother.

I suppose most people reading this saw the Autistici/Inventati news story and shook their head at yet more MAGA malfeasance. Me too. But then I found out about Emily’s story, initially on her Fediverse feed, and that made it concrete. The wastrels in Washington can reach across the ocean and silence a Canadian creator on an Italian website. With no prior legal process, nor any way to resist, and without fear of consequences.

They can probably do the same to you if you displease them sufficiently. They’ve done it once now and from their point of view it went flawlessly, so why not again and again and again? The only reasonable prediction is that they will.

It might be the case that if A/I had been in the US, they could have mounted a defense based on Section 230, but I’m no lawyer.

I’m also no DNS expert; but I know some good ones. So I asked if there were any countermeasures available to non-US entities. The answer: “Nope.” I asked “What about a national domain like .ca?” Still nope, any national registry could be targeted by US legal warheads.

So, I could be taken down by this time tomorrow, just like Emily was. And like her, I’d have no comeback. You too, maybe. I remember, back during the Cold War, we described our part of the planet as “The Free World”. Every year it gets harder to believe that label.

This is a politics and policy problem. So in the big picture, the only way to prevent this kind of abuse is for the Americans to stop electing ignorant corrupt lawless narcissists. Starting this fall of 2026.

In the meantime, follow Emily online, she’s fun. And have a look at her art, some of it might look good where you live.

Clankers and Data Races 1 Sep 2026, 2:00 pm

I just landed a PR that fixed a nasty data race in Quamina. Which shouldn’t have been technically challenging, but I took side-trips into Erlang, unit test footguns, whether or not I should go on accepting LLM-generated PRs, and programming while aging.

Let’s address that last issue first.

“No” on clanker PRs

In late 2026 we know that:

  1. Claude and its competitors can write perfectly decent code, particularly where the task at hand can be narrowly focused.

  2. They’re also good-to-excellent at detecting vulnerabilities.

  3. The underlying GenAI technology has serious negative externalities in (at least) the domains of environmental impact and intellectual property.

  4. Using this technology might enrich and empower people about whom I feel contempt and fear.

  5. The vast majority of people whom I care about and respect are experiencing real unhappiness about the GenAI big picture.

I’ve never personally put clankers seriously to work and for now I’ll continue not to. I have been accepting Claude-authored PRs but, to the extent I can detect them, I’m stopping. This will have a real cost; some of those PRs yielded big performance boosts. Also, they were built much faster than I could have managed.

But the picture is mixed. Specifically, I have to admit that I don’t really understand the 500 or so lines of clanker code and test that compute epsilon closures for nondeterministic finite automata. Sufficiently so that I’ve written an issue to think it over, understand it, and with any luck, simplify it.

Interestingly, we got to the current epsilon-closure code in a sequence of reasonable-looking PRs that I reviewed, asking for changes in most. But in the big picture my reviewing was ineffective, because it ended with a large lump of code that I don’t understand or, at the end of the day, trust. I wonder how typical that outcome is?

There’s an exception to my new policy: Vulnerability reports. I think it’d be irresponsible to ignore them and penalize Quamina’s users because I don’t like the source. Somebody did a Claude scan which found 14 problems at various levels of criticality. I’ve created issues and hope to retire them all soon.

Pruner race

The ugliest problem the clanker found was a data race in a piece of Quamina called pruner (that most people don’t use). So I bashed out a quick unit test that ran several thousand read operations in one goroutine and the same number of updates in another. Sure enough, on its first run it instantly exploded in a flurry of data-race complaints.

The problem wasn’t complex and my first cut at a fix worked fine, the unit test running flawlessly. But, also very slowly. I (reasonably, I thought) went looking for contention problems around the mutexes I’d just added. The profiler seemed to be saying that the slowdown was in Quamina’s core matching methods, but that made no sense at all, so I dug deeper and deeper into the Go sync primitives. And found nothing useful.

Concurrency bugs are extra irritating. Also, I’m semi-retired and doing this for fun, so I put it down and ignored it for a few weeks.

Functional love

There was a bright spot in this sad story. I mistakenly thought I’d found my problem in a statistics-gathering type with several mutexed fields. So, cackling gleefully, I turned them into Erlang-flavored accumulators updated with Go channel messages, a programming idiom that’s always given me a warm glow.

It didn’t make any performance difference but the code was smaller and prettier.

[Update: It’s subtly buggy in a way that doesn’t impair its usefulness; created an issue, will fix.]

Unit tests are good except when they’re not

When I got over my grumpiness and went back to the problem, I started by looking at the unit test. Oops. Turns out the read-only thread was (unsurprisingly) running twenty times as fast as the update thread and since they were doing the same number of operations, it finished up instantly and the updater-thread kept thundering away. For reasons that need not concern us, in this specific benchmark scenario a stream of heavy add and delete operations without any stats-gathering read operations leads to massive, horribly complex NFAs. Then the matching runs slow — exactly what the profiler had been trying to tell me, only I thought I was smart enough to know better.

So I forced the reader thread to keep running until the other finished and hey-presto, the race was still fixed and everything ran at typical Quamina speeds, which is to say very fast.

(I didn’t get rid of the Erlangified stats package though, I just liked it too much.)

I’m normally tolerant of a certain amount of sloppy informal YOLO power-coding while constructing unit tests — more are better! — and I think I still am. But this was a painful experience that I’d like to avoid in future. So, is there a lesson here? Maybe there are two: First, believe what the profiler is telling you! Second, if you’re having trouble understanding unit test output, dig around a bit and make sure it’s doing what you think it is.

Grey-haired programmer

Even when I’m mad at my software, I’m grateful that I still enjoy working on it. I think it supports my main post-employment objective, which is to keep my brain working. And who knows, the software might help somebody somewhere.

And best of all, when nobody’s paying you to work on something, you can take a few weeks off whenever you’re not in the mood.

Text Watermarking 24 Aug 2026, 2:00 pm

There’s been a lot of discussion recently about the GenAI giants “watermarking” their output, which to say inserting data so you can tell that it’s been generated by ChatGPT or Gemini or Claude or whatever. The technology for watermarking images is as old as dirt, works as advertised, and doesn’t affect image quality. What’s new and controversial is a claim that they can watermark text output cheaply, simply, and without harming the quality of the text.

I was curious how they did this so I dug in a bit. I’m mostly convinced that it works and is pretty clever. However, all the explanations are full of Computer-Science jargon that you need to be a professional developer to understand. So here’s an attempt to explain to non-insiders and then, indirectly, opinions on whether it’s good and what it means and doesn’t mean.

How it works

[To professionals: The following is vastly oversimplified but not, I think, misleading.]

LLM software generates output a word at a time. The way it works is, it takes the last few words it’s generated and feeds them to the Large-Language-Model process, and what comes out is a list of plausible next words, and a number which represents just how plausible they are. So if the last few words were “my favorite tropical fruit is” the LLM might come back with “mango”:30, “lychee”:20, “papaya”:10.

You might think that LLMs always choose the most-plausible next word, but that turns out to give lousy results. So they randomly select from the list in a way that respects those numbers. First, note that the numbers add up to 60. So in this case, you’d want it to select “mango” 30 out of 60 attempts, i.e. half the time, “lychee” 20/60 or a third, and “papaya” 10/60 or a sixth.

In that sentence, the word “randomly” is doing a lot of work. Let’s look a little closer at one way you might do this. Your computer program could make a list with 60 entries, fill the first 30 with “mango”, then 20 with “lychee” and 10 with “papaya”. Then you’d ask your computer to give you a random number between 1 and 60. Suppose you got 33, so you pick the 33rd list entry and return “lychee”.

And in that sentence, the phrase “ask your computer” is hard-working. It turns out that computer programmers need random numbers like this all the time (let’s ignore why). They get the numbers from a built-in function called a “PRNG” (let’s ignore what that stands for). The way a PRNG works is you fire one up by giving it a “seed”, which can simply be another number that you get by bashing randomly at the top row on your keyboard or by asking a co-worker to pick a number or whatever.

Once seeded, the PRNG is happy to go on giving you an endless series of random numbers. But (this is important) they depend on the seed. By which I mean that if you fire up a second PRNG with the same seed, it’ll produce exactly the same endless series.

Now we’re almost there. If you think about it, the LLM’s next word depends on, and only on:

  1. The previous few words and the model’s “context”, i.e. the prompts and anything it’s been asked to load up,

  2. The internal workings of the LLM, and

  3. The random number used to select from the list of candidate words. Which in turn depends on the seed that the LLM fired up its PRNG with.

So, suppose you want to test whether some text was generated by an LLM. Well, IF you have access to the LLM, and IF you know which PRNG they used, and IF you know the PRNG’s seed, then you can look at the LLM output and see if the words are the ones that the LLM would have generated. This works even if the output text was edited a bit; if a high proportion of the words are those that the LLM would pick given the preceding ones and the PRNG output, that’s a signal that yes, it was probably LLM-generated.

Secrecy

This only works if you know the details of how the candidate next-words are generated, which PRNG, and what seed was used. It would be technically possible for an LLM provider to share this information, then anyone could check the watermark. In fact, all they have to keep secret is the PRNG seed. So at the end of the day, this “text watermark” means something like “Remember the seed”.

I don’t watch the GenAI sector that closely so I don’t know if any of the providers actually do disclose this stuff. My impression is that generally speaking they’ll provide an API to do this checking for you. Or not, if they decide you’re not entitled to do that, or haven’t paid enough, or whatever.

Resources

Here (on X, unfortunately) is an explanation that is slightly less oversimplified than mine above; still, I think, inaccessible to non-professionals, but perhaps useful to some.

Scalable watermarking for identifying large language model outputs is the upstream science, from Nature in October 2024. Strong stuff.

AI Text Watermarking Is Free And Good, by Zvi Mowshowitz, also offers a how-it-works, but then includes commentary around the “… And Good” part of that title. I don’t agree with some of it but the arguments are useful to know and quite clearly written. I’m going to steal a phrase from Mowshowitz’s piece to serve as the title of my next section…

Anthropic Derangement Syndrome

Quite a few people, some very smart, have reacted to this watermarking idea with fear and loathing. Mowshowitz scoffs at them. He (correctly) observes that the hostility is in large part due to people assuming that anything the AI vendors say is probably a lie and that anything they do is probably greedy and dangerous bubble fodder. But he (incorrectly) opines that this take is unreasonable.

So sue me: I too think those businesses lie a lot, that their product vision is damaging to civil society, and that they are inflating what is starting to smell like a truly apocalyptic financial bubble.

Having said that

I do think the watermarking can work as described and won’t slow things down and won’t degrade the quality of the output.

Sometime in the last year I gave up on making predictions about the impact of GenAI on the world. So don’t ask me what the effect of ubiquitous watermarking will be.

Five Views of the Wilcox Prairie 17 Aug 2026, 2:00 pm

Fools have said that the Prairies are boring. This cannot be true, because in the absence of hills and trees there’s more distance in each direction you might look. Also, Prairie landscapes include the skies above them which, whether blue, star-spangled, or cloudy, aren’t boring. Herewith photoevidence from the vicinity of Wilcox, Saskatchewan, with which I claim no other connection.

The nearby highway is distinguished by an adjacent railway line that carries really big trains; you really don’t want to be waiting on a crossing while one of them spends tens of minutes reversing back and forth lackadaisically, to what purpose I can’t imagine.

Prairie with clouds above and a train-crossing sign Prairie train-tracks with clouds above

See what I said about the sky not being boring?

This corner of Saskatchewan has less absence of human construction than Prairie-typical. Below, four distinct structures rise from the fields, marked by the clusters of trees which surround every locus of human activity here, there to offer shelter from the endless Prairie wind.

Green Prairie grass with a telephone pole and buildings in the distance

I was out for a drive with my mother, now 96. She asked “How many people wonder what it looks like where the makings of the bread on their table come from?” Below, what it looks like after the harvest. The ground’s less pretty than before the wheat was cut but the dirt/cloud antiphony lured my camera out of the bag.

Recently-harvested Prairie landscape

Prairie photography is right up there with Rock-Concert photography in that there’s all the light and visual drama you could want, just get in a good place and point the camera in a good direction.

Prairie field with cloud drama above

Remove distractions, highlight the clouds, and you can’t go wrong.

Happiness Bookmarks 13 Aug 2026, 2:00 pm

It’s been a rough few years, for the earth, for the societies that populate it, and for my family. Like they say, “sandwich generation”. There’ve been weeks when I’ve struggled for a smile. I suspect more than a few folk reading this are also feeling stretched thin these days. Happiness has not entirely departed our lives, and waiting for a happier future is a really bad idea. So we should notice and bookmark those moments and hours when smiles come to our faces.

If you share your life online, write the good times down and share them already. I used to do this a lot; here are three out-takes ranging between 2003 and 2011. Maybe one or two of them will cheer you up?

I should do that more. Starting now.

Pleasant Day

We live near a street called Main (which it’s not) and a neighborhood called Mount Pleasant (there’s no mountain but it’s mostly pretty nice). Three weeks back, under the rubric “Pleasant Day”, they blocked cars off nine blocks of Main, and the street was repopulated with retail stands (mostly from the street’s merchants), eat/drink patios, and live music.

It was sunny and everyone was happy, me too for a couple of hours. I also enjoyed taking pictures and editing them.

Woman pats a hairy white dog at a grooming vendor stand

There was a dog-grooming stand with a big white dreadlocked beast that enjoyed everyone’s attention.

Lucky’s Books and Comics features the Odyssey

Lucky’s Books and Comics is an excellent bookstore. Their selection echoed the summer-2026 zeitgeist.

Racks and racks of Indian-flavored clothing Indian-flavored clothing vendor makes a sale

There were a couple of stands selling India-flavored garments , they seemed to be doing good business.

Selling trinkets at the street fair

Chinese-flavored trinkets too.
Check out the dog.

Woman shopping at a flower truck

Who couldn’t smile at a flower truck?

Little Sun Studios live printing has a banner saying “BE GAY DO ART

BE GAY DO ART they said.

Gaily-costumed fellas at the honey shop

Or just chill at the honey shop.

Woman singing karaoke at the Eddie Lam piano lessons stand

She was pretty terrible but everyone enjoyed it.

There’s nothing I can think of that would improve the message on that T-shirt.

A man wears a T-shirt reading “International Drummers for Jesus Celebration 2004

I didn’t shoot the deputy

Yesterday I was out on an errand with a pretty severe eldercare hangover — man, that can get you down — when I heard I Shot the Sheriff playing. I first thought it was a radio or something, but no, it was Reggae Night with Mostly Marley and they were freaking excellent, razor sharp.

I felt a smile welling up from inside, the first in days. Now I’ve bookmarked it.

Dununba, Sangban, Kenkini (and Stands) 8 Aug 2026, 2:00 pm

Those first three words in the title name the members of the Dunun family, cylindrical West-African drums that you usually put on a stand to play. Think of those sizes as Papa bear, Mama bear, and Baby bear; the names are a bit onomatopoeic. I bought a set and, separately, stands to put them on. They’re pretty enough that I want to post their pictures, which gives me an excuse to share West-African drumming vibes. And recommend products.

Motivation

I’ve been studying West-African (and a bit of Afro-Cuban) drumming for decades. This kind of music relies on dununs, djembés, and bells. Djembés are goatskin and played with bare hands, dununs cowhide and with sticks. In class, we play the dununs in traditional style, one drum per person, one hand playing the drum sideways on a stand, the other tapping (with a stick) a bell strapped to its top.

horizontal dunun

Dunun on a stand (but no bell attached).
Courtesy of Drumskulls (see below).

I’m reasonably proficient on the djembé but nobody would call me a star; I can keep to the beat at a reasonably fast pace and even improvise a bit. On the single sideways dunun, I can get along.

For the last couple of years, I’ve been in an invite-only weekly drum jam; a dozen or fewer of us gather in an old church and create rhythms together for a couple of hours. For me, this has become a major mental-health crutch.

One of our regulars, guy named Mark, brings along three dununs mounted side-by-side vertically so you can play rhythms across all three.

Les Ballets Africains homepage

That setup is called “ballet style” because it was was popularized by Les Ballets Africains (that site is worth a visit, as is this documentary).

Anyhow, Mark plays djembé sometimes and welcomes others playing his dunums when he’s not, assuming they ask first.

I’d lacked the nerve to ask  — Mark is a pretty elite drummer — but one time a few months ago I felt daring and gave it a try.

Which awoke an unsuspected internal demon. I found playing along with the rhythm effortless, then improvising on top of it; my hands went to surprising places, it seemed of their own accord. Eventually I got excited and was leaping around a bit while playing. After, two of our crew called me out and said that’d been excellent. I love consuming music but very rarely as in never before get compliments about performing it.

I took my turn standing in on Mark’s drums for the next few weeks and had similar fun every time. So I decided to get some. Obviously this involved a lot of research and asking around; I generally prefer to buy used instruments, but couldn’t turn anything up. Mark told me, and others concurred, that a really good source would be Drumskull, where Mark had got his, now 15 years old and still sounding sweet.

Drumskull drums logo

Acquisition

There was a small problem, namely that I’m currently boycotting products from the United States of MAGA. But when I emailed and talked with the Drumskullers, it turned out they were old-school hippies from Santa Cruz, which, I decided, earned them an exception.

Then there was a big problem, namely shipping. Somehow Purolator broke the three drums into two shipments with different addresses, both wrong. Multiple phone calls and emails and support-bot interactions occurred and I got seriously bent out of shape. Purolator, you had one job.

Finally I got them, here they are.

Three dununs on ballet-style stands on uncut grass Three dununs on ballet-style stands by a kitchen island

I think they’re handsome. Also, they sound wonderful, although Drumskull tells me it’ll take a while for them to break in properly. I also got cases for each from Drumskull and those are superb, I’d feel confident checking them in on an airplane or tossing them into the back of a truck. They also came with three pairs of drumsticks.

I strongly recommend Drumskull. Thanks, guys.

The downside is they’re really freaking heavy, in particular that big Papa-bear drum. By the time I get them out of the house into the car, then out of the car into the church, I’m panting. I’m thinking that on some evenings I could get leave Papa bear behind and get along with the two higher-voiced dununs.

Stands

The observant reader will have noticed that in the pictures, the dununs are sitting on nice wooden stands. These are from Shaw Percussion, located in rural Ontario. They’re good people;I recommend them.

The great thing is that they’re adjustable to fit your drums, look nice, and very stable. The bad thing is that, because of being adjustable, they’re heavy and have pointy bits. We have a friend/contractor who’s a gifted carpenter, I may ask him to build a custom set which should be lighter and simpler.

Give it a try!

Most cities have an African (and less often Afro-Cuban) drumming community and/or teachers. Most teachers provide drums so the barrier to entry is low. It’s energetic, fun, and will probably change the way you think about rhythm. Also, strikingly gender-balanced both on the teaching and learning side.

If we ever meet at a drumming event feel free to ask for a turn on my dununs.

Upside Down 3 Aug 2026, 2:00 pm

The world is, I mean. Bottom-up. Maybe that’s just me not understanding? It doesn’t surprise me that there are people who are stupid and/or evil. The surprise is, the others not voting them out of office, passing legislation outlawing what they’ve been doing, and sending the ones who don’t stop to prison.

But anyhow, I got some amusing photographs at a local garden that are, um, reflective, wanted to blog them, picked the obvious title, then the paragraph above came out. Don’t forgive me. Weird times, bad craziness, etc.

Pond surface featuring lily pads and the reflection of a tree Pond surface with lily pads and a network of branches between the pond and sky Trees and a complex plant assortment are reflected in a murky water surface

In an upside-down world, reasonable people won’t be. Eventually. I hope.

Calm water helps me calm down. Try pointing your camera at it sometime.

Six Summer Days of Music 26 Jul 2026, 2:00 pm

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.

Cover of the WCAMS 2026 camp booklet

The facts

250 attendees, a couple of dozen faculty (all professional musicians), a lovely waterfront venue at a swanky boarding school campus in an isolated small town. The picture above is the cover of the camp booklet.

View from the Malahat highway to Mill Bay

On the way to the camp.

well-manicured lawns stretch down to the Pacific

This space, while the camp is running,
usually contains at least one person
or group emitting music.

Let me should expand on that list above.

  1. 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 pure sound; 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.

    Then there are the concerts you’ll be practicing for and playing in.

  2. 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.

    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.

  3. 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.

  4. 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 reduces the risk of dementia.

A woman is towing a large horn behind her in a small cart

For privacy reasons, we were all asked not to share photos from the camp in public, but I think this one is safe.

The music

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 Septet (his first big hit, he came to hate it), and the graceful but weird second movement of Stravinsky’s Concerto in D. Another: Popular-music classics arranged for acoustic instruments. I heard (and will have more to say about) Bohemian Rhapsody for woodwind quintet, Cohen’s Hallelujah for seven violas, and the Cowboy Junkies’ Cold Tea Blues for four female voices and ukulele.

The big final choir-and-orchestra blowout, with 110 people on stage, was Brahms’ Schicksalslied, which I bet almost none of the people reading this have ever heard of (I hadn’t).

And also Bach. Because of course.

How it works

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.

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.

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.

My adventure

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.

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.

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.

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.

A basic bodhrán

So, without asking anyone whether it was a good idea, the week before the camp I rented a bodhrán. 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.

I should mention that “bodhrán” is pronounced with the “dh” silent, “bo” as in “bother” and “rán” as in “roan”.

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 (everyone 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.

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 — I think the whole band was. I’ll never forget it.

Musical take-aways

Here are the ones that I can still hear when I think back on them.

The woodwind quintet (who came to camp together as a group) played Bohemian Rhapsody 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.

Arvo Pärt’s Spiegel in Spiegel by faculty cellist Marina Hasselberg and percussion pro Greg Samek, the latter on vibraphone. Exquisite, the notes suspended in space like rays of light.

Krunk, an Armenian folk song full of tragedy, on solo flute. Impossible to keep your eyes dry.

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.

Pride of Petravore is a hornpipe, the song that the awesome Amy Stephen 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.

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 thought 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.

I really hope I get a chance to learn from Amy again, one way or another.

D.I.D. Choi is a young Canadian composer who, in his twenties, is off in LA, working on music for films and games and so on. His Remembrance, 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.

I already mentioned the Cowboy Junkies’ Cold Tea Blues 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.

Big band!

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.

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?

Anyhow…

Earlier today I bought the rental bodhrán, it’s a basic model and was pretty cheap. I think it’s full of happiness.

Sports and Truth 10 Jul 2026, 2:00 pm

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.

“Haha, sportsball…

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.

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.

More to come on that.

On hating FIFA

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.

I have always loved fútbol generally and the World Cup in particular, as witness the plentiful digital ink 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.

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. Here — the first and I fervently hope the last time I link to an NFT — 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.

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.

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.

The match

It was Egypt vs New Zealand, played at Vancouver’s “BC Place” stadium on June 21st.

Preparation for Egypt vs New Zealand at the 2026 World Cup

The march-in ceremonies.

New Zealand kicks off vs Egypt at the 2026 World Cup

New Zealand kicks off.

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.

The game was great fun — watch the highlights. NZ played better than their international rating would suggest and we got to watch Mo Salah carve his way into the defense and put away a lethal strike.

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 Seven Nation Army riff, and does it ever sound great.

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.

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.

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.

World Cup without FIFA?

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.

I can dream.

The game

(One says “football match” and “baseball game”. Sounds wrong the other way around. Yay English.)

It was my son’s birthday so nine of us went off to watch the Vancouver Canadians host the Eugene Emeralds in what’s called the “High-A” minor league. Oh my goodness, you can actually watch video of the whole game. I don’t recommend it. The tickets for nine, decent seats, cost $276 all in.

Vancouver Canadians vs Eugene Emeralds, July 1, 2026

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.

But, what a happy place! Kids everywhere, dressed in hot-dog condiments and pop stains. Snuggling couples. Beer vendors. Hollering hosers.

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.

This happened: My son’s partner, let’s call them “X”, is of East-Asian extraction — 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 Take me out to the ball game, 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.”

After the game, fireworks. They were pretty minor-league.

So MLB is OK?

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.

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 an explicit grant of monopoly privileges in the USA.

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.

There’s what looks like a really good book about all this, Homestand: Small Town Baseball and the Fight for the Soul of America by Will Bardenwerper. I haven’t read it yet, but you can get the gist in this conversation between Bardenwerper and Chris Arnade.

The problem is…

…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.

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?

The truth is on the field

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”.

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.

It’s unpackaged, unvarnished, and unedited. It’s physical truth, being created in real time.

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.

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.

In the meantime, 🎵Take me out to the ball game…🎵

Mastodon, The Only Good Choice 5 Jul 2026, 2:00 pm

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.

By “Mastodon” I mean the many servers, mostly (but not all) running the Mastodon software, that communicate using the ActivityPub protocol. Now I’ll try to convince you to start using one of them.

[I posted an earlier version of this essay called Time To Migrate last year, but enough things have changed that it’s worthwhile revising and reposting.]

join-mastodon.org

Start at joinmastodon.org

The simplest argument

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.

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.

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 give it a try.

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, go get an account, and climb on board.

Why now?

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.

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.

Migration

Mastodon is many thousands of servers, and you can join the biggest, mastodon.social, or shop around for another. 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 take your followers with you! You can’t ever get locked in.

Choosing a Mastodon server

The server-selection menu has lots of options.

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.

Interaction

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.”

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.

Dunno about you, but conversation and interaction seem like a big deal to me. One reason things are lively is…

Sex

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.

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.

(Oh, typing that in reminds me that you can subscribe to hashtags on Mastodon: Let’s see, I currently subscribe to, among others, #Vancouver, #Murderbot, and #Fujifilm.)

The Ivory For Mastodon app for Apple platforms

The “Ivory for Mastodon” app for Apple platforms,
one of the many fine alternative clients.

Moderation and defederation

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.

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.

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.

(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.)

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 don’t rein you in. Eventually, word will get around, and if things aren’t cleaned up, most servers will defederate yours, so that nobody 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.

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 anywhere in the world that a loud-voiced Black woman won’t provoke a chud eruption? [sigh]

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.

Links are good

Corporate social-media services like to downrank posts with links. 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.

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.

Search

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.

Great clients

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.

A post from Brian Krebs in the Tusky app

Anniversary post in the Android “Tusky” app.

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 Ivory, Androiders should look at Tusky, and everyone should try Phanpy. I live in Phanpy on both my Mac and my Pixel — it’s a Web thing but installable as a PWA.

Commercial products, especially social-media services, have never 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 must control the user experience. This ignores the ancient wisdom (I first heard it from Bill Joy) “Wherever you work, most of the smart people are somewhere else.”

Mastodon doesn’t have that kind of product manager, but it does have a fully-capable API, developed in the open and with no hidden or restricted features. Which means you’re going to get better clients.

Algorithms

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.

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.

Trending screen in PhanPy

The “Trending” display in Phanpy.

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.

Money

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.

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.

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.

Last year I wrote: “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”.

But Bluesky!

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 Bluesky Social PBC fell on bad times. Yes, I know about BlackSky (am a fan) and Eurosky (dunno enough yet) and they don’t change my opinion.

Second, I think it’s inevitable that Bluesky-the-company will indeed go sour. They have raised a total of $123M in venture-capital investments. The biggest chunk, $100M from Bain 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.

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?

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.

Mastodon’s the only option

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?

(Disclosure: I have no formal connections with the Mastodon organization, aside from being a low-level supporter on Patreon.)

Automata, Built For Comfort or Speed 14 Jun 2026, 2:00 pm

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!

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.

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 Filename field has to match map-[0-9]+.(png|pdf|jpe?g). Regular expressions were a lot of work and a lot of fun.

Finite-automaton wrangling

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.

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.

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:

  1. To implement wildcards and regular expressions, you need NFAs.

  2. Matching data with DFAs is generally a whole lot faster than with NFAs.

  3. 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.

  4. In some cases, the algorithm can be brutally expensive, along the lines of O(2N).

The benchmark from Hell

I found a data file in the Wordle source code with 13K or so 5-letter words. I inserted a * at a random location in each. To illustrate, here are the first five results: aah*ed, aalii*, *aargh, aar*ti, and abaca*.

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.

Willie Dixon

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).

Willie Dixon

He was a famous bluesman and I need help from him to explain my APIs.

Quamina’s latest PR adds APIs to turn the NFA-to-DFA conversion on and off; it’s off by default. There are two MatcherBuildMode values, BuiltForComfort and BuiltForSpeed. Which are out-takes from Willie’s 1959 song Built For Comfort, and the lyrics go like this:

Some people built like this, some people built like that,
The way I’m built, don’t you call me fat
Cause I’m built for comfort, I ain’t built for speed
…

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.

Speaking of which… here is Quamina’s memory consumption in NFA mode.

Memory cost of many merged NFAs

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.

Here’s the story for DFAs.

Memory cost of many merged DFAs

I haven’t run regressions or anything and I don’t think that’s actually O(2N), but the second derivative is solidly positive, which in simple English means “doesn’t scale”.

Now let’s look at the Pattern-addition time for NFAs and then DFAs.

Time cost of merging many NFAs Time cost of merging many DFAs

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.

Now let’s look at the payoff, the number of Event matches/second in NFA- and DFA-land.

Matching speed of many merged NFAs Matching speed of many merged DFAs

The NFA performance degrades at something like O(N-1), 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.

Not just pictures but numbers too

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.)

300 Patterns
MemoryAdd-Pattern timeMatches/sec
NFAs860K0.1 ms222K
DFAs45M7.7 sec404K
10K Patterns
NFAs27M2.3 ms21K

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!

Practical advice for Quamina users

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.

In theory you’d eventually get into memory trouble but in my considerable experience with Quamina and its AWS-built predecessor Event Ruler, 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.)

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.

What next?

There’s one minor Quamina feature that’s disabled in BuiltForSpeed mode, so I’ll need to fix that and do a release.

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.

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.

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?

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.

And thanks to everyone who’s been reading along.

Long Links (AI) 8 Jun 2026, 2:00 pm

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.

Let’s start with raw data: Is AI improving people’s lives? Christine Lemmer-Webber was kind enough to ask the world or at least the Mastodon part of it, and the results weren’t subtle or nuanced at all.

“genAI has made my life” poll by Christine Lemmer-Webber

I encourage everyone to follow the link and read the conversation that broke out around that poll. It will not cheer you up.

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.

Where I stand

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.

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.

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.

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.

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).

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.

Critiques

Bram Cohen says The Cult Of Vibe Coding Is Insane. Yup. Kyle Kingsbury writes a long sad series: The Future of Everything is Lies, I Guess. He seems to come out about where I do: Not going there for now.

Dr Bethan Tovey-Walsh offers us The Community is the Achievement; the Achievement is the Community, subtitled An ethical love-letter to distributed technology communities. 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.

Wow, here’s one that hits hard, academic output from big-name universities: AI Assistance Reduces Persistence and Hurts Independent Performance. What’s shocking is that it doesn’t take that much AI exposure before the symptoms start appearing.

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 Artificial Confidence: xAI, the Neocloud. 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.

I know Appearing Productive in The Workplace 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.

Bug finding

From the Linux-kernel world, there’s AI bug reports went from junk to legit overnight, says Linux kernel czar and Significant raise of reports, which says about the same thing with a couple of plausible and important conclusions. There was a report about Linus Torvalds criticizing the inflow, (see here) 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.

Anyhow, looks like GenAI can be put to good use finding vulnerabilities.

War stories and advice

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.

Lalit Maganti’s Eight years of wanting, three months of building with AI 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.

The redoubtable and loud-voiced Daniel Stenberg of Curl fame offers us A Human In Control, which says about what the title does, with feeling.

Nelson Minar posted First impressions of Jules, Google’s coding agent; this will probably be interesting to those living in the Claude or Copilot territory.

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.

He relies heavily on GenAI and describes his findings in The Drucker Inversion. It’s deep, thoughtful stuff.

Joe Magerramov’s The Valley of Calm 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.

Hey, two AWS people in a row: Brooke Jamieson is a Developer Advocate, what I used to be at Google. Make Your Coding Agent Opinionated begins “I’ve been using coding agents daily for over a year across Kiro, Claude Code, Cursor, and Codex.” Here are her lessons.

That’s all folks

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.

I’m pretty sure it will.

Long Links (AI-free) 5 Jun 2026, 2:00 pm

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.

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 Long Links (AI), which you can drop by (or not) as you please.

Books

One of the weirdest and flawed but still good things I’ve read this year is The Luminaries, 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 Deconstructing The Luminaries, an explainer.

Other recent books: Platform Decay, minor Murderbot, but still worth reading. The Incandescent 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: The Everlasting by Alix Harrow, which started slow but eventually got a real grip on me; recommended.

I was in the library today and I always cruise past the “featured” table, where I saw Nobody’s Girl by Epstein victim Virginia Giuffre (R.I.P.) and Empire of AI, Karen Hao’s huge takedown of OpenAI and Altman. But I just now do not have the spoons. Maybe later.

Hmm, they tell me men can write books too. Must look into some.

Political economy

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?

Anyhow, if you want to hear what these people are saying the place to go is Jacobin. I’m not a regular visitor but when I do drop by I’m starting to hear the phrase “market socialism”. Thus How Socialism in the 21st Century Could Work. 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.

Speaking of the pathologies of late-stage capitalsm, Paul Krugman’s Bezos, Backlash and Zombies 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.

People like reading books on screens and most public libraries now support that. I believe a high proportion of such loans go through Libby, 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, Library Orgs Urge Big Five to Address Digital Pricing. Paper books are looking better and better.

It turns out that America’s capital is a good experimental platform for crime research. Check out Washington, D.C.’s crime decline and its lessons for American policing 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?

Funnies

Staying in the political lanes, here’s an evening briefing from Talking Points Memo, 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.

… 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.

There’s more than one way to read that… I’m suddenly starting to see the advantages of printing that bill.

Then, a little further down, it turns out JD Vance gave a speech at the Air Force Academy, from which:

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…

Yeah well Bob wrote a whole song about Masters Of War and got the trade-offs about right. JD’s cluelessness is mountainous.

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 not 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.

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 Cricket Canada surprised after “unexpected” suspension by governing body over breaches of membership.

Photography

I visit Petapixel 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 The photographer who never stopped chasing the perfect shot (and, on the evidence, got plenty). Next, Jeff Austin has been shooting the same parts of Tokyo through vintage glass for decades; he contributed Twenty Years, One City: What Tokyo Taught Me About Patience and Glass and has a Web site, Tokyo Forgeries.

Not just metal and glass; here’s an interesting camera bag: The Pilot 88 Is a Limited Edition Wotancraft Messenger Designed by Chris Niccolls. Finally, the story of Edith Tudor-Hart, in The Hidden History of a British Female Photographer Turned Soviet Agent.

Disturbing Evidence

Now, I said I liked Petapixel, and I do. But there’s a dark side; one can’t help notice the many many 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? Wedding Photographer Seriously Injured After Being Stabbed by Guest. I mean, it goes on and on: Photographer Bitten by “Shark or Sea Lion” During Surf Competition and Woman Pleads Guilty to Manslaughter After Gun-Themed Polaroid Photo Shoot Ends with Photographer’s Death! Mommas, don’t let your babies grow up to be photogs.

Personalities & misc

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.

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.

Cover of Don’t Be Evil by claire Stapleton

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 game over - some thoughts on layoffs and life. 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 wrote a book which I have to say looks pretty promising.

JA Westenberg’s On wintering 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.

At least once a year I point excitedly at something by Paul Ford; this time it’s Canons. Beautiful stuff.

Product pitch

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 Abangdun 1700W 100V~185V Induction Cooktop Concave Curved Surface 2026 New Electric Stove Wok. It’s great; I stir-fry a couple times a month and get good reviews. Its built-in fan is kinda noisy.

Music

Recently I ran across The Sleeveens, 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 National Anthem is just one banger after another. My favorites are If I Was A Casual and Cowboy Queen and then there’s the title track, which begins “Burn your fuckin’ country to the ground in the name of love…” oh yeah.

The Sleeveens

Now let’s lean into a fertile field of musicological scholarship: Guitar solos! Rolling Stone let their dimbulb flag fly with The 100 Greatest Guitar Solos Of All Time, which unforgivably omits Ry Cooder on Amandrai, Susan Tedeschi on Pity the Fool, David Lindley on Do Ya Wanna Dance, Neil Young on Love To Burn, Megan Lovell on Preachin’ Blues, also [Tim, enough -Ed.].

But wait, there’s more. Not to be outdone, Consequence (of which I know nothing) came up with 70 Best Guitar Riffs of the 21st Century (So Far), which is full of smiles. I have to confess that I’d heard less than 10% of these.

But anyhow Japanese metallistas Boris, about whom I’ve blogged not once, not twice, but thrice, are on both lists! #61 on the solos, #7 on the riffs. Which they noticed, and took a bow. Here’s Akuma no Uta and also a pretty hot live capture.

Finally, if you like Arvo Pärt and art that strains at the edges (what other kind is worth liking?) check out Robert Wilson’s “Adam’s Passion” (Music of Arvo Pärt). An hour and a half of fine music, well-played, and live human movement following Pärt’s slow pulse. Nakedness is involved.

Perfomers in Robert Wilson’s “Adam’s Passion”

Tech

I gather that Marcin Wichary is name to conjure with in design circles; he’s recently launched Unsung, my blog about software craft and quality 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 1 and 2. You’ll learn a lot about how to think about UI construction by reading this.

Armin Ronacher, to whom it seems I’ve been linking a lot recently, offers Before GitHub, 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.

Finally, have a look at The Age of the Amplifier 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 20th 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.

That’s all folks

Well except for the companion aggregation of Long AI-related Links.

Until next time.

Page processed in 0.593 seconds.

Powered by SimplePie 1.3.1, Build 20131001021811. Run the SimplePie Compatibility Test. SimplePie is © 2004–2026, Ryan Parman and Geoffrey Sneddon, and licensed under the BSD License.