Talk: Enhancing Web Responsiveness at Web Day 2026, Milan

I gave a talk about Enhancing Web Responsiveness at Web Day 2026 in Milan, sharing practical tips to debug and avoid slow interactions using Interaction to Next Paint (INP).
Making the web faster and more user-friendly

I gave a talk about Enhancing Web Responsiveness at Web Day 2026 in Milan, sharing practical tips to debug and avoid slow interactions using Interaction to Next Paint (INP).

I joined Mauro "Brainrepo" Murru on the GitBar podcast to chat about web performance, Core Web Vitals, image optimization, and the silent damage of Google Tag Manager.

I demoed how to use the Chrome DevTools MCP Server to connect AI with Chrome DevTools for visual testing, performance analysis, and browser automation.

I demoed the Chrome DevTools MCP Server to turn your terminal into an AI assistant for responsive testing, accessibility audits, and front-end debugging.

Interaction speed is a key aspect of a site’s responsiveness to user interactions. This talk will demonstrate practical techniques for improving slow interactions through real-world case studies of debugging and optimizing poor interaction speed.

On 16 April 2025, I presented at a Performance Observer meetup, sharing insights on debugging and optimizing Interaction to Next Paint (INP). This post includes the video recording of the talk.

Various techniques to render SVGs compared, including inline SVGs, the `<img>` tag, CSS backgrounds, and SVG sprites. Here's a summary of the key insights and recommendations from a design and web performance standpoint.

On 17 September 2024, I spoke at the We Love Speed 2024 conference about enhancing web responsiveness. Specifically, I discussed how to debug and avoid slow interactions based on my experience on auditing Interaction to Next Paint (INP) on clients' websites. This is the video of my talk.

In May 2024, I began speaking at conferences and meetups about enhancing web responsiveness. Specifically, I discuss debugging and avoiding slow interactions based on my experience on auditing Interaction to Next Paint (INP) on clients' websites. Videos, slides, dates and locations of my talk.

Exploring a practical solution for mitigating Cumulative Layout Shift (CLS) caused by promotional banners. Prevent unexpected layout shifts by using sessionStorage to remember the banner's content and display state across page loads.

Jake Archibald's talk "In the loop" is still one of the best sources of information on how browsers process tasks and are able to respond to user input. As I didn't find anything as comprehensible as that in text format, I transposed his talk into this blog post.
Google Chrome is introducing a new feature called scheduler.yield. This feature allows web developers to explicitly tell the browser to yield control to the main thread. Here are the key points.
As a web performance consultant, I'm always on the lookout for new developments that impact the user experience of websites. One such upcoming change is the introduction of a new metric called Interaction to Next Paint (INP) by Google. Set to become a Core Web Vital in March 2024, INP is designed to measure the time it takes for a website to respond to user interactions. In this blog post, we will delve into what INP is, why it matters, and how companies can prepare themselves to ensure their websites meet this crucial web performance metric.

In 2023 I've been speaking about web performance at conferences, Google Developer Groups (GDG) and local meetups all over Europe. The title of this talk is "How and Why ($) to improve web performance, practical tips for 2023".
Quicklink is a lightweight library created by Addy Osmani (Google) that prefetches pages linked to the current page, as the links to those pages enter the visible portion of the page (viewport). Here's a case study for it.

With the rise of very high density “super retina” displays in the newest high-end devices, capping image fidelity to 2x leads to a big improvement in terms of rendering speed, and no perceivable quality loss for your users. Here’s a new best practice on how to do that.

My blog used to be run by Jekyll on GitHub pages and its CSS was built using SASS. Today I decided to boost performance even more inlining the render-blocking critical CSS, but even searching the internet I struggled to find an easy way to do it. This post is for you, in case you want to do the same.
It's official. Responsive images are a W3C recommendation since November 2016, featuring the brand new picture tag and new attributes for the img tag: srcset and sizes
In the latest days I've been working on websites performance optimization and I realized that there is no way to take advantage of the progressive JPEG image format on websites if you're using jQuery_lazyload from Mika Tuupola, so I decided to write my own lazy load, which turned to be better for multiple reasons.
See all tags.