Advertisement · 728 × 90

Posts by Phil Wolstenholme

Other than @devongovett.me 's work on React Spectrum/ARIA are there any other good sources on 'how to make nice full screen UI' for iOS 26? I've found some base-ui PRs but are looking for more examples. I've gotta make a full screen mobile nav full-screen again…

5 months ago 3 0 0 0

@jensimmons.bsky.social @saron.bsky.social @jondavis.bsky.social Sorry to chase, but any thoughts on what I could try next to help debug/prevent this, other than just remove content-visibility? Would it be worth raising a WebKit bug if I could make a repro? I can't reproduce it on macOS, only iOS

5 months ago 0 0 1 0

This all looks fantastic!

5 months ago 1 0 1 0

It seems to be the `content-visibility: auto;` that causes the issue, not the `contain-intrinsic-size`. I imagine there's something else on the page that combines with content-visibility to cause the issue, maybe our sticky header or something z-index or transform related?

5 months ago 0 0 0 0

I'm thinking maybe something compositing related but I'm a bit out of my depth! If you're based in the UK you can see a live example at shop.coop.co.uk?postcode=M60... – scroll to the bottom of the page then scroll back up to trigger the flicker.

5 months ago 0 0 0 0
Video

@jensimmons.bsky.social @saron.bsky.social @jondavis.bsky.social – do you know why using this CSS would cause flickering? It's across devices and iOS versions:

```
:where(:root) {
--vpc-loader-height: 23.75rem;
}
content-visibility: auto;
contain-intrinsic-size: auto var(--vpc-loader-height);
```

5 months ago 1 0 3 0

Team size changes, project work, and winter sickness has meant that we're sometimes running as a pair rather than a small mob/ensemble at work. I've never done much pairing! Are there any particularly good blog posts, talks, or books on doing it well and/or different approaches to try?

6 months ago 1 0 0 0
https://gist.github.com/philwolstenholme/fff89398fd02f0032859c9a3a60cfc94

https://gist.github.com/philwolstenholme/fff89398fd02f0032859c9a3a60cfc94

Neat little feature on my new personal site: use the `Sec-CH-UA-Mobile` header (or UA sniffing 😔) to know the device type during SSR and show fewer items per page. This saves mobile users from having to scroll past giant stacked lists that would be in a nice grid on desktop:

6 months ago 2 0 0 0
Advertisement
'Previous' and 'Next' buttons using black masking tape as their background image

'Previous' and 'Next' buttons using black masking tape as their background image

Also, black tape pagination buttons, because why not?

7 months ago 0 0 0 0
A very close up and cropped screenshot of a website card representing the 'unnoq/orpc' Github repo. The card shows a repo description, its number of stars, its language, and a birthday cake emoji next to the next '1 year old this month'

A very close up and cropped screenshot of a website card representing the 'unnoq/orpc' Github repo. The card shows a repo description, its number of stars, its language, and a birthday cake emoji next to the next '1 year old this month'

New feature on the redesign of my personal site (wolstenhol.me) – show when its the birthday of a repo I've starred on Github. Happy anniversary for oRPC, @unnoq.com!

7 months ago 4 1 1 0
Preview
My DrupalCon Europe 2020 session feedback Back in December I gave a talk on using Tailwind with Drupal, and why, for me, it makes sense in an agency environment where long-running…

I'd almost completely forgotten about a talk I gave in the depths of Covid for DrupalCon EU. I've just found a blog post I wrote (on a Medium account that I'd also forgotten about!) after getting my session feedback back and I'm feeling nostalgic: philwolstenholme.medium.com/my-drupalcon...

7 months ago 4 0 0 0

Oooh, what would this be?

8 months ago 2 0 1 0
A Progressive Complexity Manifesto | Loren Stewart A manifesto for progressive web complexity. Reject the false binary between static sites and SPAs. Embrace the powerful middle ground with server-rendered HTML, HTMX, and intentional complexity escala...

This post is the culmination of my thinking about (and building) SPA-like apps w minimal JS for the last 2 yrs

The ideas are informed in large part by the @infrequently.org blog posts and talks

Thanks @htmx.bsky.social and @astro.build for building great tools.

www.lorenstew.art/blog/progres...

8 months ago 27 5 4 4
Bundle size comparison table showing the `lodash` package being removed (saving 151.16KiB) and `es-toolkit` being added at a cost of `3.88KiB`

Bundle size comparison table showing the `lodash` package being removed (saving 151.16KiB) and `es-toolkit` being added at a cost of `3.88KiB`

Lodash with imports from `lodash/package`: 151.16kb
`es-toolkit`: 3.88kb

Tests passing, TS happy, linter happy. There's a bundle size reduction, a speed increase, and we can drop the Lodash ESLint plugin and `@types/lodash` too 🙌

Thanks github.com/toss!

9 months ago 3 0 0 0

This is a glorious blog post on the history of rendering web pages, how to write a BFF very neatly, returning a representation of UI from a server – and how you might end up inventing React Server Components if you think about these things for long enough:

1 year ago 8 0 0 0

This is really relevant to me at work at the moment! @tammyeverts.com do you have a link to that Akami study on slowness leading to 28% abandonment, please? I'd like to quote it at work but with a direct link to the source.

1 year ago 1 0 0 0
Building personal software with Claude Earlier this month, I used Claude to port (parts of) an Emacs package into Rust, shrinking the execution time by a factor of 1000 or more (in one concrete case: from 90s to about 15ms). This is a vari...

Nice article: blog.nelhage.com/post/persona...

Some key points: the person knows what they are doing, the LLM is speeding them up, but when there's a hiccup they can get back on track with their own skills, and the software they are generating is only their responsibility to maintain.

1 year ago 2 0 0 0

urn:li:fs_relatablePostCommaBeenThere:ACoAABQ11fIBQLGQbB1V1XPBZJsRwfK5r1U2Rzt !

1 year ago 4 0 0 0
Advertisement
Preview
A Software Engineer in Testing: How I Build Quality In If you're familiar with my journey, you'll know I made the transition to a software engineer role around 6 months ago, after being a QA engineer in various forms for the best part of a decade. Part of...

I blogged about what my testing workflow is like now that I'm one of those developer creatures:
cactus-flamingo.ghost.io/a-software-e...

1 year ago 29 10 10 0

Locked in

1 year ago 5 0 0 0

RSC

1 year ago 3 0 0 0
Preview
HTMHell Advent Calendar 2024 - HTMHell An article, talk, or tool that focuses on HTML every day until Christmas.

It's December 1st, and you know what that means: For the next 24 days, we'll publish articles about HTML by 24 authors. You can read them on the website or subscribe to the RSS channel.

Enjoy!

htmhell.dev/adventcalend...

1 year ago 288 123 2 10

Totally, that's why I like the idea, after a salesperson explains how the 'script is async so there's no performance impact' then you can nod and let them put their money where their mouth (as long as the clause explains the testing methodology so it's harder to wiggle out of it later!)

1 year ago 1 0 1 0

Ahhhh that makes perfect sense! I was thinking of reviewing RUM data rather than synthetic/lab testing! Maybe add that to the post just in case other readers' minds go to the same place I did.

1 year ago 1 0 0 0

…I think the way to counter that would be to run a 50/50 A/B test to rule out any changes in demographics or any first-party code changes that could have introduced a performance regression

1 year ago 0 0 2 0

The contract clause idea is interesting. I imagine a vendor or their legal rep. would argue that you couldn't tie the RUM score change to their product directly, because you could have just had an influx of users on lower-end devices around the time of deploying their tool (or some other excuse)…

1 year ago 1 0 1 0
Advertisement

That CSS generation idea is super nice! Does it render `style` elements with `linear()` easing functions?

1 year ago 0 0 1 0

Looks good. It'll make these sort of utilities stand out more, if there are specific values you know those are constants unless you configure Tailwind differently, and if there's a <number> type then you know it'll accept any number

1 year ago 0 0 0 0

What's the performance hit like (if any)? I am very tempted to suggest moving some of our single-component-level tests to use a real browser, possibly in Vitest's browser mode or Storybook's new testing stuff (both use Playwright I think) but always a bit worried about the overhead compared to JSDOM

1 year ago 0 0 1 0

Oh wow, I've never seen that before (the ARIA snapshot), that looks great!

1 year ago 1 0 0 0