Request mapping

The Request Map Generator is a terrific tool. It’s made by Simon Hearne and uses the WebPageTest API.

You pop in a URL, it fetches the page and maps out all the subsequent requests in a nifty interactive diagram of circles, showing how many requests third-party scripts are themselves generating. I’ve found it to be a very effective way of showing the impact of third-party scripts to people who aren’t interested in looking at waterfall diagrams.

I was wondering… Wouldn’t it be great if this were built into browsers?

We already have a “Network” tab in our developer tools. The purpose of this tab is to show requests coming in. The browser already has all the information it needs to make a diagram of requests in the same that the request map generator does.

In Firefox, there’s a little clock icon in the bottom left corner of the “Network” tab. Clicking that shows a pie-chart view of requests. That’s useful, but I’d love it if there were the option to also see the connected circles that the request map generator shows.

Just a thought.

Have you published a response to this? :

Responses

Dror T

@adactio adactio.com/journal/15797 that’s what Firefox Lightbeam is, isn’t it? (I really wanted to comment directly on your site but, well, maybe one of these days I’ll have an IndieWeb site!)

# Posted by Dror T on Wednesday, September 11th, 2019 at 2:17pm

Paul Irish

Yup. Same. I’ll be working on this soon.

# Posted by Paul Irish on Monday, September 30th, 2019 at 5:05pm

danq.me

We should spend less time reading and more time writing online. Dan’s comments on an inspiring essay.

# Wednesday, October 2nd, 2019 at 8:10am

14 Likes

# Liked by Katie Sylor-Miller on Monday, September 30th, 2019 at 3:44pm

# Liked by 🌙 Stephanie @ View Source AMS on Monday, September 30th, 2019 at 3:44pm

# Liked by Dean van Niekerk on Monday, September 30th, 2019 at 3:44pm

# Liked by Lewis Flude on Monday, September 30th, 2019 at 3:44pm

# Liked by Patrick Kettner on Monday, September 30th, 2019 at 5:09pm

# Liked by Michael on Monday, September 30th, 2019 at 5:41pm

# Liked by Dave Rupert on Monday, September 30th, 2019 at 5:41pm

# Liked by Jan Skovgaard on Monday, September 30th, 2019 at 5:41pm

# Liked by Jay 🇪🇺 on Monday, September 30th, 2019 at 7:40pm

# Liked by Ben Seven on Monday, September 30th, 2019 at 8:15pm

# Liked by Þęęm Mûjãwãř... on Monday, September 30th, 2019 at 8:15pm

# Liked by Maud Nals on Monday, September 30th, 2019 at 8:15pm

# Liked by SKshahidKafan on Tuesday, October 1st, 2019 at 4:28am

# Liked by Adam Procter on Monday, October 7th, 2019 at 8:38am

1 Bookmark

# Bookmarked by Jamie Tanna on Friday, September 13th, 2019 at 8:25pm

Related posts

A web font strategy

How I’m prioritising performance when it comes to typography on The Session.

Reasoning

In which I find a tagline for Web Day Out and a tagline for React.

Harry Roberts is speaking at Web Day Out

This line-up just gets better and better! You’ll want to be in Brighton on March 12th, 2026.

The web on mobile

Technically, websites can do just about anything that native apps can do. And yet the actual experience of using the web on mobile is worse than ever.

Making the new Salter Cane website

A redesign with modern CSS.

Related links

The end of responsive images - Piccalilli

Hallelujah! Support for sizes="auto" is finally landing in Firefox and Safari! Praise be!

Tagged with

The Great CSS Expansion | Butler’s Log

Web development follows a familiar cycle. First we glue together a solution with whatever we have — JavaScript, image hacks, Flash, anything. Then the platform matures, and CSS or HTML eventually makes that same workaround native. Rounded corners, custom fonts, smooth scrolling, sticky positioning: all of these started as JavaScript-heavy hacks before CSS turned them into a single declaration.

We are in another one of those transition moments. A new wave of long-requested CSS features is finally landing, and many of them are explicitly designed to replace patterns that used to require JavaScript. Not as approximations — as first-class platform primitives that handle the edge cases, run in the right thread, and need zero dependencies.

Tagged with

JS-heavy approaches are not compatible with long-term performance goals

Frameworks like React are often perceived as accelerators, or even as the only sensible way to do web development. There’s this notion that a more “modern” stack (read: JS-heavy, where the JS ends up running on the user’s browser) allows you to be more agile, release more often with fewer bugs, make code more maintainable, and ultimately launch better sites. In short, the claim is that this approach will offer huge improvements to developer experience, and that these DevEx benefits will trickle down to the user.

But over the years, this narrative has proven to be unrealistic, at best. In reality, for any decently sized JS-heavy project, you should expect that what you build will be slower than advertised, it will keep getting slower over time while it sees ongoing work, and it will take more effort to develop and especially to maintain than what you were led to believe, with as many bugs as any other approach.

Where it comes to performance, the important thing to note is that a JS-heavy approach (and particularly one based on React & friends) will most likely not be a good starting point; in fact, it will probably prove to be a performance minefield that you will need to keep revisiting, risking a detonation with every new commit.

Tagged with

The Main Thread Is Not Yours — Den Odell

Every millisecond you spend executing JavaScript is a millisecond the browser can’t spend responding to a click, updating a scroll position, or acknowledging that the user did just try to type something. When your code runs long, you’re not causing “jank” in some abstract technical sense; you’re ignoring someone who’s trying to talk to you.

This is a great way to think about client-side JavaScript!

Also:

Before your application code runs a single line, your framework has already spent some of the user’s main thread budget on initialization, hydration, and virtual DOM reconciliation.

Tagged with

NoLoJS: Reducing the JS Workload with HTML and CSS - Web Performance Calendar

You might not need (much) JavaScript for these common interface patterns.

While we all love the power and flexibility JS provides, we should also respect it, and our users, by limiting its use to only what it needs to do.

Yes! Client-side JavaScript should do what only client-side JavaScript can do.

Tagged with

Previously on this day

8 years ago I wrote Robustness and least power

A tale of two principles.

11 years ago I wrote Brighton in September

The digital festival is in full swing.

14 years ago I wrote The mind-blowing awesomeness of dConstruct 2012

Preceded by the mind-blowing awesomeness of Brighton SF.

16 years ago I wrote JavaScript jamboree

Whacky and wonderful JavaScript experiments.

20 years ago I wrote Backnetworking

This is my honour roll: it was an honour to meet these people.

20 years ago I wrote Fables of the dConstruction

A whirlwind weekend of geeky goodness in Brighton.

22 years ago I wrote Farewell to Florida

It’s time for me to head back to Blighty. My stay in Saint Augustine wound up being longer than originally intended but there are worse places to be stranded for a few extra days.

23 years ago I wrote It's alive!

I have my iBook back!