Sample post.

Checking to see if RSS works.

Published
Categorized as General

This is a test

This is a test to see if the database server issue that froze this blog is resolved.

Published
Categorized as General

Last phase of the desktop wars?

The two most intriguing developments in the recent evolution of the Microsoft Windows operating system are Windows System for Linux (WSL) and the porting of their Microsoft Edge browser to Ubuntu. For those of you not keeping up, WSL allows unmodified Linux binaries to run under Windows 10. No emulation, no shim layer, they just… Continue reading Last phase of the desktop wars?

Published
Categorized as Software

My SubscribeStar account is live

I’ve finally gotten validated by SubscribeStar, which means I can get payouts through it, which means those of you who want nothing to do with Patreon can contribute through it: https://www.subscribestar.com/esr If you’re not contributing, and you’re a regular here, please chip in. While I’ve had some research grants in the past, right now nobody… Continue reading My SubscribeStar account is live

Published
Categorized as General

Kyle Rittenhouse and the militia obligation

There’s an angle on the case of Kyle Rittenhouse that I haven’t seen even hinted at in the media. Section 246 of US Code Title 10, entitled, “Militia: composition and classes” reads: “(a) The militia of the United States consists of all able-bodied males at least 17 years of age and, except as provided in… Continue reading Kyle Rittenhouse and the militia obligation

Documentation as knowledge capture

Maybe you’re one of the tiny minority of programmers that, like me, already enjoys writing documentation and works hard at doing it right. If so,the rest of this essay is not for you and you can skip it. Otherwise, you might want to re-read (or at least re-skim) Ground-Truth Documents before continuing. Because ground-truth documents… Continue reading Documentation as knowledge capture

How not to treat a customer

First, my complaint to Simply NUC about the recent comedy of errors around my attempt to order a replacement fan for Cathy’s NUC. Sorry, I was not able to beat WordPress’s new editor into displaying URLs literally, and I have no idea why the last one turns into a Kindle link. ——————————————————- Subject: An unfortunate… Continue reading How not to treat a customer

Published
Categorized as General

Some PSAs for NUC owners

I’ve written before, in Contemplating the Cute Brick, that I’m a big fan of Intel’s NUC line of small-form-factor computers. Over the last week I’ve been having some unpleasant learning experiences around them. I’m still a fan, but I’m shipping this post where the search engines can see it in support of future NUC owners… Continue reading Some PSAs for NUC owners

A user story about user stories

The way I learned to use the term “user story”, back in the late 1990s at the beginnings of what is now called “agile programming”, was to describe a kind of roleplaying exercise in which you imagine a person and the person’s use case as a way of getting an outside perspective on the design,… Continue reading A user story about user stories

Yeet not, unless ye be yoten upon

This is an answer I posted to Stack Overflow: Linguistics that was so much fun to write that I feel like sharing it with my blog audience. The question is: What is the past tense of ‘yeet’? I have a field sighting of the form “yoten” to report. In January I was involved with the… Continue reading Yeet not, unless ye be yoten upon

Published
Categorized as Firearms

Rules for rioters

I had business outside today. I needed to go in towards Philly, closer to the riots, to get a new PSU put into the Great Beast. I went armed; I’ve been carrying at all times awake since Philadelphia started to burn and there were occasional reports of looters heading into the suburbs in other cities.… Continue reading Rules for rioters

Published
Categorized as General

Looking for C-to-anything transpilers

I’m looking for languages that have three properties: (1) Must have weak memory safety. The language is permitted to crash on an out -of-bounds array reference or null pointer, but may not corrupt or overwrite memory as a result. (2) Must have a transpiler from C that produces human-readable, maintainable code that preserves (non-perverse) comments.… Continue reading Looking for C-to-anything transpilers

Published
Categorized as Software

Designing tasteful CLIs: a case study

Yesterday evening my apprentice, Ian Bruene, tossed a design question at me. Ian is working on a utility he calls “igor” intended to script interactions with GitLab, a major public forge site. Like many such sites, it has a sort of remote-procedure-call interface that allows you, as an alternative to clicky-dancing on the visible Web… Continue reading Designing tasteful CLIs: a case study

Published
Categorized as General

Two graceful finishes

I’m having a rather odd feeling. Reposurgeon. It’s…done; it’s a finished tool, fully fit for its intended purposes. After nine years of work and thinking, there’s nothing serious left on the to-do list. Nothing to do until someone files a bug or something in its environment changes, like someone writing an exporter/importer pair it doesn’t… Continue reading Two graceful finishes

Term of the day: builder gloves

Another in my continuing series of attempts to coin, or popularize, terms that software engineers don’t know they need yet. This one comes from my apprentice, Ian Bruene. “Builder gloves” is the special knowledge possessed by the builder of a tool which allows the builder to use it without getting fingers burned. Software that requires… Continue reading Term of the day: builder gloves

Published
Categorized as General

This is your final warning

Earlier today, armed demonstrators stormed the Michigan State House protesting the state’s stay-at-home order. I’m not going to delve in to the specific politics around the stay-at-home order, or whether I think it’s a good idea or a bad one, because there is a more important point to be made here. Actually, two important points.

Published
Categorized as General

The feel for weapons

I read Scientists Have Recreated Ancient Battles to Solve Debate Over Ancient Bronze Swords and was annoyed. Not because the study wasn’t worth doing for its own sake – I applaud archeologists with the good sense to use historical reenactors to learn more about how combat in bygone times must have worked. But it seems… Continue reading The feel for weapons

Lassie errors

I didn’t invent this term, but boosting the signal gives me a good excuse for a rant against its referent. Lassie was a fictional dog. In all her literary, film, and TV adaptations the most recurring plot device was some character getting in trouble (in the print original, two brothers lost in a snowstorm; in… Continue reading Lassie errors

Payload, singleton, and stride lengths

Once again I’m inventing terms for useful distinctions that programmers need to make and sometimes get confused about because they lack precise language. The motivation today is some issues that came up while I was trying to refactor some data representations to reduce reposurgeon’s working set. I realized that there are no fewer than three… Continue reading Payload, singleton, and stride lengths

Insights need you to keep your nerve

This is a story I’ve occasionally told various friends when one of the subjects it touches comes up. I told it again last night, and it occurred to me that I ought to put in the blog. It’s about how, if you want to have productive insights, you need a certain kind of nerve or… Continue reading Insights need you to keep your nerve

Published
Categorized as General