<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:webfeeds="http://webfeeds.org/rss/1.0" version="2.0">
  <channel>
    <title>Andy Zeigert</title>
    <link>https://zeigert.com/</link>
    <atom:link href="https://zeigert.com/feed.xml" rel="self" type="application/rss+xml"/>
    <description>Blog, portfolio, projects.</description>
    <lastBuildDate>Fri, 08 May 2026 17:21:34 GMT</lastBuildDate>
    <language>en</language>
    <generator>Lume 3.2.1</generator>
    <item>
      <title>These Days</title>
      <link>https://zeigert.com/posts/2026-04-18-these-days/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-04-18-these-days/</guid>
      <content:encoded>
        <![CDATA[<h3 id="work-stuff" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-these-days/#work-stuff" class="header-anchor">Work stuff</a></h3>
<p>I recently left the job I'd been doing for more than 11 years. Words like "restructuring" and "position eliminated" were read to me over a Microsoft Teams call with a freshly-hired CFO. My manager was not consulted, nor was his manager. Ruthless corporate math. So it goes.</p>
<p>If you need the services of a <a href="https://zeigert.com/resume/">versatile software engineer</a>, <a href="mailto:andy@zeigert.com">let me know</a>!</p>
<h3 id="henge-finder" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-these-days/#henge-finder" class="header-anchor">Henge Finder</a></h3>
<p>With some of my extra time, I've been working on some personal projects, including a little app called <a href="https://henge-finder.zeigert.com/">Henge Finder</a>. It's not done yet but I'm working on it in public.</p>
<p>I was going to make this a longer post, but I also want to post more often, so I'm ending it here and will save the other things I was going to talk about for another post.</p>
]]>
      </content:encoded>
      <pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>I kind of overengineered my résumé</title>
      <link>https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/</guid>
      <content:encoded>
        <![CDATA[<p><img src="https://zeigert.com/img/resume-update-2.png" alt="Printing a résumé straight from the web"></p>
<p>I've been working on <a href="https://zeigert.com/resume/">my résumé</a> lately. I attended a webinar offered by a career advisor firm that I connected with, and I learned a little about how job seeking has changed since I last did it. Some highlights:</p>
<ul>
<li>Cover letters are rarely expected now (cool!)</li>
<li>Every résumé you send out needs to be customized (less cool!)</li>
<li>LinkedIn is the center of the jobseeker's universe</li>
</ul>
<p>A custom résumé for each job application?! Mostly this involves providing a professional summary statement at the top and filling the whole thing with keywords lifted directly from each respective job description.</p>
<!--more-->
<p>A long job search could mean dozens of applications, if not more. The idea of keeping dozens of Word or Pages documents organized, each a slightly-tweaked revision of some Ur-résumé, gave me a slight headache.</p>
<p>Not to mention LinkedIn expects you to input and maintain all of this data on their site as well, so you end up with yet another copy.</p>
<p>What I really wanted was a single source of truth, and I wanted to do it the <a href="https://indieweb.org/POSSE">POSSE</a> way. This site <a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/posts/2023-12-21-how-this-website-is-built/">is built</a> using <a href="https://lume.land/">Lume</a>, a lovely little static site generator for Deno. I wanted:</p>
<ul>
<li>A single source of truth for my work history and education, on my own site</li>
<li>The ability to create variants of that for job applications</li>
<li>Print/PDF from the browser</li>
<li>JSON Resume integration</li>
<li>Update LinkedIn programmatically</li>
</ul>
<p>I was able to accomplish everything except the last one. However, I have a partial workaround.</p>
<h2 id="source-of-truth" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#source-of-truth" class="header-anchor">Source of Truth</a></h2>
<p>I originally kept my work history and education details as Markdown in a <code>resume.md</code> file. Lume would then generate an HTML version. Easy.</p>
<p>But my new version would require a little more structure. I consolidated all of my info into <code>src/_data/resume.yml</code> file. Here's a snippet:</p>
<pre><code class="language-yml">basics:
  name: Andy Zeigert
  label: Senior Software Engineer, UI/UX Designer, Geospatial Engineer, Cloud Infrastructure Engineer, Project Management
  email: andy@zeigert.com
  phone: "541-788-0452"
  url: https://zeigert.com
  location:
    city: Bend
    region: OR
    countryCode: US
  profiles:
    - network: Mastodon
      url: https://mastodon.social/@zeigert
    - network: GitHub
      username: ajzeigert
      url: https://github.com/ajzeigert
    - network: LinkedIn
      username: andy-zeigert
      url: https://linkedin.com/in/andy-zeigert

summary: &gt;-
  Versatile Senior Software Engineer with 10+ years of experience building
  full-stack web applications and geospatial tools for environmental and
  engineering clients. Passionate about user satisfaction, clean code, elegent CI/CD pipelines, right-sized &amp; secure cloud infrastructure, testing and documentation. If there's a geospatial component, even better.

work:
  - company: Freelance / Independent
    location: Bend, Oregon (remote)
    positions:
      - title: Software Engineer, Developer
        startDate: 2026-03
        highlights:
          - Contract web dev, UI/UX design, and geospatial dev
        skills:
          - JavaScript
          - React
          - Node
          - UI/UX
          - Geographic Information Systems (GIS)
          - Web Maps


</code></pre>
<p>Lume makes the contents of this file available as a variable from anywhere. A layout document, <code>src/_includes/layouts/resume.vto</code>, does just this. This layout is a <a href="https://vento.js.org/">Vento template</a>. The original <code>resume.md</code> now simply references the template, which uses the <code>resume</code> variable to build the HTML.</p>
<h2 id="print-or-pdf" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#print-or-pdf" class="header-anchor">Print or PDF</a></h2>
<p>I used <code>@media print</code> css properties to format the content of the page for printing nicely on a letter size sheet. As easy as File =&gt; Print.</p>
<h2 id="add-the-json-resume-page" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#add-the-json-resume-page" class="header-anchor">Add the JSON Resume page</a></h2>
<p>The Resume JSON is generated by <code>src/resume.json.page.js</code>, which essentially translates the original yaml data into JSON. It's linked to at the bottom of the resume page, and can be used in a variety of applications.</p>
<h2 id="variants" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#variants" class="header-anchor">Variants</a></h2>
<p>I can use the Lume archetype system to create variant versions of my
résumé:</p>
<pre><code class="language-javascript">deno task lume new resume-variant
</code></pre>
<p>This creates a new yaml file in <code>src/resume-variants/</code>, which is parsed by <code>src/resume-variants.page.js</code> and merged with the main resume details. Several overrides are available, allowing me to customize the summary statement, add keywords, replace highlights and exclude entire sections. All variants can be accessed at <code>/resume/&lt;variant-slug&gt;</code>. The original <code>/resume/</code> endpoint remains the same.</p>
<h2 id="syndication" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#syndication" class="header-anchor">Syndication</a></h2>
<p>I was unable to automatically push changes to LinkedIn because, although LinkedIn does have an API, it does not support making changes to the specific fields necessary to a completely automatic update.</p>
<p>In fact, it seems the ONLY way to update your work and education history on LinkedIn is by logging into their web portal and making the changes manually. It's not great, but I could still partially automate the process using some reminders. A Github Action now checks the diff on <code>src/_data/resume.yml</code> and creates an issue in the repository with the changes and a checklist of places on my LinkedIn profile to check. It looks like this:</p>
<p><img src="https://zeigert.com/posts/img/resume-update.png" alt="Resume updated -- sync to LinkedIn"></p>
<h2 id="conclusion" tabindex="-1"><a href="https://zeigert.com/posts/2026-04-18-i-kind-of-overengineered-my-resume/#conclusion" class="header-anchor">Conclusion</a></h2>
<p>Although I wasn't able to complete the final goal exactly how I'd hoped, I did accomplish everything else. I can now keep the source of truth for my résumé on my own site and syndicate it everywhere, even if there is still a manual step for now. Maybe I'll work on a complex Puppeteer script to further automate it.</p>
<p>Check out my résumé here: <a href="https://zeigert.com/resume/">/resume/</a></p>
<p>Here's an example variant: <a href="https://zeigert.com/resume/acme-corp">/resume/acme-corp</a></p>
<p>The source code for this site is here: <a href="https://github.com/ajzeigert/zeigert.com">https://github.com/ajzeigert/zeigert.com</a></p>
]]>
      </content:encoded>
      <pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Updated to new Deno Deploy</title>
      <link>https://zeigert.com/posts/2026-03-27-updated-to-new-deno-deploy/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-03-27-updated-to-new-deno-deploy/</guid>
      <content:encoded>
        <![CDATA[<p>This is a housekeeping post. I updated the host plumbing on zeigert.com to the <a href="https://docs.deno.com/deploy/migration_guide/">new Deno Deploy</a> since they sent out the ominous "the old Deno Deploy will be deleted soon" email.</p>
<p>I understand that the new deploy architecture is quite different, but offering no automatic path from the Classic to the New is a bold move, even for a contemporary web project hosting platform.</p>
<p>Anyway, if you notice any trouble around here, let me know.</p>
]]>
      </content:encoded>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Michael Shannon &amp; Jason Narducy &amp; Friends, Portland, February 2026</title>
      <link>https://zeigert.com/posts/2026-02-17-michael-shannon-jason-narducy-friends-portland-2026/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-02-17-michael-shannon-jason-narducy-friends-portland-2026/</guid>
      <content:encoded>
        <![CDATA[<p><img src="https://zeigert.com/img/shannon_02.jpeg" alt="Michael Shannon fronting an R.E.M. cover band.">
<em>Michael Shannon singing at Revolution Hall in Portland, Ore.</em></p>
<p>Nobody has the exact combination of vocal cords, sinus cavity and southern drawl that Michael Stipe has but it’s clear than Michael Shannon did his homework. And maybe the guitars weren't quite as jangly as the Peter Buck's, but Jason Narducy nearly fooled me.</p>
<p>People see cover bands for lots of reasons. Often, you end up at a bar where you didn't know there would be a band that night, and they're playing top 40 hits from a quarter century ago. Other times, the bass player works with your husband, so you finally agree to come by for a show. Very rarely, you seek them out.</p>
<!--more-->
<p>I had read about the shows that Michael Shannon &amp; Jason Narducy &amp; Friends had done, where they play R.E.M. albums in full. They even played "Driver 8" on <em>The Tonight Show</em>.<sup><a class="footnote-ref" href="https://zeigert.com/posts/2026-02-17-michael-shannon-jason-narducy-friends-portland-2026/#fn-1" id="fnref-1">1</a></sup> At a show in Athens, Ga., the entire lineup of R.E.M. joined them onstage for a couple of songs. When the show came back around to Portland, I decided I had to check it out. Would it be fun? Or cringe?</p>
<p>R.E.M. were, for a few years in the 90s, one of the biggest rock bands in the world. They had a handful of big hits and a loyal following from their college radio days. When they called it quits in 2011, they left behind a huge catalog of great tunes with notable eras and a variety of styles. They ended on good terms, basically saying that the project was finished and that they had no interest in touring as a legacy band. Despite a handful of appearances together, they have yet to officially get back together. Seeing these songs played live by their original authors is seemingly a thing of the past.</p>
<p>By the time I found their ninth album, Monster, in a used CD bin in a head shop in my Indiana hometown, R.E.M. had already peaked. I was 12, maybe 13, still finding my own footing in terms of musical taste. But Monster kind of floored me. It was loud, weirdly poetic for pop music, of-the-times but commercial in only the barest sense.</p>
<p>I was also reading Stephen King's <em>The Stand</em> at the time, and the two are inextricably linked in my brain. (<a href="https://www.youtube.com/watch?v=7lg41RfuSKA">"Circus Envy"</a> is absolutely a song about The Walkin' Dude, fight me.) That disc would live in my portable Panasonic disc player for months. Their next album, New Adventures in Hi-Fi, wouldn't spawn a number one hit, and thus passed R.E.M. out of the mainstream. Just as I was getting into them.</p>
<p>Eventually I learned that they had other albums, and signed up for Columbia Record Club almost exclusively to fill out their back catalog. Their earlier stuff was... different? But it also opened up whole new worlds to me, musically. So much of my musical knowledge can be traced back to bands I learned about through their association with R.E.M. Warren Zevon? One of my all-time favorites, and I only really know him beyond "Werewolves of London" because he made that <a href="https://www.youtube.com/watch?v=Q0plCygzgkg&amp;list=PL511fSPfMr9IO1bVjZ1YHVIHrIep4TWSD">Hindu Love Gods</a> album with the members of R.E.M. Patti Smith? <a href="https://www.youtube.com/watch?v=UuMWS3LsOos">Richard Thompson</a>? Natalie Merchant? Sure, I might have run into them eventually, but R.E.M. was my original vector.</p>
<p>I've grown up and moved on, nursed other <a href="https://themountaingoats.bandcamp.com/">niche</a> <a href="https://www.youtube.com/watch?v=P52uWcYgqRs&amp;list=PLfimnwaZdumh4VMrhUMZOTfeuytpd4lO0">musical</a> <a href="https://sneakerpimps.bandcamp.com/album/becoming-x">obsessions</a>. But I will always come back to this band. And it was lonely sometimes. Lots of other people like "Losing My Religion," but when you tell them that R.E.M. is your favorite band, you get a kind of surprised, curious look in response. "Oh! Cool." Favorite bands are weird like that – declaring yourself in thrall to one group of rich strangers. I met so few people over the years that had latched onto this band like I had.</p>
<p>Which was why, standing in Revolution Hall on Feb. 14, I felt elation. I was in a sold-out auditorium with other people like me! Perhaps some folks were there because they were curious about a movie star's oddball side project, but based on the people around me dancing and singing every word, I had the rare feeling of being home among strangers.</p>
<p><img src="https://zeigert.com/img/shannon_01.jpeg" alt="Shannon with the requisite megaphone.">
<em>Shannon with the requisite megaphone.</em></p>
<p>The band is made up journeyman musicians who made names for themselves in their own rights, and they were clearly doing this for the love of the songs. During a recent interview, Shannon said that the R.E.M. songbook is remarkable, and that these songs should be sung<sup><a class="footnote-ref" href="https://zeigert.com/posts/2026-02-17-michael-shannon-jason-narducy-friends-portland-2026/#fn-2" id="fnref-2">2</a></sup>. And he was clearly having a blast doing so. His performance straddled the line between professional mimicry and outright talent. Stipe's vocal catalog is full of weird, mumbled lyrics that often rise out of his baritone range into falsetto and wander in and out of alignment with the instrumental melody. It's not easy to recreate. Shannon nailed it.</p>
<p><img src="https://zeigert.com/img/shannon_poster.jpg" alt="Original poster">
<em>The original promo image for the show.</em></p>
<p>They played all of Life's Rich Pageant, but that album only clocks in at about 38 minutes. So they also played another hour plus of bangers from across the catalog. Although they noticeably didn't play anything from the band's last three albums, which is probably just as well.</p>
<p>Life's Rich Pageant has several great political songs, written during the height of Reaganism, but equally applicable now. Perhaps because there are universal themes of dissatisfaction, or maybe because Stipe's lyrics are notably inscrutable and can be broadly applied. <a href="https://www.youtube.com/watch?v=GDaPdpwA4Iw">“Streets of Minneapolis”</a> this is not, but “we are young despite the years, we are concerned, we are hope despite the times” hits just as hard. Shannon seemed to relish these moments.</p>
<p><img src="https://zeigert.com/img/shannon_03.jpeg" alt="Scott McCaughey joined the band onstage for several songs.">
<em>Unofficial fifth member of R.E.M., Scott McCaughey, joined for several songs throughout the show.</em></p>
<p>I didn't grow up with "go to expensive concerts in your teens" money, so I only managed to catch R.E.M. play one time during their original run, at Chicago's United Center for their 2003 tour in support of a greatest hits collection. I was in the nosebleeds. They sounded great, I had a good time. But if I'm being honest, I think I had more fun in Portland last weekend. This is about as close as you’ll get to seeing R.E.M. play again, at least for now. Even unofficial 5th band member Scott McCaughey<sup><a class="footnote-ref" href="https://zeigert.com/posts/2026-02-17-michael-shannon-jason-narducy-friends-portland-2026/#fn-3" id="fnref-3">3</a></sup> showed up, as well as Warpaint's Emily Kokal, who provided some backing vocals for a few songs.</p>
<p>Oh, and I wouldn’t recommend heckling Michael Shannon. People that shouted weird things mostly got his terrifying furrowed brow in response.</p>
]]>
      </content:encoded>
      <pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Fast ink and watercolor drawings</title>
      <link>https://zeigert.com/posts/2026-02-09-some-old-illustrations/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-02-09-some-old-illustrations/</guid>
      <content:encoded>
        <![CDATA[<p>For some reason I found myself scrolling through my photos app and landed on a drawing series I did in 2021. They're little more than doodles, coloring-page shape logic. It's a good mental exercise, though.</p>
<p><img src="https://zeigert.com/img/squares/IMG_7549.jpeg" alt="Canyon"></p>
<p><img src="https://zeigert.com/img/squares/IMG_7545.jpeg" alt="Lighthouse"></p>
<p><img src="https://zeigert.com/img/squares/IMG_7548.jpeg" alt="Juniper"></p>
<p><img src="https://zeigert.com/img/squares/IMG_7551.jpeg" alt="Range"></p>
<p><img src="https://zeigert.com/img/squares/IMG_7547.jpeg" alt="River"></p>
<p><img src="https://zeigert.com/img/squares/IMG_7546.jpeg" alt="Bachelor"></p>
]]>
      </content:encoded>
      <pubDate>Mon, 09 Feb 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Recent media 2/7/26</title>
      <link>https://zeigert.com/posts/2026-02-07-recent-media/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-02-07-recent-media/</guid>
      <content:encoded>
        <![CDATA[<h2 id="the-knives-by-ed-brubaker-and-sean-phillips" tabindex="-1"><a href="https://zeigert.com/posts/2026-02-07-recent-media/#the-knives-by-ed-brubaker-and-sean-phillips" class="header-anchor">The Knives by Ed Brubaker and Sean Phillips</a></h2>
<p>It's been really fun reading new Ed Brubaker and Sean Phillips work as standalone graphic novels. I will always love the individual issue format, but the older I get, the more I come to appreciate collected editions and OGNs, if for no other reason than shelf logistics. I have a closet full of short boxes that represent a hobby measured in cubic feet. <a href="https://www.simonandschuster.com/books/The-Knives-A-Criminal-Book/Ed-Brubaker/Criminal/9781534355590">The Knives</a> finds the duo (with Phillips' son Jacob on colors) back in the world of Criminal, an off-beat crime series the pair have been fleshing out for 20 years now. Criminal was how I discovered these two, although they both have done work with other characters and publishers and genres. The Knives finds some familiar characters in new situations, and brings the series up to the present in a lot of ways. There will be more books coming, and even a <a href="https://en.wikipedia.org/wiki/Criminal_(TV_series)">TV show</a> based on the book.</p>
<p>I'm not sure Brubaker translates well to television, but I'm glad he keeps trying. I was excited for TOO OLD TO DIE YOUNG, the collaboration he did with Nicolas Winding Refn that streamed on Amazon Prime. Ten episodes of the weirdest, sexiest, most horrific shit you've ever seen on TV, an artifact of when the big streamers were throwing money at auteurs to make 10-hour movies with little or no commercial appeal. It's good, but you can barely see Brubaker through the Refn.</p>
<h2 id="rabbit-trap" tabindex="-1"><a href="https://zeigert.com/posts/2026-02-07-recent-media/#rabbit-trap" class="header-anchor">Rabbit Trap</a></h2>
<p>Rabbit Trap is relatively small movie with only a few things to say, but what it does it does well. You had me at Dev Patel folk horror.</p>
<p>A couple, one of which is some kind of recording artist, move a ton of recording equipment to a remote cottage in the Welsh countryside in the 1970s. The cottage is one of those picturesque places that must exist in real life but that I have a hard time imagining isn't surrounded by power lines and cell towers. Maybe I'm just an American in that way. Anyway, I want to go there. They set out to record spooky nature sounds for some kind of project, and stumble across a young boy(?) who proceeds to give away the entire plot before attempting to install himself into the couple's life. The finale is weird and gross and leaves you with more questions than answers. Folk horror should do that. If you feel like the mystery is completely solved at the end, I would probably exclude it from that particular subgenre.</p>
<p>Anyway, if you like watching Patel stroll through lush forests, have psychedelic experiences in faerie circles and spend copious amounts of screen time staring, worried-looking, into the middle distance, then Rabbit Trap is for you. It's <a href="https://www.kanopy.com/en/deschutes/video/15951976">available on Kanopy</a> with most library cards, I believe.</p>
<h2 id="dungeon-synth" tabindex="-1"><a href="https://zeigert.com/posts/2026-02-07-recent-media/#dungeon-synth" class="header-anchor">Dungeon synth</a></h2>
<p>I'm amazed at how prolific the Heimat Der Katastrophe label is. They put out new dungeon synth cassettes on the reg, many of which include bespoke pen and paper RPG adventures folded in with their j cards. You can of course listen to all of it <a href="https://heimatderkatastrophe.bandcamp.com/">digitally on Bandcamp</a>, which is what I usually do. I'd go broke if I paid international shipping for every cassette release.</p>
]]>
      </content:encoded>
      <pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Review of King Sorrow by Joe Hill</title>
      <link>https://zeigert.com/posts/2026-01-16-review-of-king-sorrow-by-joe-hill/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-01-16-review-of-king-sorrow-by-joe-hill/</guid>
      <content:encoded>
        <![CDATA[<p><a href="https://www.harpercollins.com/products/king-sorrow-joe-hill?variant=43416030445602">King Sorrow by Joe Hill</a> | ★★★★☆ 4/5 stars</p>
<p><img src="https://www.harpercollins.com/cdn/shop/files/9780062200600_727a15f9-8703-48b6-8f60-32b0db35229d.jpg?v=1768417049&amp;width=350#thumbnail" alt="Cover of King Sorrow by Joe Hill"></p>
<p>I've been a fan of Joe Hill since I first discovered his Locke &amp; Key comics. He has an ear for dialog and knack for mixing humor and pathos even in horrific settings. His stories can be mean without being sadistic, and there's almost alway someone we're cheering for.</p>
<p>King Sorrow follows a group of bright-eyed, gen x college students who, in 1989, find themselves mixed up with some dangerous people. As anyone would, they summon the eponymous dragon, King Sorrow, who agrees to help them solve their little problem. But of course our heros get more than they bargained for. King Sorrow protects them, defends them, but also requires a terrible annual tribute.</p>
<p>Our protagonists are a delightful mix of gen x archetypes: There's the studious academic with something to prove; the rich kid cum tech bro; the self-loathing, closeted queer; the damaged angry girl; the kindly but ultimately cowardly stoner; the poor but morally correct door mat. A breakfast club if ever there was one. We meet them all in college and follow them into their 40s. Along the way, the burdon of King Sorrow's bargain beats them all down, and they all turn toward their addictions for support, whether it be alcohol, drugs, self punishment, running away or overcompensating. Eventually they hatch a plan to rid themselves of the dragon, but by then their cohort itself is damaged, and trust becomes scarce.</p>
<p>That's the story on the surface, which I think is moderately successful. King Sorrow really does cross over from another reality and scorch the earth. People die in the flames. The public notices, as do some shadowy government types, much to the regret of our protagonists. The book is 800+ pages, and there were huge chunks of it that I flew through because the action was intense and I couldn't wait to read what happened next. The finale accomplishes what it needs to on a plot level, but I felt perhaps on a character level it left a little bit on the table.</p>
<p>There's another story underneath, of course. The allegory. These friends attend an elite college, all but Gwen, who starts out as the daughter of the help that works for the rich kid's family. They're all smart and attractive, they drink expensive scotch and smoke weed in Colin's fancy estate. They have access to just about anything they could want at that age. Then their real lives begin, and it seems like they're always chasing the dragon of the high they achieved in their youth. Certainly the emotional cost of their faustian bargain could be blamed for their shortcomings, but maybe it's the other way around. Maybe King Sorrow is a manifestation of their various addictions. Hill certainly spends pages upon pages describing several characters' descents into substance abuse, and getting clean coincides with defeating the very real dragon that haunts them.</p>
<p>As an allegory for falling into addiction and then getting clean, King Sorrow works quite well.</p>
<p>The following is a total aside, perhaps a connection only I made. I just so happened to be <a href="https://zeigert.com/img/ring_the_bell.m4a">trying to learn</a> how to play <a href="https://www.youtube.com/watch?v=rbPmaMW6bnk">Jason Molina's "Ring the Bell"</a> (recorded both under Songs: Ohia and Magnolia Electric Co.). It's one of Molina's all-time-great two-chord dirges. Molina notoriously suffered from severe alcoholism, and in fact died from it in 2013 at the age of 39. It's hard <em>not</em> to view all of his songs through that lens, this one being no exception. The fact that it also speaks of serpents doesn't hurt. Anyway, this song was banging around my skull the whole time I was reading. The lyrics couldn't have been a better fit for a person reading King Sorrow, to wit:</p>
<blockquote>
<p><em>I know serpents will cross universes to circle around our necks</em></p>
<p><em>I know hounds will cross the universe to circle around our feet</em></p>
<p><em>They're always close</em></p>
<p><em>Always so close</em></p>
<p><em>Step by step one's beside me to kill me or to guide me</em></p>
<p><em>Why wouldn't I be trying to figure which one out</em></p>
<p><em>Why wouldn't I be trying to figure which one out</em></p>
</blockquote>
<p>Now to return this doorstop to the library.</p>
]]>
      </content:encoded>
      <pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Links for January 2026</title>
      <link>https://zeigert.com/posts/2026-01-16-january-links/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2026-01-16-january-links/</guid>
      <content:encoded>
        <![CDATA[<p>I spent a good part of the last month down with the flu. I'm several weeks past day zero and still waking up with a frog in my throat, although it's a little better every day. I hope you and yours are healthy. This influenza A variant that's going around is no slouch.</p>
<p>I've been collecting tabs and it's time to dump them here so I can close them.</p>
<ul>
<li>
<p><a href="https://strudel.cc/">Strudel.cc</a> is (perhaps yet another) <a href="https://github.com/zoejane/awesome-music-programming">music programming</a> platform. I remember playing with <a href="https://sonic-pi.net/">Sonic Pi</a> ages ago, but I like that Strudel seems to be browser-centric.</p>
</li>
<li>
<p>I did about 3 days of last month's <a href="https://adventofcode.com/2025/day/1">Advent of Code</a> before getting stumped/distracted.</p>
</li>
<li>
<p>I haven't been really into desktop flight sims in ages, maybe ever really. But the open source <a href="https://www.flightgear.org/">Flight Gear</a> piqued my interest again.</p>
</li>
<li>
<p>Look at <a href="https://www.ninnsalaun.com/digitalillustrations">these illustrations by Ninn Salaün</a></p>
</li>
<li>
<p>This might be niche, and maybe you don't need shampoo to bring you joy, <a href="https://www.lush.com/us/en_us/p/big-shampoo/115g">but maybe you do.</a>.</p>
</li>
<li>
<p><a href="https://www.wigshopwebshop.com/">Wig Shop</a> continues to be a place I browse regularly. Comic shops and comic news sites are absolutely clogged with cape shit, and I have little to no interest in that. But comics as a medium still brings me great joy, and Wig Shop is one of the best online purveyors of the good stuff. Or at least the weird stuff.</p>
</li>
<li>
<p>I love weird little online mags. <a href="https://foofaraw.press/">Foofaraw</a> seems like a great weird little online mag.</p>
</li>
<li>
<p>Although I've been leaning back toward traditional tools lately, I still dabble with Procreate. I've wonderered if anyone's had success with any accessories like the <a href="https://pen.tips/products/penpad?variant=50187677335883">PenPad</a>? I'm tempted.</p>
</li>
<li>
<p>I love a good tutorial, and I love <a href="https://palewi.re/docs/first-basemap/">a good web map tutorial</a> best.</p>
</li>
<li>
<p>Should I order a <a href="https://www.planesofthehead.com/dev/product/oiginal-head/">$120 Asaro head</a> or ask someone I know with a 3D printer to make one for me?</p>
</li>
<li>
<p><a href="https://www.fxte.co/">f*te</a> seems like a cool kids version of Letterboxd? Here's <a href="https://www.fxte.co/jessacrispin/4b0f23cc-a1e4-4a1b-848b-207d125437b9">a list Jessa Crispin</a> made for people that enjoyed <a href="https://www.youtube.com/watch?v=ygNmYP-NQEc">No Other Choice</a>?</p>
</li>
</ul>
<p>I've been playing around with the formatting of these link dumps. Do folks like seeing the full URLs when sharing links? Or are hyperlinks OK?</p>
]]>
      </content:encoded>
      <pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Review of Between Two Fires by Christopher Beuhler</title>
      <link>https://zeigert.com/posts/2025-12-08-between-two-fires/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2025-12-08-between-two-fires/</guid>
      <content:encoded>
        <![CDATA[<p><a href="https://christopherbuehlmanauthor.com/book/between-two-fires/">“Between Two Fires” by Christopher Beuhler</a> | ★★★★★ 5/5 stars</p>
<p>I won’t belabor this review as it’s for a book published more than ten years ago, but it was a perfect October book for me. (And yes, I'm publishing this in December. Such is my life.)</p>
<p>Set during the Black Death in France, the book follows a disgraced knight, a priest and a mysterious girl as they make their way across a land afflicted by death both earthly and not. Essentially a smaller-scale The Stand set in medieval times. Although the scale ends up being just as biblical, so maybe that’s not quite right. Reading it felt like the literary equivalent of a Hieronymus Bosch painting, a world both familiar and startling.</p>
<p>Highly enjoyed.</p>
]]>
      </content:encoded>
      <pubDate>Mon, 08 Dec 2025 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Scrolly map</title>
      <link>https://zeigert.com/posts/2025-12-03-scrolly-map/</link>
      <guid isPermaLink="false">https://zeigert.com/posts/2025-12-03-scrolly-map/</guid>
      <content:encoded>
        <![CDATA[<p><img src="https://zeigert.com/img/scrollymap.png" alt="Scrolly map"></p>
<p>My day job is mostly making little javascript apps, deploying them to cloud services, and then maintaining those little apps.</p>
<p><a href="https://zeigert.com/projects/scrollymap">Here's an example of a little scrolly map</a> that I made ages ago and just discovered on a backup drive. It was intended to be a widget map that would be on display in a corporate lobby, but it never made it to production. It's little more than a proof-of-concept at this stage.</p>
<p>It's nothing special. One of millions of little javascript maps that were made in the '10s as that technology became ubiquitous. I just thought it worked really nicely for what it was and decided to host it here as an example of the kind of thing I do. I was honestly surprised that it still worked, given that it uses CDNs and how quickly this industry has changed since 2017.</p>
<p>Not saying who the potential corporate client was but also not hiding it.</p>
]]>
      </content:encoded>
      <pubDate>Wed, 03 Dec 2025 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>