Browsers and websites should be PUBLIC, not private roads

(Paywall-free popularization like this is what I do for a living. To support me, see the end of this post)

Some websites are more equal than others…

Browsers and websites should be PUBLIC, not private roads /img/all-animals-are-equal.jpg
All websites are equal, but some websites...

</em></u>

If you can read this post is because, right now, you are using one of those software programs called “Web Browsers”. Without web browsers you could not use any website. We could safely say that they are among the most important, and most useful kind of software program for billions of people worldwide.

We already knew that the Web and web browsers have become obscenely complex. Today, we also know that a small, but relevant part of that complexity is there only to benefit big companies that cannot be bothered to play nice.

Browsers and websites should be like public roads. Instead…

Webkit, by Apple, is a web browser engine, that is the core, reusable component that programmers can adopt as starting block for their own browsers. Indeed, WebKit is “used by Safari, Mail, App Store, many other apps on macOS, iOS, and Linux” plus Playstations, Amazon Kindle and other devices.

Any software like WebKit should be designed according to non proprietary, general standards and protocol, just like highways, or parking lots, should have sizes, pavements and signs… that do not depend on the whims or defects of any specific car maker. And then, it’s cars that must adapt themselves to those rules to be “street legal”, not the opposite. It would make no sense to do the opposite, right?

WebKit, however, has this little big problem, that I only noticed it this month (*), but was known at least one year ago:

Browsers and websites should be PUBLIC, not private roads /img/webkit-source-code.jpg
<u><em><strong>CAPTION:</strong> 
<a href="https://twitter.com/javan/status/1243242460748361728" target="_blank">@javan, March 2020</a>

</em></u>

Trust me, you don’t need to be a programmer to understand what the problem is. That snapshot is part of a “Quirks” file in WebKit source code, that has one and one purpose only: to make WebKit bend over backwards to make some powerful websites happy. Scrolling the revision history of that file, even non-programmers can understand that it exists because, for example, “the Google Docs index page unfortunately is not currently compatible..[with some standard]". Or because "[under some normal circumstances] Facebook and Twitter will naively pause a .

Summing up, we have a Web that is obscenely complex, thus stifling competition and real innovation, also because a few companies, including some that support net neutrality, or have as much money as banks cannot be bothered to play nice.

Free markets and antitrust. Yeah, right

Other take-home lessons from that Quirks file include:

  • we only know this because the WebKit code is Open Source, that is readable by anyone. We know nothing of the “quirks” inside proprietary browsers, operating systems or apps
  • ordinary antitrust legislation may be as useless here as it is with “breaking up Facebook”

(*) Credits: information and inspiration for this post comes by this thread on the Nexa mailing list, started by G. Tesio.

Who writes this, why, and how to help

I am Marco Fioretti, tech writer and aspiring polymath doing human-digital research and popularization.
I do it because YOUR civil rights and the quality of YOUR life depend every year more on how software is used AROUND you.

To this end, I have already shared more than a million words on this blog, without any paywall or user tracking, and am sharing the next million through a newsletter, also without any paywall.

The more direct support I get, the more I can continue to inform for free parents, teachers, decision makers, and everybody else who should know more stuff like this. You can support me with paid subscriptions to my newsletter, donations via PayPal (mfioretti@nexaima.net) or LiberaPay, or in any of the other ways listed here.THANKS for your support!