Jason Becker
May 3, 2025

The Citadel. šŸ“

My youngest brother in law just graduated college! Elsa looks pretty good in his hat.

May 2, 2025

It turns out, one of the best burgers in Baltimore can be found at Camden Yards.

A smashburger with crackly edges and a box of seasoned french fries.

The AVAM in Baltimore is such a weird, precious treasure.

On four wheels with a chair and bicycle pedals an chains, a large, fluffy, pink dog made out of something that looks like shower loofahs.

April 7, 2025

It is absolutely insane to me that there’s no way to click and add this to my calendar. Who makes apps like this? It’s been this way for years.

April 5, 2025

Pretty much where I spend my free days.

Picture of a dark rehearsal space with a tilted Dr Z amp, guitar stand with five guitars, and a stool in front of a small desk with a recording interface, power amp, laptop, cables, and microphones.

March 10, 2025
March 3, 2025

I’m pretty pleased with myself for thinking, ā€œa free standing coat rack would be great for organizing cables at our practice spaceā€¦ā€

A black coat stand with red, yellow, blue, and black XLR and instrument cables coiled and hung from various hooks. There’s also a mic stand rubber pick holder attached to the center stalk.

March 1, 2025

I added photos to my list of posts “This Month” at the bottom of each page. I’ve really enjoyed my updated design and the emphasis on long posts. But pretty quickly I had the thought that photo posts deserve the same kind of emphasis. A nice consequence of using the same partial for my Archive page and the “This Month” section of the homepage is photos now show up in my archive list as well.

I took a screenshot of February, since as soon as I make this post the change will no longer be apparently, at least until I post a photo this month.

The final day of February is actually a great indication of how I want the site to work– it was a day of short posts, some of which make more sense read sequentially as I had those thoughts. The full day fits without scrolling and is clear. At the same time, you can see the “anchor” posts in February– those times I had more to say or posted some photos that may still be interesting a few days or weeks later.

I think this redesign has been a success.

Some additional technical notes about this change

I used an emoji to indicate that there’s a photo, but I may switch to using an SVG or similar in the future. We’ll see how it grows on me. I think the fact that emoji styles change on different platforms makes them a bad choice, and I’m not sure the look goes with the fixed-width font I use everywhere.

Photo posts have text along with them– but often not titles– so I chose to render:

1
šŸ“ø:  {{ .Summary | truncate 280 }}

The thought is I don’t want long content, so limit them to the canonical “tweet” length. I may adjust that over time.

I also have precedence– if the photo post has a title, it does not have the emoji right now and just the title shows up. I might change that, I’m not sure. It’d be fairly easy to show the title and photo, but I think this is kind of rare and this new design fits better the expectations of photo posts that are syndicated elsewhere– picture plus short comment, not title + photo + comment. Plus, posts that happen to have photos but are titled are more likely to be true “macro” posts anyway.

My category for pictures is photoblogging, and it’s set using a Micro.blog category filter for any post containing jpeg or jpg. So screenshots, like the png in this post, are not included.

February 22, 2025

This was meant to be a meal for 2. I think we’ll be eating it for three days.

February 20, 2025

The beast was sleeping soundly until I stood up. Then she rolled on her side, and began whipping her tail around expectantly.

Brandy, a small terrier mix lying on her side on a terracotta-colored bed on a blue carpet.

February 8, 2025

Randomly remembering that I had a huge wall covered in wallpaper depicting Earthrise (kind of, it was actually a composite of Blue Marble and Earthrise) in my childhood bedroom and it was awesome.

January 31, 2025

She woke us up an hour before the alarm because she wanted scratches. Then she did this.

January 12, 2025

Auto-generated description: A band is performing on stage with a keyboard player, a guitarist and vocalist, and a bassist. Auto-generated description: Three musicians are performing on stage with a keyboard, guitar, and bass guitar. Auto-generated description: A band performs on stage with a guitarist, drummer, and keyboard player under blue stage lighting. Auto-generated description: A band performs on stage with a guitarist, drummer, and keyboard player under blue stage lighting. Auto-generated description: A band performs on stage with a guitarist, drummer, and keyboard player under blue stage lighting.

I can’t believe how far some of my friends came to watch our first show, which was meant to be a low stakes thing away from home. It was a blast to be on stage again after almost 20 years. I should have asked to have vocals and keys in the monitor up front, but oh well. Also, my old Dunlop pedal tuner is a piece of shit that was tracking terrible so I was not able to correct some tuning issues probably only I noticed.

Very successful first run out.

December 29, 2024

I have not sufficiently expressed my hatred for whoever did this.

Several books are neatly arranged on a shelf, with noticeable titles including works by Naomi Novik— the first two books have matching gold book covers while the final book is black.

This mess is what 573 books (plus 5 I couldn’t find and about 30 high quality magazines and 20 or so academic journals) look like. More to go.

A cozy room features a large white bookshelf filled with books, a beige sectional sofa, a small ladder, and a wall map.

This is what 61 cookbooks looks like (along with other things).

A wooden bookshelf/bar displays a collection of books, glassware, and various alcoholic beverages.

December 27, 2024
December 21, 2024

The main issue I’ve run into was the following:

.Site.Author was deprecated in Hugo v0.124.0 and will be removed in Hugo 0.141.0. Implement taxonomy 'author' or use .Site.Params.Author instead.

This is a relatively easy fix– include your .Site.author data in config.json under Params like so:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
  "params": {
      "author": {
      "name": "Jason Becker",
      "avatar": "https://micro.blog/jsonbecker/avatar.jpg",
      "username": "jsonbecker",
      "activitypub": {
        "username": "[ACTIVITYPUB_USERNAME]",
        "url": "[ACTIVITYPUB_ACTOR]"
      }
    }
  }
}

Unfortunately, lots of places across Micro.blog templates reference .Site.Author, most especially RSS and JSON feeds.

So in addition to changing references to .Site.author in your own theme (most likely in head.html partials), you’ll have to bring in custom versions of RSS, JSON, and podcast feeds to have a successful site build.

Micro.blog isn’t ready for Hugo 0.140.0 quite yet, but it’s possible to get up and running if you have a custom theme and know how to maintain it. Unfortunately, Hugo doesn’t use semver or anything like it. They also don’t offer stepwise upgrade guides so that you can say, select your current version and the version you want to upgrade to and easily get the steps necessary to keep things working.

There are some nice features that have been added since the last upgrade of Hugo on Micro.blog, but I have to say, the surface of breaking changes that Hugo makes and its impact on themes and plug-ins really feels like a liability. If Hugo followed semver, it’d be a lot easier to maintain versions of themes and plug-ins verified to work at certain markers and maintain older versions as well. As it stands, the upgrade path is kind of rough, and places a lot of burden on a small number of folks.

I’m thinking about if there’s a way that we can incorporate something like the exampleSite process for Hugo as well as some key steps in the Micro.blog process (namely the coalescing of templates and configuration) into a GitHub Actions build step. What I’m imagining is that each theme can have a GitHub Action that builds the exampleSite by coalescing the theme-blank templates and configuration, using reasonable environment variables for some default values that are set on Micro.blog, and then builds against multiple versions of Hugo, generating a check artifact for compatibility. It’s possible even to maintain a release branch for each version of Hugo that is supported by Micro.blog that tests against that version and ensures compatibility.

This way, themes can be updated one version of Hugo at a time, even when Micro.blog doesn’t necessarily support it. Community members can easily generate pull requests that update a theme to a working build on a new version, and maybe the burden can be spread a bit.

With a system like that setup, for example, I suspect it would take me under an hour to get most themes working. Occasionally there’d be a problem that needs a Manton-level fix, but that’d be easy to find. I suspect almost all problems could be solved without Micro.blog official participation provided that theme-blank is used for the coalesce and has a working release that matches the Hugo version. In other words, fixing theme-blank for a version and using that release branch should cover all or nearly all of the Micro.blog-system-level support necessary to fix the downstream themes.

For example, all of the RSS and JSON feed fixes are not needed if theme-blank is updated to use .Site.params.author – except doing so now would break every theme on older versions of Hugo.

December 13, 2024
November 23, 2024
November 16, 2024

This was an adorable jalopy parked by the gym.

A small, British coupe with a white roof, gray, almost unfinished paint, and yellow rims.

October 25, 2024
October 22, 2024
October 17, 2024