January 2023


Japanese Web Design

There is a dissonance I’ve heard brought up more than once. It goes something like this: Japan is this beautiful place, renowned for cleanliness, simplicity, and sparse, orderly design in physical spaces. But digital design out of Japan is cramped, cluttered, and garish. Why? Someone, presumably named Sabrina, has published some research into this at […]

This is the kind of weird crap I would write in college.

I’d open up Adobe Illustrator and make something like this: I have absolutely no memory of writing this one in particular, but there are piles of it and remember some of them. I had no particular vision here, nor is there any deeper meaning. I was just trying to be funny and weird, and missing […]


10 Years of Meteor is a very interesting retrospective from Sacha Greif. Calling it a retrospective might make it sound like Meteor is dead, but it’s not. I’d say it’s fallen out of favor, but that’s not quite right either: Meteor was never particularly popular. What it was: pretty darn innovative. Meteor had serious fans […]

Open Graph Blues

Terence notes that the Open Graph Protocol is… if not dead, abandoned. That sucks, because OGP is still clearly very useful. It’s this HTML stuff: For example, Apple’s iMessage uses those tags to make rich previews in message threads. People love the concept of rich previews and even innovate around it, making it better for […]

Yaml, JSON, Toml

A great bit of technical writing from Ruud van Asseldonk: The yaml document from hell. Ruud shows one bit of yaml configuration and then shows off many problems that arise all over it. It is mind-blowing to me how nuanced and tricky it all is, to the point that I’m nearly convinced nobody should use […]

Un-Encoded SVG Backgrounds in CSS (Also, Writing CSS in CSS lolz)

I found this little aside in a Charlotte Dann article interesting: Historically you’d have to URL-encode the SVG but I found that in all modern browsers encoding is unnecessary as long as it’s free of #s (HSL for the win!). Encode your files with this tool for extra safety. So you can put the SVG syntax like directly into […]

Philips Hue Sync

When I picked up my new TV at Best Buy recently, first, I strolled through the TV section for kicks. A Philips Hue Strip ($256) caught my eye and I went for it. You use sticky pads to stick it to the back of your TV and it makes colored light. The whole deal with […]

Musing Upon an [alt] Text Badge on Images

The Mastodon instance I’m on has a little custom CSS applied to it which shows a visual [alt] badge on images that have an alt attribute: And as a little light shaming, a [no alt] badge on images that don’t: Sorry about mine there. It appears there is some kind of bug with the Share […]

You Like It Because You Know It

If you can play a song on an instrument, you probably like that song. You’ve gotten to know it. You’re part of each other now. Tech can be like that. I have my own little bag of technologies that I know fairly well, so I like them. I like them a little more than technologies […]


My brain has a strong desire to crown a winner of technological choices so I can choose it when options come up, or at least have a strong, consistent algorithm for the choosing. So now that CSS has a bunch of new color options, my brain is trying to do that crowning. It is helped […]

What does it take to make a JavaScript framework?

Dave made a list. It kinda sounds like he’s kidding, but no β€” that’s what it takes. And because these exist in the front-end and open-source space, the ability for organizations to “make it” is tough. You likely need the VC (or a corporate overlord) to have the resources to do all this, but how […]

Optimism Hour

Tom MacWright talks about some of the decidedly good things happening in web development. In the not-so-recent past, when I was writing server-side code, I’d have to use a module like request to handle HTTP requests, the querystring builtin or the qs module for decoding query strings, and url.parse() for parsing URLs, and moment to format dates in English. Today, none of those problems require, […]

Dark Mode via a Smallish Script in the Head, Avoiding FART

One of the ways you can offer Dark Mode / Light Mode on a website is to totally honor the system preference in CSS alone. So like… That’s fine, I suppose, but it’s not very fun. It’s way more fun to have a UI toggle that users can use! Plus, it’s possible that even if […]

HTML Attributes For Very Specific Third-Party Reasons

From Nicholas C. Zakas’ newsletter: The QA manager for my team at Yahoo stopped by my cube one day. “We need you to stop changing CSS classes in the HTML,” she said. I found this request odd. After all, we use CSS classes to apply styles to different HTML elements. I couldn’t imagine why QA […]

Coding Fonts I’d Actually Use

I made a microsite one time that showcased fonts designed for coding. I had some standards for it β€” it wasn’t just any ol’ monospace font. They were all monospace and of good quality, and in most cases, specifically designed with code in mind. Still, there were 46 of them all told, and to be […]

Scalable CSS

What is the best scalable CSS approach? First, what does scalable CSS mean? To me: So what is that approach? I dunno β€” that’s for you to choose. I will say that hand-written vanilla CSS files are a perfectly fine option. You can achieve all of this, including the scaling part, without any tooling, which […]


Cory Doctorow: Theoretically, there’s a way to avoid the app store chokepoint: web apps. These are part of the HTML5 standard, and if a browser fully implements that standard, then developers can make a self-encapsulated “app” that’s delivered in the browser, complete with an icon for your home screen, capable of doing anything an app […]

Intuitive List Item Transitions with the View Transitions API

While I was trying to remember the name of this concept where a list of items uses animation to “open up” and make room for another list item to animate in, I thought of the name “Intuitive Transitions.” The idea is that your brain understands exactly what has happened to this list. If the new […]

Back to Top ⬆️