If you ever struggled with understanding if your CSS performance issues are coming from style calculation or from layout, LoAF's styleDuration and layoutDuration is shipping in Chromium 158 to help with that groups.google.com/a/chromium.o...
Yoav Weiss
Yoav Weiss
@yoav.ws
On a mission to make the web faster, one perf feature at a time. Web platform @ Shopify. WebPerfWG and WICG co-chair. RICG4life. Opinions are my own, etc.
2.3K followers325 following210 posts
Wrote a bit about why I think WebMCP matters: blog.yoav.ws/posts/why_we...
@43081j.com Hey! As you chimed in on github.com/webmachinele..., I thought you may have opinions on github.com/WICG/persist... Chrome folks are looking for people to play around with prototypes and provide feedback :)
Yoav Weiss reposted
We made Shopify storefronts faster with automatic Early Hints. By finding and preloading render-blocking resources, we improved p75 FCP by 76ms and LCP by 100ms. No merchant or theme changes required. performance.shopify.com/blogs/blog/f...
Yoav Weiss reposted
Heard of the Supporters of Chromium-Based Browsers (aka SoCBB)? No? Well, we at Microsoft came together with Meta, Opera, and Google to fund improving code, fixing bugs, interop issues in Chromium, so it stays healthy. Said another way: get paid to fix chromium bugs!
Yoav Weiss reposted
Right now, if you import something from JS, and the result is a 404 (or other not-ok status code), it fails the load & gives you nothing. I wonder with json imports, and maybe even text/byte imports, if that's the right pattern github.com/whatwg/html/...
Yoav Weiss reposted
The Chrome DevTools team are doing a "papercuts" sprint where they try to address lots of small, irritating bugs and annoyances. Reply with crbug.com links (no bug, no fixβthat's the deal!) and will see what we can do. No promises though as some may be features/too big/unclear how to solve.
Yoav Weiss reposted
PSA: Features available behind a feature flag have not shipped. (The thread had some more examples and words)
Maybe one thing to clarify here is that this hasnβt shipped. It is _available for testing_ in Chrome _behind a feature flag_ (the Experimental Web Platform Features flag) so that you, developers, can try it out before we actually ship this (unflagged).
I'm proposing a way to be able to persist iframes across navigations github.com/WICG/proposa... Best idea or worst idea??
Yoav Weiss reposted
Speed still matters. "for every 100 milliseconds slower a store loads, conversion tends to be about 3.5% lower. (...) For every 32 milliseconds slower a store responds to interactions, conversion tends to drop by about 1.5%." www.shopify.com/enterprise/b...
Yoav Weiss reposted
Container Timing is a new browser performance API for measuring when an area of a web app has been displayed. It is available in an Origin Trial in Chrome 148 π Read the blog post below to learn more π
Excited about this, we've been working on the upcoming Container Timing API. Want to learn more? Take a read of the blog post below, put together with @tunetheweb.com and @jdapena.bsky.social. Feedback is very welcome. Try it out and help us shape this API! [This feature is Mozilla Approved]
Yoav Weiss reposted
I say it every year - if you're even the least bit interested or involved in web performance, this is THE place to be every year. It's the one trip I prioritize my travel budget for. The talks are awesome, but the hallway track is unbeatable. The concentration of experts in one place is insane.
performance.now() 2026 is coming. Ticket sales will open in May with cheap and ultra-cheap early bird tickets. These will be announced in our newsletter first. So subscribe via perfnow.nl/subscribe perfnow.nl
Yoav Weiss reposted
I'm very excited about this! Have seen some really significant impact in our tests. With the sizes of websites and JS payloads continuing to increase, this is both important and impactful.
Today, weβre excited to give you a sneak peek of our support for shared compression dictionaries, show you how it improves page load times, and reveal when youβll be able to try the beta yourself. https://cfl.re/42egXfC
Yoav Weiss reposted
*web frameworks klaxon* If you work on a web framework then there is a w3c proposed community group: the Web Frameworks Community Group, a place for framework folk to feedback to browser vendors about what they want to see! If you want this it needs your support! www.w3.org/community/gr...
Yoav Weiss reposted
After implementing Compression Dictionaries back in December, I sat down with @yoav.ws and @patmeenan.com to discuss getting the most out of them and provide some visuals for those new to the concept. Check out the video below: youtu.be/YR2er3EiYnM / lessonsofacto.com/videos/032-c...
Yoav Weiss reposted
Something I've been helping @yoav.ws with. A proposal to allow you to measure Speculation Rules API and <link rel=preload> usage. Are you over-speculating? Under-speculating? Until now you've only really been able to measure secondary impact, but with this proposal you'll can have better data.
Blink: Intent to Prototype: Speculative load measurement
Yoav Weiss reposted
Speeding up CSS with compression dictionaries. @yoav.ws shows how combining critical and full CSS via compression dictionaries cuts bandwidth and accelerates page transitions. Works now in Chromium. #performance #css calendar.perfplanet.com/2025/how-to-...
Yoav Weiss reposted
shout out to @frehner.me for adding name only container queries in Safari! bugs.webkit.org/show_bug.cgi...
Yoav Weiss reposted
Web Performance Calendar day 13 with Yoav Weiss (@yoav.ws) showing us a clever and creative way to ship *only* critical/necessary CSS for each page type (home, search, etc) while also avoiding duplicate code in the CSS bundles. calendar.perfplanet.com/2025/how-to-...
Yoav Weiss reposted
We have Custom Elements, but do we also need Custom Attributes? This was discussed at TPAC. Is it something you'd like on the platform? https://github.com/WICG/webcomponents/issues/1029
Yoav Weiss reposted
Compression dictionaries is now an official RFC! www.rfc-editor.org/rfc/rfc9842....
Yoav Weiss reposted
I'm proposing a change to iframes that will allow child frames synchronous access to data attributes on the parent frame. Let me know your thoughts: github.com/blittle/ifra...
Yoav Weiss reposted
β¨ SPDY STREAM 011 β¨ w/ @krzksz.bsky.social & @yoav.ws After deploying the SPECULATION RULES API to their merchants, they join me this week to discuss the experience and their findings. Join us! (updated day and time) π Thursday Sept 25 β° 11am EST, 5pm CEST π bit.ly/spdy-stream-011
@lukewarlow.dev I just discovered github.com/whatwg/fetch... thanks to @jakearchibald.com Something like this has been a recurring request at the WebPerfWG, beyond `fetch()` github.com/w3c/resource... It'd be great if this could cover both!
Yoav Weiss reposted
π Fetch streams are great, but contrary to popular belief, they're not good for measuring upload/downloading progress. β¬οΈ Here's why, and how to avoid the gotchas β¬οΈ jakearchibald.com/2025/fetch-s...
Yoav Weiss reposted
Great post and it's been a pleasure helping @krzksz.bsky.social and @yoav.ws get this working on Shopify. performance.shopify.com/blogs/blog/s...
Yoav Weiss reposted
Yoav Weiss reposted
Yoav Weiss reposted
Blink: Intent to Implement and Ship: Http cookie prefix
Yoav Weiss reposted
CSS uses a complex algorithm to decide how to animate transforms. If you get it wrong, as many folks do, you end up with an unnatural animation. Here's how it works, and how to avoid the pitfalls. jakearchibald.com/2025/animati...
In case anyone out there is looking for a good-first Chromium bug, issues.chromium.org/issues/42421... is one I'd be happy to mentor someone through..
Yoav Weiss reposted
Great video! Hoping my βBug Fixesβ PR mentioned at 24:20 can make it into WebKit soon π
β¨ How We Contribute To Browser Standards β¨ by @yoav.ws The 3rd of the presentations from the #SPDYmeetup 003. πΈ Yoav shares how his career working on browsers and for browser vendors has now brought him to Shopify, enabling him to address possible shortcomings in standards π₯ youtu.be/VEYxyNxfqG8
Yoav Weiss reposted
β¨ How We Contribute To Browser Standards β¨ by @yoav.ws The 3rd of the presentations from the #SPDYmeetup 003. πΈ Yoav shares how his career working on browsers and for browser vendors has now brought him to Shopify, enabling him to address possible shortcomings in standards π₯ youtu.be/VEYxyNxfqG8
Yoav Weiss reposted
β¨ Speculation Rules, and Their Effect on Shopify Stores β¨ by @krzksz.bsky.social πΈ As part of the Growth Services team, Mateusz talks about the team's long journey to implement Speculation Rules at Shopify and, the lessons learned along the way. #SPDYMeetup π₯ youtu.be/8k2cGNjwJ3c
Yoav Weiss reposted
Avoiding the fomo this year by eagerly being a part of #perfnow in 2025. Tickets on sale now to help you avoid that fomo too. perfnow.nl/speakers.html
Feeling the #perfnow fomo hard this morning.
Yoav Weiss reposted
Forget the G7 β, this was the SPDY6 β : π΅π±πΊπΈπͺπΈπ¨π¦π¬π§π«π·. An assemblage of great global minds for last night's #SPDYmeetup in Toronto. Everything was as stellar as could be. @guaca.bsky.social @yoav.ws + @krzksz.bsky.social all delivered poigant presentations! π Recordings to be shared shortly. β¨ππΎβ¨
Import maps are a great way to minimize cache invalidation in your module tree. But up until recently, they had a ton of sharp edges. So we fixed them!! shopify.engineering/resilient-im...
@zachleat.com here's that blog post I promised shopify.engineering/resilient-im...
Yoav Weiss reposted
Would web devs use this? - subscribe to highly anticipated features (like Temporal) - get notified when they land in a new browser / become Baseline - via email, bsky, GitHub, Slack, whatever
π‘ Idea: a way to get notified when a feature you're interested in ships in a browser (or all of them) so you can start jamming on it immediately
Yoav Weiss reposted
π’ We Announced speakers for the TORONTO SPDY MEETUP 003: Performance At Shopify: Estela Franco πͺπΈ, Yoav Weiss π«π· and Mateusz Krzeszowiak π΅π± will walk us through how Shopify is doing their part is helping merchants be fast, and STAY fast. ποΈ JOIN US bit.ly/spdy_toronto_003
Yoav Weiss reposted
Replying to @joe.trusktr.io
Latest Chrome (and Safari I think?) implement multiple import maps, which I think enables this behavior (thanks @yoav.ws ) I donβt think you have to do document.write() tricks to get it working, just inline it in html.
If you ever wanted to use `sizes=auto` and were bummed out about Safari/Firefox support, Shopify now got a polyfill for ya! github.com/Shopify/auto...