Hi, I'm Patrick, a product manager on the Edge web platform team at Microsoft. I'm responsible for developer relations, which means you'll typically find me publicly talking about the good work which our team is doing in Chromium and for the web.
Previously, I worked at Mozilla, on the Firefox DevTools team.
I'm part of the Open Web Docs governing committee and a co-chair of the W3C WebDX community group. I also run DevTools Tips.

I have 20+ years of working experience with the web and have worked as a designer, web developer, software engineer, browser engineer, engineering manager, and product manager.

Get in touch with me

My signature

WebMCP: Stop scraping the web, start calling it (dotAI, Paris)

Today, most web browsing AI agents rely on DOM and screenshot analysis, and then guessing which clicks to make. WebMCP is the bridge from "AI can read pages" to "AI can safely and predictably do work on pages" by replacing guesswork with actual web developer involvement and explicit tool contracts. In this talk I show how WebMCP turns multi-step, high-friction workflows into structured tool calls you can trust. WebMCP eliminates DOM brittleness, is resilient to UI churn, doesn't require shipping a separate server-side MCP endpoint, and let's you incrementally make your existing site agent-ready.
Video recording coming soon.

My dotAI speaker card with my face and name, and the message Patrick is a dotAI 2026 speaker.

I'm worried about the web

I'm worried about the web. I don't want to live in a world where most users of internet-connected devices consume their information and accomplish their tasks via a chat bot interface.

Abstract illustration of a heart shape with multiple dots inside and outside of it, connected by wavy lines.

What's missing from the web to support transparent browser restarts?

Could new web storage capabilities help sites preserve temporary state across browser restarts, crashes, and discarded tabs?

On the left, a cracked browser window contains four colored shapes (a red circle, green square, blue triangle, and pink pentagon), representing application state. An arrow points to a central storage bucket holding the same shapes. A second arrow points from the bucket to an intact browser window on the right, where the shapes have been restored.

Calling for Interop 2027 proposals

External link to blogs.windows.com/msedgedev

The Interop team is now accepting proposals from the web community for what existing standard feature to improve in 2027. If you have come across web platform features that could benefit from better interoperability, now is the time to submit your ideas! The proposal window is open until September 23, 2026.

Draw fixed-size gap decorations by using container query units

A little technique that uses container query units in CSS to draw fixed-size gap decorations.

A screenshot of the demo page, showing 4 paragraphs separated by centered red dot dividers.

Browser engine-specific WPT failures

Web developers crave cross-browser compatibility, but browser engines don't always implement the same features, or not always to the same degree of quality. This page shows the number of tests (from the web-platform-tests project) which fail in just one browser engine. It also lists those tests. Fixing them would improve interoperability for web developers, and make the web a better place for everyone.

A cut-off part of the engine-specific failures graph, showing the three lines for Chrome, Firefox, and Safari.

Fun with CSS Grid Lanes (CSS Day, Amsterdam)

The early web was a playground. The tools were limited, but we made things anyway, and constraints fueled our creativity.
That spirit still matters, and that's how we push the web forwat.
CSS has grown into something really powerful, and one of the features I'm most excited about is CSS Grid Lanes, aka CSS masonry. In this talk, I go deep into how it works, how it differs from Grid, what it can do, how to use it in practice, and I go through many creative demos.
Play with Grid Lanes, help push the platform forward!

The slides require a recent version of Edge or Chrome with the #enable-experimental-web-platform-features flag enabled.
Slides, recording coming soon.

Me, on stage, at CSS Day, with the intro slides behind me, saying Fun with CSS Grid Lanes.
Photo: Josh Tumath

Get in touch with me