The Sony A95K is a Pretty Darn Nice TV

I wrote about The Perfect TV for 2022 recently, but it wasn’t a shout-out to any particular TV. It was just a list of things I think would be ideal in a TV these days. Some of the things I listed are just a pipe dream, like a TV that has literally no user-facing software […] | Continue reading


@chriscoyier.net | 1 year ago

Farewell, An Event Apart

I friggin missed what turned about to be the very last An Event Apart (AEA). No tears though, just a salute to a legendary run. September 2013 was my first AEA ever, in Austin, Texas. It was a huge moment for me. In my mind, AEA was the top of the top for our industry […] | Continue reading


@chriscoyier.net | 1 year ago

Another Way to Think About The Spectrum of Testing from Alex Riviere

I tried to disambiguate Integration Testing from End-to-End Testing the other day. It was helpful for my own brain to finally have a way to bring a meaningful difference between these two things. I wrote: Unit and end-to-end tests are the extremes on two sides of a spectrum. On t … | Continue reading


@chriscoyier.net | 1 year ago

Motivation and Kickstarter

It was over 10 years ago now that I did my first and only Kickstarter campaign. The point of it was to shoot a series of screencasts on rebuilding/redesigning CSS-Tricks itself, a WordPress site, and giving the backers access to those videos. Meta, as even building those access c … | Continue reading


@chriscoyier.net | 1 year ago

Watch Out for Low Resolution Writing

From Karl Sutt’s post How to communicate effectively as a developer, two images: The images on the left are what Karl calls “low resolution” writing, while the right is “high resolution.” Pretty obvious when you look at it here, but high resolution essentially means more specific … | Continue reading


@chriscoyier.net | 1 year ago

In Which I Try To Recreate The Vibe of Backstreet Girl as Played on a Old Vinyl

A few weeks back we braved a snowy 3-hour drive up to Hood River so we could ride the Christmas Train. We arrived the night prior and stayed the night at the absolutely lovely Hood River Hotel right downtown and smack dab next to the train station. I booked a suite room just in c … | Continue reading


@chriscoyier.net | 1 year ago

How to Play Celebrity

I learned the game “Celebrity” ages ago at a conference afterparty. I always struggle to remember how it works, but I often think about it when the opportunity to play a game with a group of people arises because it’s fun and can be played easily with minimal equipment. I’m going … | Continue reading


@chriscoyier.net | 1 year ago

Infinite Canvas

A Discord friend shared this link the other day: infinitecanvas.tools: The infinite canvas is the foundation of a new class of apps from design tools, to code editors, and workspaces. So like Figma. You essentially have unlimited space in all four 2D directions to create things a … | Continue reading


@chriscoyier.net | 1 year ago

Bring Back Blogging

Ash Huang & Ryan Putnam on a microsite: For the month of January, we’ll make a pact to blog a few times to get into the habit, and create a directory of all the creators who participate. Readers can then find new makers to follow before we all scatter to the winds. Win-win! I’m a … | Continue reading


@chriscoyier.net | 1 year ago

Writing, the Cornerstone of Amplification

The only way for us to move forward is to encourage and amplify the work of people who are willing to learn, to see and to commit to making things better. It turns out that reading and writing are the cornerstones of this practice, now more than ever. These are the two skills mos … | Continue reading


@chriscoyier.net | 1 year ago

Independent Type Foundry Advent Calendar

Matthias Ott has been linking up Type Foundries all month. Pretty rad idea! I’m just an absolute sucker for buying type sometimes, especially right now as I’ve happily moved to Typeface 3 and I enjoy using it. Plus, I’ve been slowly evolving this sites design and it’s a very diff … | Continue reading


@chriscoyier.net | 1 year ago

AI-driven brand collaboration engine

Ya know, like: I was hoping to make my dream come true with Advil & Legacy, alas, neither is available, so I had to request Taco Bell & The North Face. Don’t read too much into “engine”, I think dude is probably just using Stable Diffusion or DALL•E and attempting to get somethin … | Continue reading


@chriscoyier.net | 1 year ago

Tango Browser Extension

I was reading Hafsah Lakhany Ismail’s Our favorite Chrome extensions of 2022 post the other day and made it a point to try the ones that looked interesting to me. There are some good ones in there! One standout to me was Tango. They say: Create how-to guides, in seconds. They are … | Continue reading


@chriscoyier.net | 1 year ago

“an unending stream of disconnected posts”

A quote from Luke Harris I’m sniping from Rach: I’m on Mastodon, but I’m bored of what I call “the timeline era”. Scanning an unending stream of disconnected posts for topics of interest is no longer fun, I prefer deciding what to read based on titles, or topic-based discussion. … | Continue reading


@chriscoyier.net | 1 year ago

Things CSS Could Still Use Heading Into 2023

Just a couple of ideas! They came to me while I was poking around thinking of something to say for Alex Trost’s Holiday Mega-Stream (my segment starts here). Styleable Resizers Ya know how a is resizeable by default? That’s a nice default. If users are typing, they should have s … | Continue reading


@chriscoyier.net | 1 year ago

Gin, Rum, and Tequila

I just went to the liquor store and bought a bottle of gin, rum, and tequila 100% based on the design of the bottle. I’ve only tried the gin so far and it’s great. Maybe it’s just because I expect a nicely designed bottle to taste good like we all expect an expensive bottle of [… … | Continue reading


@chriscoyier.net | 1 year ago

The Stormtrooper Problem and a Totally Different Problem

This article The Stormtrooper Problem: Why Thought Diversity Makes Us Better on Farnam Street lays out the advantages, nay, necessity, of diversity: Diversity is how we survive as a species. This is a quantifiable fact easily observed in the biological world. From niches to natur … | Continue reading


@chriscoyier.net | 1 year ago

Advil Hat

Had to bust out Photoshop for my dream hat: DALL*E couldn’t hack it. | Continue reading


@chriscoyier.net | 1 year ago

Command Bars

These are a thing these days. Maggie Appleton put a point on it in a recent article: Command K Bars. She makes the point that they date back quite a way, to “Spotlight” in macOS Tiger. Twenty-two years later, we still have Spotlight: Tools like Raycast and Alfred arguably take th … | Continue reading


@chriscoyier.net | 1 year ago

Open Certain URLs in Certain “Browsers”

There are some URLs that make a ton of sense to force-open in specific browsers: You probably have your own examples, but I can’t imagine the above logic is controversial. Personally, I care more about sending links to specific apps than I do opening certain links in, say, Firefo … | Continue reading


@chriscoyier.net | 1 year ago

Press Publish

I was watching this video about some dudes on a 5-day Alaskan ferry. One of the dudes had this shirt that said “Press Publish” on it and I thought that was cool. Turns out, it’s a little shop which comes right up web searching for that phrase. I like the sweatshirt a lot. The ful … | Continue reading


@chriscoyier.net | 1 year ago

This WordPress Plugin for Code Highlighting Kicks Ass

It’s called: Syntax-highlighting Code Block (with Server-side Rendering) Weston Ruter really got it right: I once built a custom code block plugin that was largely based around this idea, and it worked pretty well, but it still relied on client-side JavaScript and it was a custom … | Continue reading


@chriscoyier.net | 1 year ago

Behooves

Elon isn’t the only person who has recently purchased a large-scale social network. Matt Mullenweg snapped up Tumblr back in August for the “de minimis” sum of 3 million (it takes far more than an order of magnitude more than that just to run Tumblr for a year). Nilay Patel has a … | Continue reading


@chriscoyier.net | 1 year ago

Racing

I recently did the BMW Performance Driving School. I took the M1 School, two full days of instructor-driven learning, with 3 other friends down in the Palm Springs, California area. It’s kinda like training to be a race car driver. They do not coddle you. If anything, they make f … | Continue reading


@chriscoyier.net | 1 year ago

Passkeys

Apple made a big deal of their support of Passkeys at their latest developer conference. And rightfully so. I hope they keep making a big deal of it. It really seems like the future of authentication and we should get moving on it, as an industry. Fascinatingly to me, Apple didn’ … | Continue reading


@chriscoyier.net | 1 year ago

Writing is the ticket to a clear understanding

Marc Brooker lists five ways in which Writing is Magic. They are all true. The first is my favorite. First, clarity. I’m sure you know the quote “Writing is nature’s way of letting you know how sloppy your thinking is”, and knowing how sloppy your thinking is allows you to sharpe … | Continue reading


@chriscoyier.net | 1 year ago

Tabs

I’ve long been on the “spaces” side of the tabs vs. spaces preference debate. I think there is just something that feels sturdy and reliable about spaces. I’m wrong though. Despite not having swapped over most of my projects, I think that, objectively, tabs are the better choice. … | Continue reading


@chriscoyier.net | 1 year ago

AEA SF 2022

I was a little nervous about the drive to the airport Sunday morning. It was supposed to snow pretty good the night before. It did snow a bit, so I shoveled the driveway before I left at 4:30am for my 6:00am flight. The snow got worse on the drive, but I made it to the […] | Continue reading


@chriscoyier.net | 1 year ago

Take a Screenshot, Only get Half the Image

You can’t! Terence Eden knows this too, but it didn’t stop him from a very clever experiment. First, split the image into two in some fashion (he made every-other-line interlaced versions). Then… Using JavaScript the first frame can be rendered onto a  element for a millisecond, … | Continue reading


@chriscoyier.net | 1 year ago

More like Nopen Source

Before a dissertation on Designing Go Libraries, Abhinav Gupta essentially tries to talk you out of it: Do you need to write it? Owning and maintaining a library can be a significant undertaking. The work does not end once the code is written — there is often a never-ending strea … | Continue reading


@chriscoyier.net | 1 year ago

What’s Good About the Arc Browser

I was a little skeptical of Arc, a new web browser from The Browser Company of New York. Ooo la la. Yeah, well, I run the Fart Factory of Bend. A small irony is that the pandemic means they aren’t really even in New York anymore. Joke. Ruined. I was actually skeptical because I’v … | Continue reading


@chriscoyier.net | 1 year ago

Lil’ Thought Blasters About Mastodon

I’m stoked about this time around. I haven’t been as excited in the past mostly because I was turned off by how much quieter it was than Twitter (read: it didn’t fuel the addition well enough). This time around, it’s still quieter, but I’m more ready for the quiet. And it’s not t … | Continue reading


@chriscoyier.net | 2 years ago

It’s Official 💨

Pleased that FART has become: … officially a term of art in computer science. Because it’s a part of Chrome Platform Status as a feature of Client Hints. Indeed, prefers-color-scheme is a perfect thing for Client Hints. … it is a best practice to not load CSS for the particular n … | Continue reading


@chriscoyier.net | 2 years ago

Speaking of folk interfaces

I was at a charity dinner with an auction tonight. Clearly they couldn’t figure out how to put instructions into the system anywhere anybody could find. So they made “items” in the CMS and made them $1. I’m pleased to have won the “how to register” item for $3. | Continue reading


@chriscoyier.net | 2 years ago

The Nightmare Before Christmas Before The Nightmare Before Christmas

The movie goes: Some man who has had some success running other things has a twinkle in his eye to run another thing. He takes it over on a whim with some seriously questionable tactics. Smart people that he should really listen to tell him it’s a bad idea but he completely ignor … | Continue reading


@chriscoyier.net | 2 years ago

Personal Coding Challenge: Data Validation, Correction, and Default Handling

Say you have some JSON data like this (I’ll be using Go on purpose here): The challenge here is to build a machine that does four things: Validate that the JSON is valid syntax. Validate that the JSON is valid against a schema. If there is a problem with one part of the data, fir … | Continue reading


@chriscoyier.net | 2 years ago

The Difference Between Integration Testing and End-to-End Testing

I don’t think there is any doubt that this is a unit test: You have a function, and you’re testing that the function returns what you think it should return. A code base probably has lots of this as they are easy to write, useful, and not flakey. I also don’t think there is any [ … | Continue reading


@chriscoyier.net | 2 years ago

Nobody Gets Hurt Doing Their One-Rep Maxes*

Says my physical therapist. I hurt my back most recently doing back squats. 135lbs on the bar. That’s nothing for my big elephant legs. It was my third rep of what was going to be 60 reps over 15 minutes as part of an EMOM (Every Minute on the Minute) workout involving box step-u … | Continue reading


@chriscoyier.net | 2 years ago

Two Quick Things I learned about JSON in Go

One. You don’t have to json.Unmarshal into an empty struct. I learned with examples like this: There, post is totally defaults, meaning because favorite_count was missing in the JSON data, post.FavoriteCount defaults to 0, the Go default value for an int. But it doesn’t have to s … | Continue reading


@chriscoyier.net | 2 years ago

Dan’s Book: Twenty Bits I Learned About Making Websites

I got a copy of Dan’s latest book! So many endearing, funny, and relatable bits. From Chapter 4: As soon as I typed the HTML for my first hyperlink, the power of it hit me. This is the DNA of the web, the fabric that connects all of the bits and pieces all over the […] | Continue reading


@chriscoyier.net | 2 years ago

Icon Set Nostolgia

I think Daniel Bruce’s Entypo was the first icon set designed for the web that I fawned over. Maybe it was how it had a cool name, almost like it was a startup product. And the website design around it was awesome. The 2012 design was pretty fresh, especially for that time: Then … | Continue reading


@chriscoyier.net | 2 years ago

A Brief and Probably Only Partially Correct History of CSS Nesting

2006: Sass was invented. Has nesting. All subsequent CSS processors have nesting (Less: 2009; Stylus: 2010). 2011: Tab says Chrome engineers already dabbling with CSS nesting. 2011: (Lost to time?) First Editor’s Draft appears actually called “CSS hierarchies”. Lennart Schoors ha … | Continue reading


@chriscoyier.net | 2 years ago

Local By Flywheel has Fancy Headless WordPress Scaffolding

Local By Flywheel makes running a local WordPress site trivially easy. I just got a marketing email from them saying that there is a plugin for Atlas now, which is their parent company WP Engine’s product for running “Headless” WordPress. Headless, meaning the front-end of the si … | Continue reading


@chriscoyier.net | 2 years ago

Astro stands to benefit highly from View Transitions

Same with any no-JavaScript-by-default framework like Eleventy, Jekyll, Hugo, and whatnot. Check out what Maxi Ferreira did with Astro: Cool. Although he had to slap in SPA navigation to make it work, because the current API only supports that, not normal “multi page” transitions … | Continue reading


@chriscoyier.net | 2 years ago

Nutshell

Nicky Case made a thing called Nutshell: Nutshell is a tool to make “expandable, embeddable explanations” … This lets your readers learn what they need, just-in-time, always-in-context. I really like the look and feel of it, especially the little animated colons. I do feel like i … | Continue reading


@chriscoyier.net | 2 years ago

Get Your Most Favorited Tweets With Go

I wanted to find my most favorited tweets of all time. I figured I should know what those are so I can re-home them (or some version of their spirit) elsewhere in case the ol’ bird kicks the can. Turbulent times over there. Twitter has some built-in analytics tooling that I could … | Continue reading


@chriscoyier.net | 2 years ago

Must… Click… Upgrade

Jon Yongfook: Just paid $75 (per month) to remove the “Upgrade Now” button from Slack. Never underestimate how much a B2B customer armed with a corporate card will pay to solve a minor inconvenience. It me. And I dislike it about myself but it’s true. Just a dumb little upgrade b … | Continue reading


@chriscoyier.net | 2 years ago

Folk Interfaces

Folk creations fill a gap. They solve problems for individuals and small communities in a way that that centralised, top-down, industrial creations never can. They are informal, distributed practices that emerge from real world contexts. Folk Interfaces, Maggie Appleton So my mom … | Continue reading


@chriscoyier.net | 2 years ago