Stoyan Stefanov
Stoyan Stefanov
@stoyan.me
stoyan.me, PerfPlanet, "JavaScript Patterns", "React: Up & Running", YSlow, SmushIt. Formerly of Facebook, WebPageTest, Yahoo
1.5K followers251 following388 posts
Time to retire my rant? www.youtube.com/watch?v=VJaa... 'cuz JPEG-XL is now in Chrome! developer.chrome.com/blog/jpeg-xl...
My example of "AI is amazing! (at things I don't know anything about)" For my SightRead.org project I use a font called MusGlyphs. The thing is I needed a glyph that is not in the font. Emailed the author, he suggested I just go for it in a font editing tool. FontForge is what I used and ...
Blog post where I was wondering why Chrome devtools is not showing me the correct initiator for an image download. And I think it's the `scheduler.yeild()` to blame. www.phpied.com/debugging-do...
My friend Javor Vatchkov just launched bandscheck.com, a nice way to see who's playing in your area tonight and in the future. Fun way to discover new artists too, thanks to audio (video) sample of each artist's work. Give it a spin!
america.gov vs gov.uk on my iPhone 8 (Safari 15). Watch this talk www.youtube.com/watch?v=VdBx... by @therealnooshu.bsky.social Hobbs about what happened during the pandemic, people desperately looking for gov't info and browsing with horrible connections on devices such as ...
Blog post where I look at my server logs, trying to answer the question: does `llms.txt` in your root help at all? www.phpied.com/llms-txt-age...
Blog by @csswizardry.com reminding us about the UNO metric @timvereecke.bsky.social introduced on the web performance calendar csswizardry.com/2026/08/uno-... UnO = Underrated Observables 😜
Speaking of the web performance calendar... December is a-approaching, what are YOU going to write about? calendar.perfplanet.com/contribute/
New blog post about becoming a Micro-Influencer on Instagram: www.phpied.com/i-am-now-an-... (meaning 10K followers) How I got there (not hard, just persistence for 5+ months) and what are the benefits (not monetary or any real influence). AMA.
Stoyan Stefanov reposted
SIR @stoyan.me and I just hanging out. Published sooooooon....
New blog in the series about building SightRead.org www.phpied.com/quick-and-di...
sightread.org/blog/asymmet... Adding support for 7/8 and family to my music sight reading project
New blog post about an experiment in measuring how rendering times are affected by the size of SVGs www.phpied.com/measuring-sv...
I don't think there are many music dictation apps out there, but here's v1 of mine. Rhythm-only for now, part of the sightread.org project. To try sightread.org?rhythm-dicta... To read the blog post sightread.org/blog/quests-...
Stoyan Stefanov reposted
7 tips for your #WebPerformance education: Every December, @stoyan.me publishes the excellent Web Performance Calendar. It is a great collection of insights from the world's top experts. Even in 2026, these articles are a "must-read." Here is what caught my eye this year (thread). ⤵️
New blog post www.phpied.com/type-checkin... This is now part 4 of something I thought will be a quick note. Installment 4 talks about type checking without TypeScript. Hello JSDoc! And so the DIY-ing continues until morale improves!
Stoyan Stefanov reposted
Huge congrats and kudos to @stoyan.me for running it and to all the authors for writing articles for this year's Web Performance calendar. calendar.perfplanet.com/2025/ The quality was very high, and it feels like every second post was a banger!
New blog post: www.phpied.com/maximally-mi... It's about staying away from most everything the JS ecosystem has to offer and stick close to the web platform. A build is still necessary because of long lived caches and updates but it can be tiny and simple. Time will tell how this strategy plays out
Stoyan Stefanov reposted
Let's make 2026 the year to make web simple again. Not everything needs to be an app, sometimes its just idk a website. 🥳🥳
Web Performance Calendar day 31 article 5/5: @infrequently.org investigates SPA usage patterns showing that users often trigger only ~1 soft navigation per page load. If the heavy upfront JS costs aren’t being amortized, what are SPA's performance benefits? calendar.perfplanet.com/2025/the-cur...
Stoyan Stefanov reposted
People like to say “once the single page app is booted, it’s faster”, but they’re wrong — stats show few subsequent navigations occur. React simply isn’t worth the cost for most websites.
Web Performance Calendar day 31 article 5/5: @infrequently.org investigates SPA usage patterns showing that users often trigger only ~1 soft navigation per page load. If the heavy upfront JS costs aren’t being amortized, what are SPA's performance benefits? calendar.perfplanet.com/2025/the-cur...
Stoyan Stefanov reposted
I almost slipped this article because that headline is usually a red flag to me. But I'll be damned, every single one of these features slap.
Web Performance Calendar day 31 article 2/5: @keerthanak17.bsky.social on making friends with Chrome DevTools and transforming it into a powerful tool for deep understanding, debugging, and improving of real-world web performance calendar.perfplanet.com/2025/chrome-...
Stoyan Stefanov reposted
Put the NYE champagne down… my article is up on the 2025 Web Performance Calendar 🥳
Web Performance Calendar day 31 article 4/5: @twnsnd.com on Compression Dictionaries to dramatically shrink responses (60–90% smaller than Brotli/GZIP). Why adoption is slow. Practical architectural decisions and implementation tips to get huge bandwidth wins. calendar.perfplanet.com/2025/from-th...
Stoyan Stefanov reposted
Replying to @stoyan.me
@stoyan.me it's been a fantastic Web Performance Calendar, thank you for curating it and Happy New Year!
Stoyan Stefanov reposted
Wrapping up the year with my article for the Perf Calendar with my write up about how I ended up creating agent.perflab.io! It has AI, it has Perf…what else could you want 😎🔥 I’m always happy to see my content in the Performance Calendar! Thanks for the initiative @stoyan.me !
Web Performance Calendar day 31 article 3/5: Can AI meaningfully help with real-world performance analysis? @webx.bsky.social explores how to train AI/LLM agents to interpret complex browser data (like DevTools traces) into actionable insights. calendar.perfplanet.com/2025/teachin...
Web Performance Calendar day 31 article 5/5: @infrequently.org investigates SPA usage patterns showing that users often trigger only ~1 soft navigation per page load. If the heavy upfront JS costs aren’t being amortized, what are SPA's performance benefits? calendar.perfplanet.com/2025/the-cur...
Web Performance Calendar day 31 article 4/5: @twnsnd.com on Compression Dictionaries to dramatically shrink responses (60–90% smaller than Brotli/GZIP). Why adoption is slow. Practical architectural decisions and implementation tips to get huge bandwidth wins. calendar.perfplanet.com/2025/from-th...
Web Performance Calendar day 31 article 3/5: Can AI meaningfully help with real-world performance analysis? @webx.bsky.social explores how to train AI/LLM agents to interpret complex browser data (like DevTools traces) into actionable insights. calendar.perfplanet.com/2025/teachin...
Web Performance Calendar day 31 article 2/5: @keerthanak17.bsky.social on making friends with Chrome DevTools and transforming it into a powerful tool for deep understanding, debugging, and improving of real-world web performance calendar.perfplanet.com/2025/chrome-...
Web Performance Calendar day 31 article 1/5: Tsvetan Stoychev shares that BasicRUM (open-source Real User Monitoring tool) will have its source code released Q1 2026. Self-hosted, privacy-friendly, with AI-powered insights & dashboards to spot perf issues calendar.perfplanet.com/2025/open-so...
New blog post about subsetting a ligature-heavy font highperformancewebfonts.com/read/subsett... Almost always we subset based on text. But in my case, a more fine-tuned glyph-based approach saves 91% of bytes as opposed to 74% in the usual way. Worth it?
Stoyan Stefanov reposted
Our Web Performance Journey guide is live on PerfPlanet Calendar!
Web Performance Calendar day 30 with @sergeyche.dev, Eric Goldstein and Alex Chernyshev on mastering perf: get business to care, link UX speed to outcomes, set thresholds, understand real users with percentiles, trends, distributions, tie to business metrics calendar.perfplanet.com/2025/7-steps...
Web Performance Calendar day 30 with @sergeyche.dev, Eric Goldstein and Alex Chernyshev on mastering perf: get business to care, link UX speed to outcomes, set thresholds, understand real users with percentiles, trends, distributions, tie to business metrics calendar.perfplanet.com/2025/7-steps...
I added a little feature to sightread.org to remove the chrome so I can screen-record exercises UI-free and post them as Instagram reels. This way folks can squeeze a bit of practice while scrolling. If that sounds like you: www.instagram.com/sightreadorg/
Stoyan Stefanov reposted
My contribution to this years Web Performance Calendar is all about Third Parties and Single Points of Failure (SPOF). Based on @httparchive.org data I found that 67% of websites have at least 1 render blocking third party - and quite a few of them are SPOF risks!
Web Performance Calendar day 29 with @paulcalvano.bsky.social's research on 3rd parties, SPOF, and the need to test and monitor these. 67% of sites out there have at least 1 render-blocking external dependency. calendar.perfplanet.com/2025/third-p...
Web Performance Calendar day 29 with @paulcalvano.bsky.social's research on 3rd parties, SPOF, and the need to test and monitor these. 67% of sites out there have at least 1 render-blocking external dependency. calendar.perfplanet.com/2025/third-p...
Stoyan Stefanov reposted
My article for Performance Calendar is live, looking at tips to help focus when doing performance traces.
Web Performance Calendar day 28 when Ian Duffy shows us how to tame Chrome’s Performance panel: reduce noise, search fast, annotate, use Insights, and customize tracks calendar.perfplanet.com/2025/tips-fo...