A dismal sea of color

I have been deeply into audio equipment for as long as I can remember. When I was in high school, I was always scouring Goodwills and Hamfests for the next old thing that would bump up my hi-fi game and look good while doing it. The latter part wasn’t difficult; not everything was Bang & Olufsen, but audio equipment from the ‘70s and ‘80s pretty much universally looks interesting if not outright lovely. The first piece of new audio equipment I owned was a Roku SoundBridge M20001, a roughly rack-width aluminum tube that connected to a home network to stream from iTunes, a variety of other home music servers, and internet radio stations. It accepted no media of its own2, it was purely for streaming. Roku opted to keep the unit free of buttons; all interaction was done via remote control or computer. This meant that the front of the unit was made up of only one thing – a massive blue dot-matrix VFD. It looked like nothing else in my hi-fi stack. It looked like nothing else on the market; the display and the overall aesthetic were a direct result of the lack of physical media and the bold decision to omit face buttons.

By 2005, VFDs were the predominant displays on hi-fi and multimedia devices. A lot of things were largely the same shade of blue as the massive Roku. Pioneer largely used orange displays; these stood out. Before VFDs were ubiquitous, early adopters stood out. Companies that used LEDs stood out from one another by using different colors. Fast forward to VFDs being phased out and LED-backlit inverse LCDs (that is, LCDs that operate such that the backlight shines through to form the display elements)3 becoming popular, LED colors could once again be part of a brand’s products’ visual identities. Monochromatic OLEDs were a thing for a spell; I recently acquired a twelve-year-old Sansa Clip+4 which has a unique monochromatic OLED screen split into yellow for the status bar and that very OLED shade of blue for everything else.

The individual elements that make up a display were just as much a visual identity as the one or two colors that a company opted for. The shapes of the segments in a seven segment display, the use of more segments than seven, were the custom indicators words or beautifully-detailed icons? Something was lost as displays shifted toward dot-matrices. My beloved HP-41C calculator used a beautiful, 14-segment display for alphanumeric support; its later reimplementation, the HP-42S uses a more functional but incredibly bland dot matrix. Some of the HP-41C’s characters were a bit of a stretch, I do think the HP-42S is more legible for letters. But in general, I find seven-segment displays far more immediately recognizable than the fonts these companies opt for when given a dot matrix. When I was looking to upgrade up from my old Fluke multimeter, a large part of the reason that I opted for a Keysight U1272A instead of the comparable Fluke 2875 was that the Keysight used seven-segment numerics. There’s something to be said for a ‘font’ that’s as standardized and recognizable that we pick it up like the E-13B font in the MICR line of a cheque. Any given figure on a seven-segment display basically always looks the same, even if there is some room for variation.

The move to dot matrix displays genericized them; the move to full color even more so. Of course companies are going to make full use of this, but something is lost when everything is in full color instead of one color that a brand has made their own. I’m sure that color-coded waveforms on modern oscilloscopes are useful, but I have no desire to give up the monochromatic green of my early digital scope’s green CRT. It’s just easy on the eyes. Beyond that, full-color displays are all basically backlit TFTs or OLEDs now; they all look good from a technical standpoint, but they’re incredibly samey and boring. I have a TFT replacement screen for my WonderSwan Color, and I keep resisting installing it. The backlight will make it much more convenient to play, but it just looks… uninspiring compared to the almost pearlescent shine of its reflective unlit stock display.

I’ve name-dropped five or six products in this post that I love, that I regard as classics. I’ve posted several times before about products where the display is worth discussing. This is all largely because they don’t use modern, boring displays, and because someone had to deliberately establish an aesthetic for them around a restricted, custom display. They’re devices where the display is a part of the experience, not just an interactive means to an end. The Roku was stunning at the time, the HP-41C’s alphanumeric display was uniquely its own6, the orange glow of a piece of Pioneer equipment stood out among so many blue panels. These things all have character, and when I talk about these devices with others, the display is a notable thing, it’s worth describing. Now that so many things basically look like real life… well, they just blend into the background, uninteresting and mundane. I know we’re never going back to monochromatic phones7, but I’d love to see simpler displays coming back when applicable. I think the upcoming playdate handheld console may be a shining example of this – a monochrome display that promises high resolution and reflectivity. A point of pride for the engineering team. I hope to see more engineering teams taking pride in the aesthetic of their displays instead of just slapping in the most readily available TFT.


  1. Despite only selling boring multimedia streaming devices these days, Roku still has a web site for the SoundBridge line of streamers, though it only mentions the last model they produced, the M1001. When I got mine, there were three models – the M2000, which was rack-width, the M1000, which was half-rack, and the M500 which was the same size as the M1000, but with an inferior (inverse LCD?) display. When I was confirming the name of this last model, I stumbled across this 2006 review of the M500 which, if nothing else, flooded me with nostalgia. The three models were identical, save for the display. ↩︎
  2. The SoundBridge had a CompactFlash slot, but it was exclusively for a WiFi (802.11B only, if memory serves!) adaptor. ↩︎
  3. Technology Connections talks about an older, incandescent-backlit version in this video, and in many ways touches on what I’m saying in this post. A good watch. ↩︎
  4. Post coming about this. January, maybe? ↩︎
  5. No regrets here. On the tech specs side, each has some pros and cons compared to the other, but they’re quite similar. And I love my Keysight. ↩︎
  6. HP wasn’t the only company to use n-segment alphanumeric displays, of course, but these were so much less standardized than seven-segment numerics that the character choices make the HP-41C’s display iconic among calculator nerds. ↩︎
  7. Here’s one of those that’s notable purely for its display – the MOTOFONE F3, a slim candybar with an E Ink display. Beautiful. ↩︎

Experiencing Tetris Effect

In 1984, Alexei Pajitnov wrote Tetris for the Elektronika 60 computer. This was not a home computer by any stretch of the imagination; it was a Soviet interpretation of a DEC LSI-11, itself a shrunk-down version of the PDP-11. It had no display capabilities of its own, and this initial release of Tetris had to be played on a text-mode terminal that communicated with the computer. Pajitnov, working at the Soviet Academy of Sciences, was tasked with demonstrating the limits and capabilities of the equipment being developed. So, despite not being a gaming rig (lol), Pajitnov came up with a great proof-of-concept to show off this state-of-the-art machine. It quickly got ported to PC, and from here its story becomes fraught with capitalism and intellectual property battles. But the important takeaway is that these issues arose because of how incredibly popular the game was. It paved the way for decades of falling-block games, some better than others. It was so engrossing that its lingering effects on the thought patterns of hardcore players was noted and named the Tetris effect by popular media; this has since been generalized and studied as game transfer phenomena. And in 1989 it became the killer app for the Game Boy, ushering in an era of casual, handheld gaming.

In 1999, Bandai released one of my favorite handheld consoles, the Wonderswan. It was designed by Gunpei Yokoi, who also famously designed the original Game Boy. Sadly, Yokoi didn’t live to see the release of the Wonderswan. The system launched alongside a falling-block game named in tribute to Yokoi, Gunpey. While I felt no need to describe the game of Tetris, I’m less confident that the majority of people reading this have played Gunpey. I call it a falling-block game, though the blocks technically push upward from the bottom. Blocks are either made of diagonal lines that go from one corner to the opposite, or vee shapes that start and end on corners from the same edge, bending at the midpoint of the opposite edge. Blocks are cleared by rearranging their positions on the playfield such that lines continuously extend from one side of the playfield to the other. If I’m not describing this well, I unfortunately don’t think it matters much. Gunpey, to me, exists as a nice tribute to Yokoi, and a demonstration of the potential that the Wonderswan’s portrait-mode capabilities have. As a game, it’s just slow and dull. It can be quite frustrating too; when new blocks come in, they’re sparse, and the playfield can become incredibly full with one column empty simply because the RNG hasn’t been kind. I show it off to friends as an introduction to the Wonderswan, and as a device to talk about Yokoi, but I’m never inclined to show it off as a game.

In 2004, Q Entertainment released Lumines: Puzzle Fusion for the PlayStation Portable. Its designer, Q’s founder Tetsuya Mizuguchi, was captivated early on by the effect music had on people, the ability of a DJ to push an entire crowd into collective movement. He saw the PSP as something new, simply because of one detail – its headphone jack1. In an interview in Issue 2 of A Profound Waste of Time, Mizuguchi states that he “wanted to make Rez meets Tetris” but couldn’t as Electronic Arts held the exclusive license at the time. “So I went away and made Lumines. [Laughs].” Lumines is often described as a rhythm game because of how tightly it integrates music. I avoided it for the longest time because of this, but it isn’t a rhythm game at all. It’s a falling-block game that fundamentally understands how players fall into what Mizuguchi refers to as a state of ‘flow’2, and it uses this knowledge to engage with the player on a very deep level. At its heart, Lumines is a game where you drop squares made of four blocks. Blocks are one of two colors, and when clusters of the same color form squares on the playfield, they clear. But from the very first entry in the series, Lumines: Puzzle Fusion, the experience was also colored by the driving, responsive techno soundtrack. It was colored by the game’s lack of linear level progression – they don’t just get faster and faster, but they play with your state of ‘flow’ by constantly changing the rate of play in both directions3. When I eventually grabbed Lumines Remastered on the Switch, it quickly became my favorite falling-block game.

In 2006, Mizuguchi oversaw a reimagining of the WonderSwan title Gunpey. Yet again working for the PSP4, Gunpey [2006] took what was kind of a dull slog of a falling-block game and it added a handful of quality-of-life updates that made it much more… playable. But on top of small gameplay tweaks, this release from Q Entertainment brought along much of the feeling of Lumines. Mizuguchi might not have had the Tetris license yet, but his company was able to invigorate another falling-block license, giving an incredibly fresh breath to a game that never really felt that great to begin with. It’s still a few leaps away from the S rank of my falling-block tier list, but it’s a very playable game and does a lot to solidify Gunpey as a tribute to such an important figure in video game history. Moreover, it shows the shape of things to come when Mizuguchi gets to overhaul an existing license.

In 2018, Mizuguchi’s most recent company, Enhance Games, released Tetris Effect. Finally, he was able to realize his dream from 2003 of Rez meets Tetris. By now, of course, Mizuguchi knew how to use music and pacing and trippy visuals to play with the player’s flow. It’s likely far more fair at this point to call it Lumines meets Tetris. The Tetris Company holds rather tight control over their licensing, and games made since 2001 largely have to adhere to something called the Guideline. The Guideline has changed over the years, but what hasn’t changed is a fundamental goal of standardizing the Tetris experience. Mizuguchi’s vision didn’t really include the Guideline. By default, pieces are all the same color, there’s only a single next piece shown, and if you play through the entire Journey mode, you’ll never hear Hydelic do a rendition of the Russian folk song “Korobeiniki”. Originally released as a VR title, it’s an incredibly immersive experience, enhanced by the fact that it breaks so many of the generally inalienable rules of the game. It’s an astonishing accomplishment, a decades-old vision of what Tetris could be.

Earlier this year, Tetris Effect was updated with a multiplayer mode, released as Tetris Effect: Connected. Earlier this month, Connected came to the Switch. My first experience with Tetris Effect was on a friend’s VR rig. I didn’t get to spend too much time with it, and I was left feeling quite confused. The experience was incredible, and the level of immersion was almost overwhelming at times. I played quite poorly, in part because of being overwhelmed but also largely due to the aforementioned Guideline omissions. In particular, I am used to pieces adhering to the Guideline colors. I rely on detecting the colors of Next and Held pieces in my periphery as a core gameplay mechanic. I felt quite lost without this visual cue; the fact that there was only one Next piece barely even factored in when that Next piece was, in practical terms, invisible to me.

Despite not entirely knowing how I felt about that experience, I bought it as soon as I woke up on the day it came to Switch. I’ve always been an Endless Tetris player rather than one who aims for the 150 line clear Marathon mode. Preferring this endurance experience, I was a bit taken aback that the standard mode – Journey – was a finite run. I played through it at normal difficulty and one-credit cleared it on my first run. I still wasn’t entirely sure how to feel. I started a run on Expert mode and botched it fairly early on. I poked around and found the Marathon mode, found out that there was an Endless mode. I also found options to play with Guideline colors, and expand the Next pieces to four. I went back to Journey mode on Expert. I was confused by the fact that drop speed would bounce around wildly instead of progressing in a linear fashion.

By the time I 1CC’ed Expert mode, I got it. The bouncing around of the timing was classic Mizuguchi, with lulls placed as a brief respite before hammering the player with 20G. Even more than Lumines, the game interacts with the player by manipulating their sense of flow. “Even more than Lumines” became a bit of a running theme. Even more than Lumines, the tetriminoes (in their default, uncolored state) and the background are inseparable pieces of one another. Even more than Lumines, gameplay is a narrative journey. Even more than Lumines the music goes beyond a flow state and makes emotional response an integral aspect of gameplay. It’s sappy as hell, but when the playfield is filling up toward the end of the run and Look Up starts playing, it’s incredibly empowering. Finishing the final three Zone modes of a 1CC and hearing Kate Brady5 sing “What could you be afraid of?” one last time makes me feel accomplished.

1CC’ing Tetris Effect in Expert Journey mode has quickly become my favorite Tetris experience. In some ways, I wish there was an Endless Journey mode – one of my most satisfying video game experiences is to spend hours in an Endless game of Lumines. But I understand the significance of calling this mode ‘Journey’. It has a structure, and that structure has an end. I switch between color modes regularly now; one mode helps me get better at Tetris while the other is a more immersive experience.

I marvel at Mizuguchi’s ability to develop things with the amount of foresight that he has. He seems to have grand, improbable ideas that he’s able to make play out decades later, when said ideas become probable. I wonder what Q Entertainment would’ve done in 2004 if they had access to the Tetris license. There’s an almost paradoxical timeline at play where Tetris Effect seems fully inspired by a game that wouldn’t exist had the game that Tetris Effect wanted to be fifteen years prior been allowed to exist. I hope Mizuguchi goes on to do more great things, but this game feels like such a triumph. A decades-long journey wrapped in a narrative disguised as a casual block game. It’s Tetris that makes you feel like you’ve just overcome something significant.

I have written about Tetris before, and I likely will again. I initially intended for this post to be even longer and more even more of a ramble. There are so many bits beyond the core game that are worth reviewing on their own. I may make this post yet, but it doesn’t really seem relevant to the feeling I wanted to convey here. I guess the TL;DR is that it’s very good. There are a lot of modes, and they are all very very good. But the real meat of the experience is in its Journey mode, and I doubt this interpretation of Tetris will ever be topped for me.


  1. Eurogamer 2015-02-08 ↩︎
  2. What Mizuguchi is describing is, I believe, a more immediate phenomenon than the Tetris effect. However, based on nothing but my own experiences with these games and how they affect my understanding of shapes and patterns, I don’t really believe you can have one without the other. ↩︎
  3. It’s actually more complicated than this. Much like Tetris, there isn’t just a single speed. There are, I believe, some additional timing matters, but the most obvious differentiation is that between the drop rate and the speed of the Timeline. The Timeline is what clears blocks, so a slow timeline combined with a fast drop rate can lead to an incredible buildup of blocks on the playfield. ↩︎
  4. Q Entertainment also released a version of this updated Gunpey for the Nintendo DS. It also clearly takes inspiration from Lumines and other Q titles, but it’s aimed at a younger market and doesn’t quite realize these inspirations in the same way as the PSP release. Around the same time, Bandai/Namco released a mobile port as well, but I don’t believe Q was involved with this one. ↩︎
  5. Brady records as Kathleen now. ↩︎

A few of my favorite: Woodcased pencils (with erasers)

Throughout this piece, I link to products on CWPE. This post has been a couple of months in the making, and in the midst of my idleness, CWPE announced that they’re closing down in 2021-11. I’ll try to find other stockists in the future and update the links, but at least two of the recommendations were exclusive to the shop, so… all around disappointing.

I have a Thing I’ve been meaning to start trying to write and draw. And while I keep failing to start trying in a meaningful sense, I have done the most important first step – going through a bunch of my woodcased pencils, buying a couple more to try out, and figuring out what still feels best to me. You get more of a selection, and a better selection if you go for pencils without that nubby little eraser on the end. This is doubly true for myself, someone who prefers a lead density much softer than 2/HB. But, there’s something aesthetically and functionally lovely about an eraser-ferruled pencil, and that’s what I’ll be centering this post on.

That said, I don’t personally think there’s a huge amount of difference between pencils; this won’t be the meticulous examination that any pencil blog has to offer. But, I know that a Musgrave 320 has edges that are too sharp for me to comfortably grip, and I know that the lead on a Blackwing Matte has a tendency to crumble in an unpleasant way. Also, and of far more importance to this post, I know I prefer the sort of rough feel of raw wood vs. paint/lacquer, I know I prefer somewhat rounded/triangular grips vs. purely hexagonal, and I know I prefer softer/darker densities of lead. My favorites, listed here, will reflect this.

Faber-Castell Grip 2001

These pencils are things of beauty. They’re a pleasing, soft grey with black accents in the grip, text, and ferrule. The ferrule and eraser are perfectly triangular to match the triangular body of the pencil. Most high quality woodcased pencils are made of cedar; these are made of Jelutong, a wood which is lighter and sharpens quite cleanly. I love everything about this pencil – except for that grip. Each side of the top 23 or so of the pencil is covered in these raised, rubbery dots. They’re not very soft, to the point that they hurt to write with after just a short period of time. Faber-Castell claims that they afford “a secure, non-slip grip,” which… is not a problem I’ve ever needed to have solved. I’ve never experienced a pencil so slippery that holding it securely is an issue. Maybe this problem manifests in a particularly slippery environment, but I think the overall texture of a pencil is pretty much solved. It’s doubly a shame because the matte varnish they use feels so good to the touch, about on par with the nicer raw pencils I have. This pencil could easily be at the top of my list, if not for those little nubbins. Hardness wise, Faber-Castell labels these a 2 12 (which is charming) or HB. It is likely the second-hardest lead I’ll discuss in this post, but it does write smoothly. I just wish they’d do away with the grip.

Moon Futura

This is specifically the modern version of the classic Futura pencil. It is, essentially, the pink version of the Try-Rex. It should be obvious from the design of this blog that I appreciate the existence of, and prefer, this pink version (pink down to the ferrule!). At any rate, the thing that sets the Try-Rex apart is the shape of its body. It’s a hexagon, but with three of the faces rounded (in an alternating pattern – flat, rounded, flat, rounded, flat, rounded). This makes all of the curves smooth, and the narrowness that the rounding adds gives the body a very triangular feel. In fact, it seems to give the illusion that it’s a hexagon smushed into a bit of a triangle, but if you measure the edges, it’s at least quite close to being a regular hexagon. It just… bulges, like all great shapes. The lacquer is smooth but lightly tacky, and this combined with the Try-Rex shape makes for a pretty comfortable hold. I do, of course, prefer a raw or at least matte finish, but for a glossy lacquer, it’s nice. And pink. Moon’s lead is some of my favorite lead; its ‘Soft 2’ is certainly on the darker side of a 2, and it’s clean and smooth.

General’s Cedar Pointe

This has long been my favorite woodcased pancil. I can get it in a lead hardness of 1, it’s raw cedar, and it has an aesthetically-pleasing black eraser, ferrule, and text. The raw finish is very smooth while still having a grippy texture. It’s hard to explain this, but I tried a Mitsubishi ‘Master Writing’ 9852EW1, made of spare wood bits2, and the feel was just rough. We’re not talking about splinter-level here, these are all made to be held in bare hands of course. But that’s what makes it hard to describe, these differences are subtle but noticeable on an object that one forms an intimate connection to. At any rate, the Cedar Point feels better to the touch, which is why it’s on this list and not the harder-to-acquire Mitsubishi. Moon makes a bare pencil3, as does Musgrave; both of these feel about the same as the Cedar Pointe, I’d be happy using either if I couldn’t get the General’s. But everything about the Cedar Pointe just feels right to me, and it remains my ‘daily driver.’

CWPE Bridge Pencil (made by Musgrave)

This is my purse pencil. Bridge pencils are skinnier than normal pencils and while I’ve historically had a few vintage ones kicking around, I’m glad that CWPE got Musgrave to produce a modern version4. There’s not much else to say about this one – the lacquer is fine, the lead is fine, overall it’s just fine. But for slipping in a slim pocket of a bag, a skinny pencil like this is great to have. I keep it sharpened to a very short point using a Kutsuwa T’GAAL sharpener; shorter points are considerably more durable5.

Staedtler WOPEX

Staedtler WOPEX pencils are made of a wood-fiber composite6. I’ve used a few other non-wood woodcased pencils over the years (like some of the early attempts at recycled cases by Skilcraft) and they were all… bad. Primarily, they were miserable to sharpen and very bendy. The bendiness meant that the lead often broke, or that weird leads had to be bonded to try to mitigate the problem. I expected WOPEX to not be much better, but… it’s honestly pretty good. They’re slightly harder to sharpen than cedar, but not much. They’re much more rigid than older attempts at this sort of thing7. The lead used – essentially the same sort of lead used in mechanical pencils – is harder and lighter than I like, but it’s smooth and strong. I might use these as a ‘daily driver’ if they put a softer lead in the eraser-clad version, but for the time being I love these as a pencil to throw in a toolbox or a bag of miscellanea8. Again, with a short point for durability.

Musgrave Tennessee Red

Most decent pencils are made from incense cedar. Incense cedar, despite its name, does not have the strong fragrance that I tend to associate with cedar. The Musgrave Tennessee Red is made of aromatic red cedar, and it smells delightful. Unfortunately it’s lacquered and not unfinished; were it bare, it would easily take over the Cedar Pointe as a daily driver. But the lacquer is comfortable enough to use, and the rest of the pencil does what it’s supposed to, so it’s enough for me to keep one around, uncapped, in the pencil case as a backup that makes things smell great.


  1. ‘Master Writing’ and similar grades on many Japanese pencils are a holdover from classification and labeling regulations. ↩︎
  2. While these are joined pieces of scrap wood (the joins make for a neat aesthetic!), my understanding is that it’s scrap wood from their pencil factory. It’s not just random wood from wherever, it’s pencil-grade wood. ↩︎
  3. I have only seen these sold by Amazon and eBay sellers, and J.R. Moon doesn’t even seem to have a website. I therefore don’t have a link I’m comfortable including. ↩︎
  4. Sigh. ↩︎
  5. I don’t understand the long point obsession. Aesthetically and functionally, I prefer a short-medium point. The T’GAAL is a great sharpener for varying point length, but my go-to is the same brand’s 2 Maiba, which quickly gets me a nice medium point via a two-blade configuration. ↩︎
  6. I expected this to still just basically be plastic, but I burned a bunch of shavings and now I feel like there has to be a fairly high percentage of wood. It burnt rather than melting, and smelled more of burning wood than burning plastic. Anyway, don’t try this, but it was interesting to me. ↩︎
  7. They’re heavy, too. In my unofficial measurement, an unlacquered Uni 9852EW weighs 4.5g, a rather basic lacquered Musgrave 320 weighs 5.8g, and the WOPEX weighs a whopping 9.1g. I actually really love this extra weight. ↩︎
  8. The Apsara Absolute is often referenced as a go-to for this sort of thing, but I’ve had mixed luck with them. They’re certainly interesting pencils, but in my non-scientific tests, the WOPEXes are just stronger. That light lead, though… ↩︎

On Heathcliff and hackish image manipulation

This should probably just be two posts, but it’s been months since I posted anything and I’m just going to go for it. But if you just want to see me talk about a terrible bodge-job of a shell script, scroll down a bit.

For a while I’ve had this idea to start a Twitter bot that posts a strip made up of a random Heathcliff panel paired with a random Heathcliff caption. There are a few reasons for this, the first of which is that under Peter Gallagher’s tenure, Heathcliff has gotten… weird. Recurring themes include friendly but inexplicable robots, helmets that communicate what their wearer is thinking (maybe?), the Garbage Ape, the magical levitating properties of bubblegum1, the meat tank… the strip has gotten to be a real experience for every possible state of the human mind. But more importantly, the strip tends to follow a handful of rules. The vast majority of daily strips are a single panel, have Heathcliff in them, and have a caption that is spoken by some non-Heathcliff entity. Generally, there are at least two entities grouped together in the scene, one of whom is speaking the captioned text to the other. Often this is Grandpa and Grandma Nutmeg, Grandma Nutmeg and Mrs. Jablonski, Iggy and Willy, two random birds, two random mice, two random fish in a fishbowl… it’s rarely terribly significant who is speaking, just that someone is commenting on the scene in front of them.

All of these rules mean that, just in a sort of technical, editorial sense, most captions should basically work with most panels. My theory was that since they largely are technically compatible, and since the strip largely exists in this curious space, that this experiment would likely work in more ways than one. I ended up not going full bot with this experiment; ensuring that good, comprehensive alt text was present was a high priority, so every post on Heathcliff Stew is created manually and scheduled ahead of time. This is also important because my script is quite imperfect, with about 10% of attempts resulting in failure modes including entire strips being inserted instead of mere captions, cut off captions, and double captions. Since I have to intervene anyway, I have simple rule of my own: I don’t curate. As long as a strip doesn’t meet one of the failure modes, I post it. I have made a couple of exceptions, where I thought the combination of panel and caption could have potentially been offensive or insensitive; if I have even the slightest iffy feeling about it, I just… don’t have to post it. But otherwise, everything gets posted.

This was important to me, because I don’t think curating out only the good ones is… fair, exactly? I think that the idea that the Heathcliff world is strange enough that this often works is very funny, and in fact, I often have to double-check that I’m not actually working with a failure. When the strips are good, they’re very good. But the world of Heathcliff still has rules and norms and plenty of the randomized strips simply aren’t good. I think it’s only fair to the land of Westfinster to post these Ls alongside the bangers. In a recent interview, Peter Gallagher said,

There are a couple of other [Twitter accounts] – and I appreciate anybody who’s doing stuff – but there are guys who are just taking random Heathcliff comics and putting different captions on them. So they make absolutely no sense. I’m like, “Hey, come on.”

I kind of laughed when I first read this, but it gets to the heart of why I don’t want to post just the good ones. When the comics work, it’s a testament to the consistency of Gallagher’s bizarre vision of Westfinster, but if it worked all of the time, it would kind of just… dismantle that and reinforce the belief that Gallagher-era Heathcliffs are inherently random in design. And that’s not the reality of the situation. I don’t know, if you read this blog, you probably realize that I’m not a huge fan of artists having inalienable control over their work. Gallagher certainly didn’t seem to be trying to assert that, just expressing disappointment. I’d like to think that I’m exploring this world in a way that doesn’t disappoint, setting parameters that are at best clever détournement and at worst… what you’d expect out of a random comics machine.

About that machine…

So, the script itself. It’s an incredible hack that I don’t really want to post, but I learned a couple of things while trying to figure out how to do this in an incredibly hackish way. The key to hacking this together was Hough Lines detection, specifically the tool for this built in to ImageMagick. First we use a basic raster-based edge detection algorithm to reduce our image to a 1-bit representation of edges. The Hough Lines detector takes this and attempts to find lines, which it crucially saves out as vectors. The result is something like this (source):

Hough line transform: 130x2+150 218 184 169 197 216 230 190 234

What’s important here is that we have a plaintext vector format describing a bunch of lines. More on this format (MVG) later, but it’s essentially a simplified version of SVG. This means with some hackish parsing, we can find the line that is (hopefully) the bottom of the panel frame, and split a strip into its panel and its caption. Originally I was just trying to detect the lowest horizontal line, but this caused a fair few failures where the caption was dense enough to cause erroneous line detections. I improved my success rate by just discarding lines that weren’t at least ten pixels or so high. Here’s the current version of this embarrassing script:

#!/bin/zsh
a=$RANDOM
b=$RANDOM
c=$RANDOM
d=$RANDOM
[[ -z $2 ]] && fullDate[1]=$(date -d "August 30, 2004 +"$(echo $a $(date "+%s") "1093838400-604800/%p" |dc)" weeks +"$(echo $b "5%p" |dc)" days") || fullDate[1]=$2
[[ -z $3 ]] && fullDate[2]=$(date -d "August 30, 2004 +"$(echo $c $(date "+%s") "1093838400-604800/%p" |dc)" weeks +"$(echo $d "5%p" |dc)" days") || fullDate[2]=$3
for i in 1 2; do
	temp[$i]=$(mktemp)
	shortDate[$i]=$(date -I -d $fullDate[$i])
	curl -o $temp[$i] $(date -d $fullDate[$i] "+http://picayune.uclick.com/comics/crhea/%Y/crhea%y%m%d.gif")
	mogrify -resize 300 $temp[$i]
let "targetHeight[$i] = $(identify -format '%h' $temp[$i])-10"
convert \( $temp[$i] -canny 0x1+10%+30% \) -background black -stroke red -hough-lines 130x2+150 mvg:- | grep -oP '(?<=line 0,)[^. ]*' | sort -nr | while read -r j; do
	[[ $j -lt $targetHeight[$i] ]] && let "crop[$i] = $j + 1" && break
	done
done
outFile=$(echo $1"."$shortDate[1]"+"$shortDate[2]".gif")
let "caption = $(identify -format '%h' $temp[2]) - $crop[2]"
convert $temp[1] -crop 300x$crop[1]+0+0 top/$outFile
convert $temp[2] -crop 300x$caption+0+$crop[2] bottom/$outFile
convert \( $temp[1] -crop 300x$crop[1]+0+0 \) \( $temp[2] -crop 300x$caption+0+$crop[2] \) -append $outFile

[[ -e captions.txt ]] && printf "ID $1\nPanel: $shortDate[1]\nCaption: $shortDate[2]\n($1)\n\n" >> captions.txt
sleep 2

Nobody should try to learn anything from this (well, maybe the Hough Lines trick). I start out setting a bunch of variables to $RANDOM, because zsh handles this environmental variable in an odd way; only certain things trigger a reseed, so just manually making the four random numbers I need is a surefire way to ensure I actually get… four random numbers. From here, I generate the random dates I need, assuming I haven’t passed them as arguments. Since this is just for me, the arguments are not parsed with any intelligence; $1 is always a prefix for the filename, $2 is always a panel to force, and $3 is always a caption to force. I test for $2 and $3 with -z, which checks for a zero-length string. A problem I was worried about here is how to do a random panel with a forced caption – if $2 is blank, then what we want as $3 will simply become $2. This is trivially hacked around, however, test.sh '' test will pass a zero-length string to $1 and “test” to $2.

Parsing the dates was, as always, a wild ride. GNU date tries to interpret the dates passed to it in a sort of magical way2. This isn’t documented in its manpage, and is only sort-of-kind-of documented in info. Fortunately, it’s easy enough to say August 30, 2004 (the date of the first Gallagher strip) + 420 weeks + 3 days. I generate two random numbers for each date so that I can do it in weeks/days format; this allows me to easily ensure I’m only getting strips from Monday through Saturday. Typically when I use date, I’m either fetching the current date or tomorrow. Every time I have to do something more complex with the utility, I run into this matter of trying to figure out what does and doesn’t work with its input schema, and as per usual, I don’t feel like I learned anything of material value this time. For forced dates, I just pass the unaltered values of $2 and/or $3. Fortunately date accepts ISO 8601 style YYYY-MM-DD dates, so I’ve been opting for this.

Unlike its input, date’s output formatting is well-documented. Helpfully, it allows any arbitrary text to be output along with the date variables, presumably so you can do something like %Y-%m-%d. I exploit this convenience, however, to format the entire URL of the strip image to download with curl. Once the two images are downloaded, I ensure they’re the same width (most of the Heathcliff strips seem to be 300px wide, but I’ve run into a few that aren’t, which obviously causes a problem when the two images don’t match) and then do the Hough Lines detection. ImageMagick’s MVG format is pretty easy to parse:

# Hough line transform: 130x2+150
viewbox 0 0 300 360
line 0,0.5 300,0.5  # 218
line 0,3.5 300,3.5  # 184
line 1.5,0 1.5,360  # 169
line 293.38,0 299.664,360  # 197
line 295.5,0 295.5,360  # 216
line 298.5,0 298.5,360  # 230
line 0,328.5 300,328.5  # 190
line 0,331.5 300,331.5  # 234

The lines are essentially ordered top-to-bottom, and horizontal lines are always going to start with line 0. My original naïve approach just grepped all such lines and took the last one, but my slightly-more-optimized approach iterates from the bottom up until one is at least 10 pixels from the bottom. I can probably optimize this better, as well as some of the values in the Hough Lines detection3. From here it’s a simple matter of mashing the two halves together.

All in all, for this sort of lightweight image detection task, ImageMagick’s tools are useful enough to hack together a good-enough shell script. Would I have been better served learning some actual image detection libraries and scripting something in Lua or Python? Probably, but I also likely would’ve gotten bored and given up before coming up with something useful. And ultimately I learned a few things about ImageMagick, I learned that when lazily parsing arguments '' counts as a zero-length yet extant string, and I learned that for hacks and code golfing purposes, date’s output formatting lets you go wild with arbitrary characters. Also, I’ve realized that the simplicity of ImageMagick’s MVG format could make it useful for going in the other direction in the future; generating MVG code in a script (or by hand) seems trivial compared to SVG. I still insist that anyone looking at my script above only use it as an example of what not to do, but it does the job I need it to with a success factor that I’m happy with, and I learned a few new tricks. Plus I can get a random Heathcliff any time I want.


  1. This might have started as a George Gately thing, tbh. I know a lot of Heathcliff history, but I haven’t dived into the deep end on this one. I just feel like I remember this as an older gag. ↩︎
  2. I haven’t used a BSD system in a while. I know BSD date is different, but I don’t remember off-hand if its input schema is as vague and reliant on heuristics as GNU’s. ↩︎
  3. Notably, this script has a massive failure rate if I try it on Marmaduke strips. These parameters don’t work generally, and need to be tweaked for the task at hand. ↩︎

Sony's resin tubes

Sony has a history of making ‘lifestyle’ consumer electronics alongside their more boring, everyday items. From the 1980s My First Sony line designed to indoctrinate children into brand loyalty1 to the beautiful clutch-like Vaio P palmtop, the company has never been afraid to experiment with form, function, and fashion. Occasionally, they’ll release wild products like the XEL-1 which read like concepts but actually get released, albeit at silly prices.

One such item was the made-to-order NSA-PF1 ‘Sountina’, a six-foot tall speaker released in or around 2008. It wasn’t sold in the United States, but a 2012 archive of an exporter’s site shows that you could acquire one here for a cool $17,000. It’s a beautiful device, with some relatively traditional-looking speaker stuff holding up a glowing resin tube. This tube, which Sony likes to call ‘organic glass’ while plastering the product with disclaimers instead of just admitting that resin is itself a very cool material, serves more than just a decorative purpose: it is vibrated from below to act as the unit’s tweeter. A longstanding issue with loudspeaker design is that high frequencies are extremely directional, leading to ‘sweet spots’ where listeners have to be positioned. A cylinder that radiates high frequencies out at all angles is a clever approach to solving this issue.

The Sountina was clearly an extravagant R&D display by Sony; I would be shocked if they sold more than a handful. Truthfully, most people who can drop five figures on their loudspeakers aren’t going to have Sony at the top of their list. But if we fast-forward to around 20162, Sony released something more attainable, albeit something that was still largely an impractical lifestyle objet d’art. This something was the tabletop LSPX-S1 speaker, still described as a ‘Glass Sound Speaker’ with asterisks upon asterisks explaining that ‘glass’ means ‘organic glass’, and ‘organic glass’ means ‘resin’. This unit retailed for around $800, was mass-produced, and did make its way over to the U.S. The model number is notable here; alongside the LSPX-S1 was the LSPX-P1, a short-throw projector. Both were announced as part of a marketing initiative called ‘Life Space UX’3. Foreshadowed in an interview about the Sountina, the LSPX-S1 has a warm filament-style LED toward its base, making it resemble a lantern more than a speaker.

These sold in some quantity, at least, as they’re abundant on eBay. But there isn’t much in the way of user information on them out there, and I suspect that’s because yet again… if you’re plonking down $800 for a Bluetooth speaker, you’re probably not looking to Sony first. Doubly so if you want to make a stereo pair. Last year (I think?), Sony improved on this issue somewhat with the $450 LSPX-S2. This is still an expensive lifestyle device, and therefore one with little information out there, but with some finagling I managed to acquire a display unit for a very good price. If you’ve made it this far, let’s talk about the LSPX-S2.

Actually, no, sorry. Before I can talk about this little resin tube, I need to talk briefly about my taste in loudspeakers so that we’re on the same page. I’ve been looking for a bedside unit, and because of the way my bed is more of a living space than a sleeping space, a 360° tweeter device has been appealing to me for a while. I had been tempted by the SoundMatters Upstage360, especially once new units started popping up for half price or so on eBay. This, of course, was also rather suspect though, and while SoundMatters is a company I’ve owned and enjoyed a number of products from, the comments on the Kickstarter didn’t paint an image of confidence. To switch gears for a second, I do not like multi-way speakers. My ‘real’ hifi system has Audience ClairAudient 2x2 loudspeakers, which use 4 full-range drivers each for the sake of efficiency. There’s no crossover, no sense of tweeter/midrange/woofer, and this is how I like it. I have always had a problem with cohesion in multi-way loudspeaker designs. Yet, I accepted when thinking about the Upstage360 that this would be unavoidable, and given how few 360° speakers are out there, I was willing to try a two-way design with the Sony as well. One final preference of mine that the Sony does make use of is a passive radiator design in lieu of a bass port or the like. I only mention all of this because we all tend to have different things that we want out of audio. I want full, but not booming bass. I’ll take cohesion over inaudible frequency response. With this product, specifically, I’ll compromise things for omnidirectional sound.

While I don’t care about packaging, the LSPX-S2 is certainly packaged like a lifestyle product. The outside of the box has a silhouette of the speaker on it, which… given its shape and size, really makes it look like the packaging for a magic wand4. The manual harkens back to the Sountina’s, in a way – Sony proudly gave the Sountina a full-color manual to set it apart, and while the LSPX-S2 is not this, it does have two rather chic spot colors (a sort-of pink and a sort-of brown) in addition to black, and it’s laid out in a much more… friendly fashion than most. The friendliness hurts more than it helps, but overall the manual is fairly extensive. This is important because the unit has Bluetooth, which can be paired traditionally or via NFC, as well as some WiFi functionality, and an app to control some of the more complicated bits. The WiFi can be tied to a UPnP server on your network, which I may try at some point, or Spotify Connect, which I will never try because fuck Spotify. The app also lists a handful of services like YouTube and Soundcloud, but I think these just… launch those respective apps? All in all, the app is pretty terrible, but I’m primarily concerned with using this as a normal Bluetooth and analog line-in speaker.

As a speaker, it’s… pretty good! It’s certainly still not $450 good, but it does a few things very well. First and foremost, the omnidirectional resin tube thing works. And a lot of music that I enjoy sounds excellent on it. The mids are lush, and the bass is present… obviously not a room-shaker, but it doesn’t feel like it just cuts off at the low midrange. Treble is where things get a little bit tricky. I do think some of that lack of cohesion that I mentioned earlier comes through, particularly on very busy, wall-of-sound type recordings. In these instances, highs just feel a bit detached from the traditional loudspeaker to my ears. The treble can also be very peaky; higher-register vocals can be a bit harsh, and sibilant sounds kind of feel like they might shatter the glass tube, if it were actually made of such a material. But most well-recorded, well-mastered stuff sounds quite nice; instrumental music, be it acoustic or classic synths tends to sound excellent. Which, for me at least, fits the use-case of a mono5 omnidirectional speaker – it’s a chill background-music machine.

This background aspect also fits its candlelike aesthetic. While the LSPX-S1 had a quaint filament-style LED at its base, the LSPX-S2 has a warm LED that fires up into a clear dish of sorts to create an effect much like a tea-light. You can adjust the brightness of this, though it never gets brighter than mood lighting. Likely a better setting is its candle mode, which flickers gradually at random. This combined with the way the LED is configured makes for a really lovely little bit of mood lighting. I have returned to my room after an hour away and nearly scolded myself for leaving a candle lit. It’s a lovely look.

Finally, a few notes on UI. The app, as mentioned, is bad. It lets you control things like brightness, which is nice, though fortunately unnecessary. Even if the app was great, it’s best to assume these things don’t exist, because some day they won’t and… well, at that point you either have a functional product or a brick. On the unit, there are buttons both around the base of the unit, and under the unit. The controls on the outside are power (also used to switch candle mode on/off), push-to-play, and volume up/down. The push-to-play is the most meh of these, as it seems to pretty exclusively rely on Spotify, but I’m glad the power is available without lifting the device up. Under the unit are controls for pairing, brightness up/down, adding an additional speaker(s), and a shared button for a sleep timer and WPS. The sleep timer is a nice feature, though I wish it was on the outside of the device. Since the buttons are neither tactile nor lit, if you’re heading to sleep and your only light source is the dim LSPX-S2 itself… well, it isn’t very easy. The buttons on the outside of the device are barely raised, but the buttons on the bottom are not at all. They’re also a bit mushy, so even when you can see where you’re pressing, it doesn’t feel reliable. Last thing about the buttons – it’s nice that the power, etc. are on the outside, but they are so close to the bottom that you almost need to lift the device anyway. All in all, I’m glad Sony gave the LSPX-S2 as many physical buttons as they did; you can control everything important without the app, and the controls basically all make sense. The UX isn’t ideal, but in 2021… well, I’ve seen much worse.

I hope that Sony makes an LSPX-S3, or perfects the process on the LSPX-S2 such that it’s closer to the $200-250 range. It’s a nice luxury device that fills a lifestyle niche that Sony has always dabbled in; but you’re paying largely for this, it just does not sound like a $450 speaker. This said, there aren’t many speakers out there that fill the omnidirectional mono niche, so for a situation like mine… well, I’m glad I got a banger of a deal on this weird little resin mood light. It’s a truly pleasant ambient device.


  1. Okay, this is a little harsh. I mean it’s true, but it’s also true that children have different usage needs than adults, and things like volume limiters, simple controls, and rounded edges do genuinely make for a better product for a child. I don’t know that anyone else was doing this at the time with real electronics that were based on and ultimately worked as well as their adult counterpoints. ↩︎
  2. It’s hard to pinpoint exact dates on these products that got more attention as press releases and trade show items than actual, in-home reviewed products. ↩︎
  3. There’s not much to look at here, and the stylesheets have gone poof, but the WayBack machine has a snapshot of Sony’s Life Space UX page. ↩︎
  4. The sex type. ↩︎
  5. If you get two of them, you can configure them as a stereo pair. ↩︎