Chrome Prototype To Throttle Your Web Pages
Written by Ian Elliot   
Wednesday, 06 February 2019

How to make the web go faster? It's easy, you simply impose guillotine policies on what is being downloaded. If a web page loads a resource that is "too big" - just block it!

chromiumicon

This gives you some idea just how out of touch browser developers are. The real worry is that the wider subculture of browser  developers might just be in the same bubble and actually go through and implement it.

OK, we are all guilty of adding to web pages so that they get bigger and bigger. No one is denying that page bloat is a real problem but it is the web page/app developer's problem not the browser maker's.

The idea of "Never Slow Mode", is simply to impose a limit on, say, JavaScript and give up loading it when that limit has been reached. This would make the browser go faster, but it is also fairly obvious that it would break the page.

It also seems that the suggestion is that JavaScript programs could be allocated a limited run time and aborted if they take longer. Other bad habits are also the targets of the proposal - no use of write, no synchronous Ajax requests.

The only slightly clever parts of the proposal is that the budgets get reset if the user interacts with the page - so your JavaScript might be allowed to continue to run. The current limits are suggested to be:

  • Per-image max size: 1MiB
  • Total image budget: 2MiB
  • Per-stylesheet max size: 100KiB
  • Total stylesheet budget: 200KiB
  • Per-script max size: 50KiB
  • Total script budget: 500KiB
  • Per-font max size: 100KiB
  • Total font budget: 100KiB
  • Total connection limit: 10
  • Long-task limit: 200ms

Caps do not apply to workers and size caps are lifted for resources loaded from Service Worker Cache Storage.

And if these limits don't take your breath away you have no creativity.

The details of the new mode aren't 100% clear and as it is only an internal proposal we have to hope that it will never happen, but it gives you food for thought about how browser people are focused on their software rather than yours. You might over-stuff the page. It might not even be your doing given the number of inputs there are to a page. Even so in the end it is you, or the company you are working for, which determine how well-crafted and svelte the final product is. Whatever its eventual qualities, it is your page, your site and it has been constructed as best you can, given the constraints, and it does what you intend it to.

Now along comes a browser and starts to tear your work to shreds. It sometimes isn't as bad as aborting resource downloads. Sometimes it can be just be an option to view your page in condensed or simplified mode. Imagine if Picasso had had to suffer his works been reprocessed in simplified mode? An artist has a right to have his work displayed as the artist intended and I would argue that the same applies to us. Browsers should concentrate on rendering a page as closely as possible to the intent of its creator. Browsers shouldn't go beyond the standards and impose clever tricks on the web developer's work.

So what about users who don't want to download "too much" JavaScript? Surely they have a right to block excessive resource downloads? Well this is one way to look at it. Another is that they don't have to download your page at all. There is a very strong argument that if you don't like the work you should just go elsewhere and not deface it as you please.

For us programmers, the years since the introduction of the personal computer and the open internet have seen nothing but restrictions on what we can do. Apps stores control what apps we can make available, boot loaders refuse to load custom operating systems and browsers block anything they think might be used inappropriately.  Now it seems the browser designers value the speed and efficiency of their product over the integrity of ours. One might think that they should be on our side.

Perhaps it's time for a "Works best as I designed it" campaign.

Or perhaps - "Never Slow; Always Broken".

chromiumicon

More Information

Never Slow

Related Articles

Google Changes API Making Chrome Adblocking Harder

A Real World Ad Blocker

Microsoft To Go Chromium Update: Confirmed

Google Wants To Kill The URL And Makes A Start With Chrome 69

Apple And Google Break W3C Standards       

The Astonishing Progress Of Blink       

Google Removes CSS Regions From Blink - An Optimization Too Far

Chrome Drops Support For Plugins

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Ruby On Rails Adds Kamal And Thruster Support
17/12/2024

Ruby on Rails 8 has been released. The new version comes preconfigured with Kamal 2 for application deployment, a new proxy called Thruster, and a trio of SQLite database-backed adapters named Solid C [ ... ]



Swimm Releases Copilot Extension For Documentation
03/12/2024

Swimm, best known for its AI-driven software documentation tools, has announced an extension for GitHub Copilot. The Swimm team says the extension means developers using GitHub Copilot Chat can turn C [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Wednesday, 06 February 2019 )