Weston Ruter
banner
weston.ruter.net
Weston Ruter
@weston.ruter.net
290 followers 140 following 130 posts
WordPress Core committer 👨🏻‍💻 Daddy² & husband 👨‍👩‍👦‍👦 Going by bike/bus/train 🚴‍♂️🚍🚈 Runner 🏃‍♂️ Cat person 😸 Linguaphile 🇲🇽🤟 Portland, Oregon 🇺🇸 [ˈwɛs.tn̩ ˈɹu.ɾɚ] Blog: https://weston.ruter.net Profile pic credit: @andy.thefragens.com
Posts Media Videos Starter Packs
Reposted by Weston Ruter
Big thanks to @weston.ruter.net for joining me on the ✨ SPDY STREAM 009 ✨ yesterday. Lots of details were shared about the progress on the #WordPress platform re: performance. This should edited for next week.
I love this new post from Speed Kit. They divide up the 2.5-second “Good” threshold for LCP into two additional thresholds: Instant (300ms) and Fast (1000ms), while the current Good threshold becomes merely “OK”.
Don’t Settle for “Good”: It Is Time for New LCP Thresholds | Speed Kit
We at Speed Kit are now extending Google's LCP thresholds in all our dashboards by adding two additional buckets to show more details for page loads faster than 2.5s.
www.speedkit.com
I'm super excited to see all of this happen on Glisan ASAP! I can't wait for how these changes will improve pedestrian safety, facilitate cycling, and calm traffic to reduce the frequent speeding and racing that happens in these 10 blocks between 82nd and 92nd. And thank you, @pbotinfo.bsky.social!
Just landed in WordPress trunk: scripts and script modules can be registered with a `fetchpriority` arg, and the Interactivity API script modules and comment-reply script use `low` by default. This can improve LCP by ~7% when the LCP element has an image: core.trac.wordpress.org/changeset/60...
Changeset 60704 – WordPress Trac
Blog Tool and Publishing Platform
core.trac.wordpress.org
I just presented “The Site Speed Frontier with Performance Lab and Beyond” at WordCamp US. Shortly before my talk, I published a companion blog post that has 10x the information I had time to share, and I've just added an embed of the livestream: weston.ruter.net/2025/08/27/t... #WCUS
The Site Speed Frontier with Performance Lab and Beyond - Weston Ruter
Analysis of the LCP impact for optimizations featured by the Performance Lab plugin and proposed for WordPress core. Presented at WCUS 2025.
weston.ruter.net
For intra-site navigations, I think speculation rules with moderate eagerness and prerendering is the much easier solution.
I'll check it out! Yeah, good point that a PWA can all but eliminate TTFB when using cache-first or stale-while-revalidate, but only for repeat visitors. But there is still the service worker startup cost since you can't use navigation preload.
My blog has reached a web performance milestone: It's now in CrUX for both mobile and desktop (at the origin level), and it passes the CWV assessment for each! But the web performance journey isn't over…
Web Performance Milestone - Weston Ruter
My blog is now passing the CWV assessment on desktop and mobile in CrUX and has 100 in Lighthouse! But the web performance journey isn't over.
weston.ruter.net
A script printed any other way (including in event handler attributes) will be blocked from execution since it could have been added due to an XSS exploit. These will appear as errors in the console.
To be compatible, themes and plugins must not print <script> tags directly. Instead, they must use the proper APIs: wp_enqueue_script(), wp_add_inline_script(), wp_localize_script(), wp_print_script_tag(), wp_print_inline_script_tag(), wp_enqueue_script_module() and the like.
I've published a new WordPress security plugin: Strict CSP. It helps mitigate cross-site scripting (XSS) vulnerabilities on the frontend and login screen (but not yet in the WP admin):
Strict CSP
Enforces a Strict Content Security Policy on the frontend and login screen to help mitigate any XSS vulnerabilities.
wordpress.org
¡Qué logro, ¿no?!
I just wish that the Gemini Code Assist plugin for JetBrains (PhpStorm) also automatically read from this .gemini/codestyle.md instead of requiring manual configuration of the prompt library in settings (i.e. copy the file contents and paste as the rules).