Journal Entries By Year: 2024

Assorted journal entries from 2024.


Site Update: Welcome to the Grid!

TL;DR — Some details around the recent addition of a scrolling background grid to the site.

👓 2 minutes

Recently, I decided to try my hand at some CSS shenanigans, and spent a few hours replacing this siteā€™s long-serving background image with a scrolling grid background.

Iā€™ve been obsessed with digital grids ever since I first saw the movie Tron (presumably during its initial HBO release, when I was around 6). Tron and Flynn were some of my first heroes (they fought for the users), and I remember being blown away not just by the movie, but by being able to play the same game they play in the movie via the incredible Tron arcade cabinet. I distinctly remember going to the Chuck E. Cheeseā€™s near our house and playing it, complete with the special blue joystick, and just like the movie, it was amazing. And it was all grids.

Tron Arcade Machine by Darth-Wiki-Man, used under CC-BY-SA
Lightcycle game, screenshot from Tron by Bally Midway

So thatā€™s the ā€œwhyā€, as for the ā€œhowā€ā€¦

The capabilities of #web rendering engines (AKA #browsers) have improved immensely over the last few years, particularly in the area of CSS effects. A link to a link to a link lead me to a couple of stack exchange questions and a collection of fantastic synthwave-inspired CSS effects. The next thing I know, Iā€™ve replaced the siteā€™s static background image with a scrolling one.

Exceptā€¦ I know that not everyone likes moving background effects, so the only responsible way to add an effect like that is with a toggle that allows the site visitor to turn it on and off at will. And the only responsible way to add an interactive toggle like that is via progressive enhancement: visitors without JS enabled (or those whose browsers donā€™t support <script type="modules">) will get just a static background grid, but those who do have JS get both the scrolling grid AND the toggle, tying the presence of the feature to the ability to disable it.

If you want to know more specifics, check out the commit on my self-hosted git server, in particular the changes to the scripts.js and styles.css files.

Because I, too, fight for the users.


My first WebToy - the BPS (Bill Paxton Soundboard)

TL;DR — I've written a small HTML5 Soundboard themed around the late actor, Bill Paxton.

👓 3 minutes

Ever since the early days of JavaScript (remember document.layers?), Iā€™ve been interested in building web applications, from the complex to the trivial. In that time, Iā€™ve built more signature generators, magic 8-balls, and die rollers than I care to mention. But, apart from the tools at Planar Vagabond, most of these #WebToys are lost to time (or sitting on some 3/4 full hard drive waiting to be rediscovered).

Until now!

Iā€™ve decided to start archiving them here, in my lightly-tended digital garden, under the heading of WebToys (a moniker chosen based on their dubious utility). And the first #WebToy is a project Iā€™ve had in mind for over 25 years, but that Iā€™ve just finally put the 4-ish hours in to complete: .

The BPS (Bill Paxton Soundboard)

Back when I was in college (circa 1997), a friend of mine and I would often discuss ideas for ā€œfunā€ (and typically useless) computer programs. One night, one of us suggested a virtual See-and-Say themed around quotes from the great character actor, the late Bill Paxton. Of course, writing such a program wasnā€™t worth the effort (especially circa 1997), so we just kind of chuckled and forgot about it.

Fast-forward to 2024: the company I work for has a ā€œUI Developers Guildā€ (for those interested in bettering their development skills), and they recently started running coding challenges, both to drive engagement with the guild and to give the coders a chance to do something non-work related. This particular challenge had 3 simple rules (copied verbatim below):

  1. Play some kind of music / sound
  2. Be viewable
  3. Donā€™t work over 4hrs!!!

After briefly contemplating what to offer as my entry for the challenge, the idea from college bubbled back to the front of my brain, and I thought, ā€œthis is my chance!ā€

The rest, as they say, is history.

Work Breakdown

  • One hour thinking through the concept and writing the rough draft player.js and main.js modules;
  • One hour to turn draft into MVP, addressing layout and audio issues;
  • One hour to add images and expand the audio selection; and
  • One final hour[1] to add mobile support and some light documentation.

Now, this is obviously not the first Bill Paxton soundboard on the #interwebs, nor is it the most comprehensive. But, unlike the ones in the App or Play stores, mine doesnā€™t require any scary permissions, and wonā€™t track you relentlessly. And, unlike other web-based soundboards, mine has no advertising, andā€¦ wonā€™t track you relentlessly. So maybe mine is better, at least in some ways. šŸ˜„

Plus, releasing it here doubles as my entry into the aforementioned coding challenge, so win-win!

With a few more hours work, Iā€™d probably turn it into a PWA and add full offline support (caching the sounds and images in localstorage), or maybe disable the buttons until the previous sound is done, butā€¦ thatā€™s for another day.

I suspect Iā€™ll wind up creating (or finding) other similar small #WebToys in the future, and when I do, Iā€™ll add them here. In the meantime, Iā€™m open to suggestions: what other tiny, useless programs does the world need more of?


  1. Of course, it took an additional couple of hours to move it to my website and actually get it out on the web, but those steps were technically outside the scope of the original project, which only required a codepen, so I donā€™t count that. ā†©ļøŽ


The Missing Magic Cards for any Doctor Who Deck!

TL;DR — I made some new magic cards based on Doctor Who.

👓 3 minutes

Last year saw the release of the ā€œUniverses Beyond: Doctor Whoā€ set for Magic: the Gathering, which included 188 new (and mechanically unique) cards based on various doctors, companions, villains, and other characters from the long-running TV show(s). As a lifelong Whovian[1], I thoroughly enjoyed the set and loved how they wrote each cards mechanics to be representative of the characters. Yet I couldnā€™t help but notice that a few characters were missing[2] (well, one for sure, the second only in a vaguely-related way, but I digressā€¦). At the same time, I stumbled upon the highly-functional (if somewhat overly ad-encumbered) MTGCardBuilder.com, so I thought - why not make the missing cards myself?

Of course, unlike my usual custom card fair, I wanted something that would still be legally playable (or at least, legal in my weekly Magic game), so I decided to make them as Skinned Cards - that is to say, skinned version of other, legal (real) magic cards. This allows me to use them as proxies for other cards I already have in my collection.

In truth, both of these are also in my ā€œ15 Doctors / Tribal Timelordsā€ deck (coming soon), and coming up with themed proxies just makes them fit better with the rest of the cards.

Jack Harkness, Torchwood Captain

First up is everyoneā€™s favorite flirtatious immortal, Captain Jack Harkness. His omission was a grave mistake, IMHO, but making a proxy for him almost broke me. After sorting through the 683 legendary humans in the Gatherer (as of writing), I finally found the one that had just the right abilities (and subtypes):

Dr. Who, Eccentric Scientist

The second one came about a bit differentlyā€¦ I started working on (what would become) the 15 doctors deck about a month after the set dropped. It was basically the best cards from the Blast from the Past and Paradox Power decks, plus a handful of singles for the missing doctors and other Timelords, and next thing I knew, I had a 5-color deck full of Timelords and their companionsā€¦ That is to say, legendary Timelords and their legendary companionsā€¦ Hmmmā€¦

So, who do you choose to lead a tribal legendary deck? Only the best commander the job, Jodah the Unifier[3]. But heā€™s a human wizard, how can I tie that in the any version of Doctor Who?

And thatā€™s when I remembered the strange, Technicolor-saturated Peter Cushing ā€œDr. Whoā€ movies of the 60s, wherein the good Doctor is actually a weird, whimsical, human inventor who fights off evil alien robots with his time machine, a description close enough to a ā€œwizardā€ for me:

I hope someone enjoys these and finds them useful. If you do like them, you may also like my other custom magic cards. And a word of advice: if you want to get them printed at your nearest corporate print-shop, youā€™ll probably want to use the ā€œself-serviceā€ copiers to avoid any uncomfortable conversations with the staff about copyright and fair use.

Oh, and while I was working on these, I went ahead and did another round of custom (and completely broken) Saturday Night Planeswalkers.

Until next time, share and enjoy!


  1. Back in the 80s, PBS used to run classic who episodes in 3-4 hour blocks which I distinctly remember watching with my father and being absolutely terrified of. Needless to say, Iā€™ve loved the show ever since. ā†©ļøŽ

  2. Most likely due to rights issues. ā†©ļøŽ

  3. Really, how hasnā€™t he been banned yet? Heā€™s so broken in Commander, but heā€™s too powerful not to use him for certain decks. ā†©ļøŽ