Somewhere to stash my mixtapes (Week 28)

TL;DR: I built mixtapes.lmorchard.com to publish playlists on my own domain instead of leaving them trapped in Spotify, which spun off two new repos (byom-sync and byom-player). Plus more starnet gamedev (an exploit-barrage mini-game with a Butterchurn "brain damage" overlay), I finally ditched Disqus for remark42 after almost 20 years, and Minnaloushe is inching toward parole from cat jail.

Minnaloushe makes parole soon?

Minnaloushe has been in cat jail for about a month now, behind a tall gate in my office while we reboot the introduction process. He's still got a couple weeks left, though he's getting acknowledgement for good behavior. He's clearly had a horrible time of it.

A black cat with green eyes relaxes in a cat bed, dangling its front paws over the edge.

In adjacent cat-and-machine news: I told Miss Biscuits she's pretty and incredibly treasured, and Gemini on my phone overheard and said "that's incredibly sweet of you to say and I'm glad to be here with you." So, you know, maybe Skynet will go easy on me.

Somewhere to stash my mixtapes

So, I made a thing this week: mixtapes.lmorchard.com.

Screenshot of the index page of mixtapes.lmorchard.com

Screenshot of a playlist on mixtapes.lmorchard.com

And, if this isn't broken, an embedded playlist should appear here:

This one started sideways. I spent some time reviving my Big Sonic Heaven Spy bot, a little thing that watches what's playing at bigsonicheaven.com and appends new songs to a Spotify playlist. BSH is all ethereal, shoegaze, dreampop, and post-punk from a DJ I've been listening to since high school. The playlist is past 8000 songs now, and Spotify caps playlists at 10000. So, I'm going to hit a wall before too long.

This got me grumbling. I really need a place to stash playlists and mixtapes - one that isn't locked inside somebody else's app. I've been meaning to do this for literally years, but this week I finally got around to starting it with two new repos:

Along the way I discovered Navidrome and the OpenSubsonic API, which turns out to be a lovely way to expose a personal music library to a web app, provided the browser can reach the server through Tailscale, a VPN, or a reverse proxy. I've got exactly that hacked together in my basement homelab.

That sent me spelunking through the wider ecosystem of Subsonic-compatible servers - bringing me to Psysonic (a Winamp-inspired Navidrome desktop client), gonic, smolsonic, LMS, and Funkwhale's Subsonic support.

All of this jibes with what a bookmark I saved this week names outright: be a gardener, not a tenant, because cloud services are not forever, and neither, apparently, is a Spotify playlist with a hard cap on it.

Back on my gamedev bullshit

starnet, my long-simmering cyberpunk netrunning RPG, got some more attention too. This week I was ginning up an arcadey sci-fi visualization of a metasploit-inspired exploit barrage against a network node.

The exploit barrage in motion: belts of exploits orbiting a target node while its shields wear down.

There's a target node in the center, surrounded by defensive shields. Orbiting the target are a couple of concentric belts of exploits you've queued up. When the barrage starts, the shields wear down, your exploits occasionally get burned or disclosed or used up, and a detection-risk "noise" level climbs.

I'm stealing some juice from Star Castle here, which apparently lit up a few people's nostalgia circuits the moment they saw the screenshots.

The other weird bit was wiring up a Butterchurn (a web port of the trippy old Milkdrop music visualizer) overlay as a way to depict brain injury in a cyberdeck jockey who's been pushing their luck. There's a whole trove of Milkdrop presets converted for Butterchurn to draw from, which is delightfully more raw material than I could ever use.

A test harness in starnet, trying out Milkdrop / Butterchurn music visualizers as a way to depict brain injury in a cyberdeck jockey

I still have no idea whether this game ever becomes a thing worth "releasing" - but I'm having a genuinely good time hacking on an idea I've been carrying around for years.

Disqus, gone after 20 years

This felt overdue: after almost 20 years, I finally switched my blog comments away from Disqus. I'm running remark42 for now and we'll see how I like it.

The final straw was they turned on a spammy chumbox at the bottom of every comment thread. What's a chumbox? This is a chumbox:

Chumbox

Complete garbage. I mean, sure, I was freeloading comments off Disqus most of this time. But inserting ads for vitamin supplements and crypto scams and boner pills on my blog is unacceptable. That convinced me to get over the hump of figuring out self-hosting, rather than pony up for a paid plan.

The part I'm quietly pleased about is that I got the Remark42 comments to lazy-load only when they're scrolled into view and to follow theme changes along with the rest of the page.

A nice writeup on automatic remark42 theme-switching did a lot of the heavy lifting there. Still on my wishlist: figuring out whether there's any way to get remark42 talking to indielogin.com for authentication. If anyone's done that, I'm all ears.

Miscellanea

None of this was especially planned. A dead Spotify playlist cap turned into two new repos, a game about breaking into computers grew a way to render brain damage, and my blog quietly shed a service it had carried since roughly the Bush administration. That's about the right ratio of accident to intent for a good week around here.

Comments loading...
Minnaloushe in cat jail (2026 Week 27) Next