juan ferreras
juanf.is
juan ferreras
@juanf.is
Engineer by day, over-engineer by night. Passionate about #webperf.
Prev: co-founded #LabelRadar (acq.)
Free users can now write and deploy their own worker for experiments/prototyping changes.

If users could be limited by the pre-made recipes not being powerful enough – you can pretty much do anything now.

Finally back on the routine, it's time to play with Shared Compression Dictionaries now!
June 18, 2025 at 1:34 PM
"No major incidents"
June 12, 2025 at 7:01 PM
Cloudflare has an odd "Minor Service Outage" legend without much notice (odd as they are usually more descriptive when ever there's something going on?)
June 10, 2025 at 12:31 PM
Parkinson's Law: all caches will expand themselves until your disk has basically no space left, regardless of the disk's total size.
June 3, 2025 at 3:33 PM
Users can also write and deploy their own experiments.

It's the only feature free users can't access yet.

Mainly because I'd want to make sure it can't be abused for anything bad, but also because I absolutely *misunderstood* Workers for Platforms pricing until just now.

Should I open it up?
May 30, 2025 at 6:07 PM
One thing I'm really appreciating is how fast I get a result back from Puppeteer (CF Browser Rendering).

The video uses the most trivial example (pun intended), but there's only a few extra secs on top of what the page took to load.

Will this be the case with 00s of users? Would love to find out!
May 19, 2025 at 6:17 PM
If you ever thought PageSpeed Insights is great but with X design change it might be better/less confusing for non technical users/etc – I have good news.

You can build your own now! It's a bit daunting but actually pretty fun.

More focus on real user data? Less? Remove % scores? Or make your own?
May 16, 2025 at 6:06 PM
One of the core concepts on Dashboards is that they are fully customizable.

You can copy and paste any widgets from docs and it works seamlessly.

You can share these with stakeholders/colleagues and make sure you're all focusing on the same view (and not getting distracted by noise).
May 14, 2025 at 8:08 PM
Here's an example on quickly prototyping a change and measuring the before/after in just a few minutes.

Am I missing lots of audits/widgets? Yes.

But I'm mostly missing a few more folks who don't mind helping me with *candid* feedback and/or see themselves using it!

Let me know if that's you! 🫵
May 7, 2025 at 3:44 PM
Google is consolidating Lighthouse audits to use the new performance insights from Chrome DevTools.

PageSpeed Insights will show them as default in ~Oct 2025, but you can try now.

I just switched my widget to Insights (no users = no breaking changes 😄). Def need to work more on the details tho!
May 6, 2025 at 4:37 PM
I've been having a lot of fun building it, playing with things I wanted to try (Astro, RSC, entire app on CF Workers, Workflows, Browser Rendering, ..)

If you want to try it out (and provide feedback) please DM me! It's live but for now will share privately to see how some things (e.g. tests) scale
April 26, 2025 at 1:24 PM
2. MEASURE. Run "opinionless" tests.

Pulls CrUX + PSI + Puppeteer (for user journeys with Chrome DevTools Recorder). Run multiple tests to see variability or multiple pages to compare one another.

You can build (and share) your own dashboards. Made plenty of widgets but the more the merrier!
April 26, 2025 at 1:20 PM
I’ve been building an app for fun on web perf. You can do most things free (with limits)

1. MODIFY. Change anything on any URL to validate ideas (like WPT Experiments but you get the URLs to profile).

My goal is to really push the concept forward, but so far I've focused mostly on easier recipes
April 26, 2025 at 1:18 PM
Emil's course (animations.dev) is one of the best resources I've seen on successfully pushing great & practical animations/interactions to production

I'm not personally using Motion but I still got a LOT of insights and tips.

And I'm having a lot of fun humbly using some of those on my own work!
April 12, 2025 at 4:42 PM
April 9, 2025 at 2:33 PM
If there's one thing I could proudly be on a +P99 leaderboard is typing quickly on a keyboard.

Super fun website – very interesting navigation!

----
🏆 Today’s typ.ing:
🌟 Speed: 153wpm
🎯 Accuracy: 100.00%
📝 Training Set: English, most common 100 words
🔢 Capitalization: ❌ Numbers: ❌ Punctuation: ❌
February 18, 2025 at 6:30 PM
What a beautiful surprise to get these extra fields on CrUX APIs!

Absolutely fantastic work from the Chrome team, it's hard to describe how extremely useful it is to get this level of UX insight on almost any website, for free and without having to previously convince clients to setup monitoring
February 11, 2025 at 8:56 PM
Not sure if this is a good idea (or a terrible one!) but Canvas and WebRTC APIs are pretty great!

TBC on how accurate (this is PSI's Lighthouse, should also be compat with CF Workers Puppeteer and probably more accurate but screencasts have a weird gamma offset unfortunately).
February 5, 2025 at 3:33 PM
It's not DNS.
There's no way it's DNS.

It was DNS.
January 31, 2025 at 4:44 PM
Started the year wanting to catch up with some of the fantastic courses/books I've been literally accumulating.

"Practical UI" by Adham Dannaway was another good read on design.

Great insights on how designing with a11y in mind ends up benefitting everyone & minimizing usability risk (see ALT)
January 30, 2025 at 5:21 PM
This one was a surprisingly nice chart I hadn't planned – adding LCP+FCP+TTFB from CrUX on a single area chart.

Similar to LCP subparts (with less insights of course) but from any website in CrUX instead of requiring real user monitoring
January 29, 2025 at 8:05 PM
It's insane how relevant RefactoringUI from @adamwathan.com & Steve Schoger still is after +6 years.

Started 2025 with a re-read and here's a great tip: *everything has an intended size*.

As an example, don't scale icons up nor down – you can enclose them for upscaling (or simplify if downscaling)
January 24, 2025 at 3:06 PM
Note they had to support instant deployments of many diff tech stacks.

Pages uploads each file to KV (max file size 25 MB) with likely aggressive TTLs, because they also upload a manifest of files into KV too (hence the max 20k files restriction) which serves as the instant source of truth

2/N
January 13, 2025 at 3:23 PM
This is very interesting both from a design standpoint as well as a11y – speaking as someone slightly color-blinded.

I've been recently having lots of fun with a simple monochromatic palette, that users can actually fully customize.

Absolutely inspired by GitHub and Linear's efforts on this front.
January 11, 2025 at 1:14 PM
This was a (pleasant) surprise to me indeed!

According to HTTPArchive data as of Nov 24, Preact is detected 3.7x times more than Angular and almost 0.85x compared to Vue

Without any data to back this - I'd bet on more 3P widgets shipping Preact (which is a great choice given their lower overhead)
January 10, 2025 at 7:37 PM