Journal

3185 sparkline

Thursday, October 9th, 2025

Simplify

I was messing about with some images on a website recently and while I was happy enough with the arrangement on large screens, I thought it would be better to have the images in a kind of carousel on smaller screens—a swipable gallery.

My old brain immediately thought this would be fairly complicated to do, but actually it’s ludicrously straightforward. Just stick this bit of CSS on the containing element inside a media query (or better yet, a container query):

display: flex;
overflow-x: auto;

That’s it.

Oh, and you can swap out overflow-x for overflow-inline if, like me, you’re a fan of logical properties. But support for that only just landed in Safari so I’d probably wait a little while before removing the old syntax.

Here’s an example using pictures of some of the lovely people who will be speaking at Web Day Out:

Jemima Abu Rachel Andrew Lola Odelola Richard Rutter Harry Roberts

While you’re at it, add this:

overscroll-behavior-inline: contain;

Thats prevents the user accidentally triggering a backwards/forwards navigation when they’re swiping.

You could add some more little niceties like this, but you don’t have to:

scroll-snap-type: inline mandatory;
scroll-behavior: smooth;

And maybe this on the individual items:

scroll-snap-align: center;

You could progressively enhance even more with the new pseudo-elements like ::scroll-button() and ::scroll-marker for Chromium browsers.

Apart from that last bit, none of this is particularly new or groundbreaking. But it was a pleasant reminder for me that interactions that used to be complicated to implement are now very straightforward indeed.

Here’s another example that Ana Tudor brought up yesterday:

You have a section with a p on the left & an img on the right. How do you make the img height always be determined by the p with the tiniest bit of CSS? 😼

No changing the HTML structure in any way, no pseudos, no background declarations, no JS. Just a tiny bit of #CSS.

Old me would’ve said it can’t be done. But with a little bit of investigating, I found a nice straightforward solution:

section >  img {
  contain: size;
  place-self: stretch;
  object-fit: cover;
}

That’ll work whether the section has its display set to flex or grid.

There’s something very, very satisfying in finding a simple solution to something you thought would be complicated.

Honestly, I feel like web developers are constantly being gaslit into thinking that complex over-engineered solutions are the only option. When the discourse is being dominated by people invested in frameworks and libraries, all our default thinking will involve frameworks and libraries. That’s not good for users, and I don’t think it’s good for us either.

Of course, the trick is knowing that the simpler solution exists. The information probably isn’t going to fall in your lap—especially when the discourse is dominated by overly-complex JavaScript.

So get yourself a ticket for Web Day Out. It’s on Thursday, March 12th, 2026 right here in Brighton.

I guarantee you’ll hear about some magnificent techniques that will allow you to rip out plenty of complex code in favour of letting the browser do the work.

Wednesday, October 8th, 2025

Coattails

When I talk about large language models, I make sure to call them large language models, not “AI”. I know it’s a lost battle, but the terminology matters to me.

The term “AI” can encompass everything from a series of if/else statements right up to Skynet and HAL 9000. I’ve written about this naming collision before.

It’s not just that the term “AI” isn’t useful, it’s so broad as to be actively duplicitous. While talking about one thing—like, say, large language models—you can point to a completely different thing—like, say, machine learning or computer vision—and claim that they’re basically the same because they’re both labelled “AI”.

If a news outlet runs a story about machine learning in the context of disease prevention or archeology, the headline will inevitably contain the phrase “AI”. That story will then gleefully be used by slopagandists looking to inflate the usefulness of large language models.

Conflating these different technologies is the fallacy at the heart of Robin Sloan’s faulty logic:

If these machines churn through all media, and then, in their deployment, discover several superconductors and cure all cancers, I’d say, okay … we’re good.

John Scalzi recently wrote:

“AI” is mostly a marketing phrase for a bunch of different processes and tools which in a different era would have been called “machine learning” or “neural networks” or something else now horribly unsexy.

But I’ve noticed something recently. More than once I’ve seen genuinely-useful services refer to their technology as “traditional machine learning”.

First off, I find that endearing. Like machine learning is akin to organic farming or hand-crafted furniture.

Secondly, perhaps it points to a severing of the ways between machine learning and large language models.

Up until now it may have been mutually benificial for them to share the same marketing term, but with the bubble about to burst, anything to do with large language models might become toxic by association, including the term “AI”. Hence the desire to shake the large-language model grifters from the coattails of machine learning and computer vision.

Tuesday, October 7th, 2025

Decontrolled

I was supposed to be in Cork over the weekend.

Not only was it high time I paid my mother a visit, but the Cork Folk Festival was happening too. So I booked some relatively cheap plane tickets for myself and Jessica back in August and noted down the days in my calendar.

We didn’t end up getting our flight. This time it wasn’t because I messed up the flight times. We made it to Gatwick airport in plenty of time. That’s when we saw that our flight was delayed.

See, Storm Amy was moving in. We were hoping to get into Cork before the storm hit, but now with the flight delayed, that wasn’t likely. In fact, it was more likely that the flight would just get more and more delayed and possibly even get diverted.

To start with, we settled in at the airport, prepared to spend an hour or two more than we had planned. But, sure enough, the delays kept piling up. It was time to make decision; wait it out in the hopes that we’d eventually make a very bumpy landing in Cork, or cut our losses and run.

I quickly looked up flights for the next couple of weekends and spotted some cheap ones a fortnight away. I booked them and then called my mother to tell her we wouldn’t be showing up that night, but we’d see her in a couple of weeks.

Alright then, time to go home.

Wait a minute …how exactly are we supposed to leave the airport other than on an airplane?

It turns out there’s a process called “decontrolling”. You need to find someone from the airline (or in our case, a third-party contractor operating on the airline’s behalf) who has the security privileges to walk you back out. But you still need to go through passport control …even though you never left the building.

Luckily we didn’t have any checked luggage or it would’ve gotten complicated. As it was, it was just weird. It was all very City And The City.

That flight we abandoned did finally take off …six hours late. By that time we were back home on the sofa eating pizza and listening to the wind gusting outside. I think we made the right choice.

Wednesday, October 1st, 2025

Summer’s end

It’s October. Autumn is wrapping itself around us, squeezing the leaves from the trees. Summer has slipped away, though it gave us a parting gift of a few pleasant days this week to sit outside at lunchtime.

I’ve got a bit of a ritual now for the end of September. I go to Spain and soak up the last of the sun. There’s an Irish music festival in the beautiful medieval town of Cáceres.

It’s not easy to get to, but that’s all part of the ritual. Set out for Madrid or Seville and spend a night there. Then get on a train for the long journey through a landscape straight out of a spaghetti western.

Once you get to Cáceres there’s nothing to do but enjoy the sun, the food, and the music. So much music! Open-air concerts in a medieval square that go well past midnight. Non-stop sessions scattered throughout the town’s pedestrianised streets.

For me, it’s the perfect way to see out the summer.

Cáceres Irish Fleadh 2025

Thursday, September 25th, 2025

Earth

While I’ve been listening to Hounds Of Love, I’ve also been reading Orbital by Samantha Harvey.

Here’s a passage from an early chapter as the crew of the International Space Station watch a typhoon forming:

How wired and wakeful the earth seems suddenly. It’s not one of the regular typhoons that haphazardly assault these parts of the world, they agree. They can’t see it all, but it’s bigger than projections had previously thought, and moving faster. They send their images, the latitudes and longitudes. They are like fortune tellers, the crew. Fortune tellers who can see and tell the future but do nothing to change or stop it. Soon their orbit will descend away to the east and south and no matter how they crane their necks backward at the earth-viewing windows the typhoon will roll out of sight and their vigil will end and darkness will hit them at speed.

They have no power – they have only their cameras and a privileged anxious view of its building magnificence. They watch it come.

The penultimate track on Hounds Of Love is the magnificent Hello Earth with its eerie Georgian chant for a chorus, and magnificent uilleann piping from the late great Liam Óg O’Flynn on the bridge. It too features a narrator watching from space:

Watching storms

Start to form

Over America.

Can’t do anything.

Just watch them swing

With the wind

Out to sea.

All you sailors, (“Get out of the waves! Get out of the water!”)

All life-savers, (“Get out of the waves! Get out of the water!”)

All you cruisers, (“Get out of the waves! Get out of the water!”)

All you fishermen,

Head for home.

Matching the song to the book feels like pairing a fine wine with a delicious morsel.

Hounds Of Love

The album Hounds Of Love by Kate Bush turned 40 years old this month. It has really stood the test of time. It still sounds like nothing else.

It’s kind of two albums in one.

There’s the A side with all those perfect pop songs—Running Up That Hill, Hounds Of Love, Cloudbusting, The Big Sky—each one brilliant and self-contained.

Then there’s the B side, The Ninth Wave. It’s like its own concept album within an album. It’s weird and challening, but I love it.

At times it’s downright frightening but the whole thing ends on a joyous note with The Morning Fog. There’s something about the clarity of the closing lines that brings me to tears:

I’ll tell my mother
I’ll tell my father
I’ll tell my loved one
I’ll tell my brothers
How much I love them

That’s after the magnificence of The Jig Of Life which happily crosses over with my love of Irish traditional music.

But, as with traditional Irish music, Hounds Of Love was not something I was into when I was growing up. Quite the opposite.

See, my brother was really into Kate Bush. And if my brother was into something, then I didn’t want anything to do with it. We didn’t really get along.

Mostly that worked out fine. I don’t think missed out on much by avoiding the Electric Light Orchestra, the Alan Parsons Project, and other Partridge-esque bands. But I was wrong to avoid Kate Bush.

It was only by the time I got to art college that I was able to listen to Hounds Of Love objectively, encouraged to do so by a girlfriend at the time who was a huge fan.

Now I’m listening to it again.

Ah, those closing lines …there’s just something about them.

Wednesday, September 24th, 2025

Sponsor Web Day Out

If you work at a clever company, then you should let them know about sponsoring Web Day Out.

All the details are in this PDF sponsorship pack. Basically there are three (and only three) spots available, at three different levels of sponsorship.

One of the best things about the venue for Web Day Out is that always having an excellent auditorium, the Studio Theatre has a really nice space for the breaks. It would be the perfect spot to set up a stand and chat with all the smart attendees.

All the attendees will, by definition, be smart because they got tickets for Web Day Out—a steal at just £225+VAT.

Wednesday, September 17th, 2025

Harry Roberts is speaking at Web Day Out

I was going to save this announcement for later, but I’m just too excited: Harry Roberts will be speaking at Web Day Out!

Goddamn, that’s one fine line-up, and it isn’t even complete yet! Get your ticket if you haven’t already.

There’s a bit of a story behind the talk that Harry is going to give…

Earlier this year, Harry posted a most excellent screed in which he said:

The web as a platform is a safe bet. It’s un-versioned by design. That’s the commitment the web makes to you—take advantage of it.

  • Opt into web platform features incrementally;
  • Embrace progressive enhancement to build fast, reliable applications that adapt to your customers’ context;
  • Write code that leans into the browser, not away from it.

Yes! Exactly!

Thing is, Harry posted this on LinkedIn. My indieweb sensibilities were affronted. So I harangued him:

You should blog this, Harry

My pestering paid off with an excellent blog post on Harry’s own site called Build for the Web, Build on the Web, Build with the Web:

The beauty of opting into web platform features as they become available is that your site becomes contextual. The same codebase adapts into its environment, playing to its strengths, rather than trying to build and ship your own environment from the ground up. Meet your users where they are.

That’s a pretty neat summation of the agenda for Web Day Out. So I thought, “Hmm …if I was able to pester Harry to turn a LinkedIn post into a really good blog post, I wonder if I could pester him to turn that blog post into a talk?”

I threw down the gauntlet. Harry accepted the challenge.

I’m sure you’re already familiar with Harry’s excellent work, but if you’re not, he’s basically Mr. Web Performance. That’s why I’m so excited to have him speak at Web Day Out—I want to hear the business case for leaning into what web browsers can do today, and he is most certainly the best person to bring receipts.

You won’t want to miss this, so be sure to get your ticket now; it’s only £225+VAT.

If you’re not ready to commit just yet, but you want to hear about more speaker announcements like this, you can sign up to the mailing list.

Tuesday, September 16th, 2025

Dancing about dancing

I read recently read two books that had writers as their main protagonists:

They were both perfectly fine. But I found it hard to get really involved in either narrative. The stakes just never felt that high.

Not that high stakes a pre-requisite for a gripping narrative. I enjoyed the films The Social Network and Like A Complete Unknown. Those stakes couldn’t be lower. One is about a website that might’ve ripped off its idea from another website. The other is about someone who’d like to play different kinds of music but other people would rather he played the same music. It’s a credit to the writers and directors of both films that they could create compelling stories from such objectively unimportant subjects.

Getting back to those two books, maybe there’s something navel-gazey when writers write about writing. Then again, I really like non-fiction books about writing from Ann Lamott, Stephen King, and more.

Perhaps it’s not the writing part, but the milieu of publishing.

I’m trying to think if there are any great films about film-making (Inception doesn’t count). Living In Oblivion is pretty great. But a lot of its appeal is that it’s not taking itself too seriously.

All too often when a story is set in its own medium (a book about publishing; a film about film-making) it runs the risk of over-estimating its own importance.

The most eye-rolling example of this is The Morning Show, a television show about a television show. It genuinely tries to make the case for the super-important work being done by vacuous morning chat shows.

Thursday, September 4th, 2025

Speaking at Web Day Out

Half of the line-up of speakers for Web Day Out is already on the site. One more is already confirmed.

I’m ridiculously excited about the way the line-up is taking shape, and judging by the zippiness of ticket sales, so are lots of my peers. Seriously, don’t wait to get your ticket or you might end up missing out completely.

I’ve already got a shortlist of other people I could imagine on the line-up, but I’m open to more suggestions. If you’d like to speak at Web Day Out—or you know someone you think would be great—send an email to jeremy@clearleft.com

I won’t be checking my work email while I’m away on holiday next week but it would be lovely to come back to an inbox of exciting suggestions.

A couple of pointers…

I’d rather not have too many people like me on the line-up. White dudes are already over-represented in this industry, especially at conferences.

If you’ve never given a talk before, don’t worry. I’d love to help you put your talk together and coach you in presenting it. I have some experience in this area.

No product pitches. That includes JavaScript frameworks and CSS libraries.

If I get even a whiff of “AI”, your proposal doesn’t stand a chance. There are many, many, many other events that are only too happy to have wall-to-wall talks about …that sort of thing.

If you end up speaking at Web Day Out you will, of course, be paid. We will, of course, cover travel and accommodation too. We can’t afford the travel costs of bringing anyone in from outside Europe though (and we’d like to keep the carbon footprint of the event as small as possible).

Web Day Out has an opinionated agenda all about showing what’s possible in web browsers today. Some potential topics include:

The emphasis should be on using stuff in production rather than theoretical demos.

If you’ve got a case study about using the web platform—perhaps migrating away from a framework-driven approach—that would fit the bill perfectly.

How’s all that sounding? Know someone who could deliver the goods? Let me know!

Older »