Press "Enter" to skip to content

Author: Bryant

John Sandford, Politics, and Extremism

John Sandford has always been both an author I enjoy and one who fascinates me from the political perspective. His writing is aware of politics, and often revolves around politics, but few of his protagonists have any interest in discussing their political views beyond the immediate. Perhaps this reflects the author. Who knows?

Lucas Davenport shoots and kills people, a lot. He’s a cop. There’s also a strong thread of police corruption in those books. Nobody is a hero just because they wear a badge.

Here’s the blurb for The Empress File, from the Kidd books:

One stifling summer night in Longstreet, Mississippi, fourteen-year-old Darrell Clark ran home thinking about two things: the ice cream he couldn’t wait to eat and an algorithm he was working on, a way to generate real time fractal terrain on his Macintosh computer. The cops who shot him in the back, mistaking him for a purse snatcher, found the ice cream in the paper bag on the ground next to Darrell. They’d never know anything about computers, or about the events they had just set in motion.

When the predictable cover-up occurs, a group of blacks, led by Marvel Atkins, decide the time for action has come. The city government must go. Through Darrell’s computer, Marvel, with the incredible liquid eyes, links up with Kidd, who takes on jobs that may be a little beyond the law. She lays out the objective, but he makes the plan. The mayor, city council, city attorney are all corrupt. The firehouse is the center for drug dealing, and the recreation director skims money like algae from the municipal swimming pool. And then there’s Duane Hill, the dogcatcher/enforcer who uses Dobermans to get his way. Kidd will simply find the crack in the machine and work it until the city comes down like a house of Tarot Cards.

Written in 1991. I haven’t reread it in a while so I’m not making any claims about anything other than to say that Sandford is keenly aware of the state of the world.

So: The Investigator. I read most of Sandford’s books eventually, once they hit paperback or from the library, and I added this one to my queue without knowing much about it. To my surprise, the antagonist group turned out to be an anti-immigrant militia. I could nitpick the depiction; for example, there’s a little bit more weight given to the economic anxiety theory than I’d have liked. On the other hand, Sandford did his research. He treats the militias as a real threat, he understands the distributed nature of the beast, and most interestingly he understands the military to extremism pipeline. I don’t know if he’s read Kathleen Bellow’s Bring the War Home, but he might have.

There are a couple of threads in there that lead me to think we’ll see some of those militia members again in this series. Even if we don’t, I have to be pleased that a book with this plot hit #1 on the NYT bestseller list.

Penstock Coffee Roasters: Sisola Mill, Indonesia

We signed up with Bottomless recently (referral link) because we wanted to get more forced variety in our coffee and because I’m a sucker for tech. I want to make sure I remember what we like so I’m going to try and get in the habit of dropping a quick review.

The first delivery was Penstock Coffee Roaster’s Sisola Mill from Indonesia. The base flavor is a really complex flavor, fairly sweet for coffee, and there’s a sour overtone that’s almost too much for my tastes. I also normally like a darker base. I enjoyed this nonetheless. I might not seek it out on purpose but I won’t be sad if it comes up in our rotation again.

Jupyter Notebooks, GitHub, & Secrets

This week I needed to do some analysis of JIRA tickets that goes beyond the reporting JIRA provides — not entirely an uncommon task. My usual quickie toolkit for that purpose involves Jupyter notebooks, which I prefer over downloading CSVs and playing with spreadsheets because I can automate the notebooks given a JIRA API key.

In this case, though, I really want one of my PMs to be able to run these reports, and I don’t want to get into the whole “OK then type this at the command line” thing. The post title kind of gives this away, but after some thought I realized, hey, just check the notebook into the company’s GitHub and there we go.

But how about that API key? Obviously I don’t want to embed mine in the notebook. Is there some way to use GitHub secrets for this? Answer: yes, there is, and it’s really simple, but I don’t see it documented step by step anywhere else so I’m gonna do that here.

If you want the quick answer: GitHub makes secrets available as environment variables, and if you’re working in the GitHub Jupyter environment, you don’t need to do anything special with workflows to make that happen. Therefore, you can just use Python’s os.environ mapping object to get at secrets.

Letterboxd Feed Update

I love copying my Letterboxd reviews over here, but I hate how much they dominate my feed. This week I started rewriting my script so that it’ll batch reviews up a week at a time. Gonna take a little more thought about formatting and such, but I’ve got the basic aggregation working and the output looks like this:

Year: 2022
    Week: 9
        Polytechnique, 2009 - ★★★★★ (contains spoilers)
    Week: 10
        Forbidden City, U.S.A., 1989 - ★★★½
        The Last Days of Disco, 1998 - ★★½
        A Bay of Blood, 1971 - ★★★

So that’s cool. This’ll also let me comfortably grab the whole backlog from Letterboxd via their export feature, which I didn’t want to do because a lot of my older reviews (from, say, Fantasia) are one-liners.

AEW Hard Eight

I was chatting the other day about how I’d book an AEW round-robin tournament and I thought I’d expand on the subject somewhat here.

Background: most US pro wrestling tournaments are single elimination. There’s a bracket, and if you lose you’re out. In contrast, the big Japanese promotions tend to run round robin tournaments, where you earn points for wins, and the wrestlers with the most points face off in the finals.

Round robin tournaments chew up way more time. Typically, while something like NJPW’s G1 is going on, the majority of each show is dedicated to tournament matches. This would be hard for an American promotion.

The G1 has 20 wrestlers in two blocks. In each block, each wrestler fights every other wrestler in the block, so everyone has nine matches. That means you’re running 18 shows with four tournament matches apiece on them, and there’s no way AEW could devote over two months of TV time to something like that.

But the value of a round robin tournament is that you can book a lot of matches that might be awkward otherwise — faction members against each other, and so on. You can also do a few stunning upsets because nobody can be expected to win all their matches. So how would you make it work in the US?

I think you cut it down to eight wrestlers in two blocks of four. Now each wrestler only has three matches. Each week, you put two tournament matches on Dynamite and one on Rampage. One match is always the main event each night to maintain significance. Each block gets Dynamite one week and Rampage the second week, so over the course of the two week cycle each block completes one set of matches.

That means the whole tournament except the finals takes six weeks to run and only occupies a third of the available TV time. That’s not bad at all, even after you double it to fit in the women’s tournament.

Okay, how do you book it?

You run this at the end of the year. AEW resets win-loss records at the end of the year for the purpose of rankings. The first consequence of the tournament is that the wrestlers are seeded in the new year’s rankings based on their records. Come in third, and you’re third in the top five. Second, and more important, you give the winner the traditional shot at any title they want. Include tag team titles in that.

Finally, you determine the entrants by a mixture of skill and luck. First off, the top four wrestlers in the rankings as of the start of the tournament get in. That ensures you have stars. Second, you “randomly” pick four other wrestlers to fill out the field. That means you can give a newcomer a boost, you can set up inter-faction matches, all that good stuff.

And to maintain the gambling theme, you call it Hard Eight. You also get a bonus gambling note by using a roulette wheel or something to do the random selection.

A Lot Went Wrong: 2016 Edition

It is not very useful to argue this shit on Twitter but that’s what blogs are for, right?

Anyone who says that Clinton lost because of Russia is wrong. Anyone who says that Clinton lost because she ran a bad campaign is wrong. Anyone who says that Clinton lost because of Bernie is wrong. You’re all wrong. A lot of things happened and I don’t think any of them shift the tide on their own.

Here’s stuff that happened in no particular order of importance!

Letterboxd Movie Reviews, Part 2

My code is basically working, including spoiler protection and some other fun stuff. It’s more complex than it needs to be since I’m also saving entries to a database, plus it includes a lot of Letterboxd specific processing. Oh, and I’m using basic auth because I’m lazy. Possibly I’ll clean it up and release it soon; I’d just want to make it more of a generic RSS feed to WordPress engine.

Letterboxd Movie Reviews

I’m experimenting with posting my Letterboxd reviews here, since eventually you have to learn your lesson about hosting your own content. We’ll see how it goes. I’d prefer to filter out the ratings without reviews.

Slow Horses, Episode 5

Saskia Reeves is awfully good in Slow Horses. As with more or less everything in both the original novels and the TV show, it’s a slow reveal. They show us the failures that the Slough House denizens have become, and you have to be patient to see the talents — however rusty — that balance out the failings.

So up front, Catherine Standish is an aging grey haired alcoholic. I’ve just finished episode 5 of the first season, which is where she lifts her head and sees a chance and takes it. The really good bit is when Reeves makes it clear that her character is incredibly pleased to have gotten this one right, with the slightest shy smile.

I won’t spoil the books but I did say that the talents “balance out” the failings, didn’t I? Not “overcome.” Such a good series. I’ve read them and can promise that reading them won’t mar your enjoyment of the TV show.

Episode 5 shows that transition for a few characters, actually, protagonists and antagonists alike. People get serious. It’s a nice inflection point before the season finale, in which much of that seriousness will be at cross purposes.

Jury Duty

I completed my superior court jury duty a little while ago, and enough time has passed so that I can write up some coherent thoughts on the experience. This is as much for myself to help me process as anything, but I do have some helpful tips if you ever find yourself serving on a jury.

Mundane details: jury selection was over Zoom, while the trial itself was conducted in person. It was a homicide case, although we had scope to consider manslaughter as well. The whole thing lasted almost exactly four weeks, including a little more than a week of deliberation. We were unable to reach a verdict; the judge and the lawyers were very clear that we shouldn’t consider that a failure on our parts. There will be a new trial.

I’m not talking about details in public for various reasons, but feel free to ask in private if we know each other.