Igalia and Decentralization

 

bkardell.com

 

 

 

 

The "other" centralization...

Many thousands of organizations are built on foundational Web Standards - a commons

Hundreds of orgs participate in standards bodies that make them

# Igalia, Standards and Engines

Browser vendors each have...

  • Departments
  • Budgets
  • Managers
  • People with special skills
  • A backlog 

Different priorities, skillsets, budgets

It's only a standard if everyone makes it through

Things are backed up

So vendors are hesitant to take new things up. Especially to be the first to invest, or solve hard problems like decentralizing the web itself.

So everyone waits... and hopes they do it.

This is a feedback loop.

Even small things can linger without a final implementation, costing us all...

Millions of developers

Thousands of organizations with a vested interest in the Web

Hundreds of W3C Member Orgs

A few very browser vendors

Billions of users

All of us.

Imagine if we could fix this problem?

We can!
Open gives us all the ability to have a more equal voice!

2004

Mosaic

Netscape

IE

Opera

KHTML

Webkit

Chromium

Mozilla 1

From Proprietary to Open

All of the standards implementations are now open

Why this matters...
Think about this...

2017: CSS Grid
remember that?

Origins back to 1996

Several failed attempts

 

 

How?

Open.

 

The Web Platform is a commons.

We love the commons,

and we can help.

A lot isn't stuck over  politics or things we imagine...

Many things are stuck for far more practical reasons:
They can't get prioritized

We can help.

  •  V8, JavaScriptCore, SpiderMonkey
  • Chromium, Gecko/Servo, Webkit

We are trusted committers everywhere

WebKit contributions

Chromium contributions

ResizeObserver

Responsive image preloading

gaps

aspect ratio

 

We love hard problems.

MathML!

We helped move container queries

.canI:has() { ... }

This is a Really Good Thing

Because we all move forward together.

We believe in creating a healthier web ecosystem

Including expanding investment and prioritization beyond browser vendors

Lots of organizations have reasons to help, even ones you might not imagine...

This is happening in WebKit...

Because... cooking machines.

Why do we even have the model we do?

but, ok... decentralizing the web itself...

 

  • Browser inconsistencies
  • Spec language
  • Security questions
  • Difficulty testing
  • Architectural hurdles 
  • ... each subject to priotization filters, budget constraints, etc.

Its a big challenge.

.registerProtocolHander

 

  

The HTML5 specification neither matched implementations nor allowed for a usefully workable definition of some things.

 

Things like URLs

Internal fixes!

  • ServiceWorkers
  • URL encoding/parsing
  • etc..

Secure Contexts / Potentially Trustworthy

needs better definition

Chrome internally had at least 6 interpretations

... in Chrome

 

Improvements in Chrome
+ local loopbacks in Firefox and experiments in GTK/WPE, support in libsoup / discussions with Apple

Extension-specific features

 

  • https://github.com/whatwg/html/issues/5787

  • https://chromium-review.googlesource.com/c/chromium/src/+/2332675

  • https://bugs.chromium.org/p/chromium/issues/detail?id=1153336

  • https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/2fNfT6DEWJo/m/khJPt4CpAAAJ

  • https://chromium-review.googlesource.com/c/chromium/src/+/2563683

  • https://chromium-review.googlesource.com/c/chromium/src/+/2580067

  • https://chromium-review.googlesource.com/c/chromium/src/+/2570568

  • https://chromium-review.googlesource.com/c/chromium/src/+/2577688

  • https://chromium-review.googlesource.com/c/chromium/src/+/2563883

  • https://bugzilla.mozilla.org/show_bug.cgi?id=1220810

  • https://bugs.webkit.org/show_bug.cgi?id=140625

  • https://bugs.chromium.org/p/chromium/issues/detail?id=1079333

 

There's a lot!

  • https://bugs.chromium.org/p/chromium/issues/detail?id=64100#c49

  • https://chromium-review.googlesource.com/c/chromium/src/+/2560305

  • https://bugs.webkit.org/show_bug.cgi?id=73177

  • https://lists.webkit.org/pipermail/webkit-dev/2020-April/031179.html

  • https://github.com/whatwg/html/pull/5482

  • https://bugzilla.mozilla.org/show_bug.cgi?id=1631446

  • https://github.com/web-platform-tests/wpt/issues/26819

  • https://bugs.chromium.org/p/chromium/issues/detail?id=1153336

  • https://chromium-review.googlesource.com/c/chromium/src/+/2563683

  • https://chromium-review.googlesource.com/c/chromium/src/+/2580067

  • https://chromium-review.googlesource.com/c/chromium/src/+/2570568

  • https://chromium-review.googlesource.com/c/chromium/src/+/2577688

 

  • https://chromium-review.googlesource.com/c/chromium/src/+/2563883

  • https://bugzilla.mozilla.org/show_bug.cgi?id=122081

  • https://bugs.webkit.org/show_bug.cgi?id=140625

  • https://bugzilla.mozilla.org/show_bug.cgi?id=1474543

  • https://bugs.chromium.org/p/chromium/issues/detail?id=522370

  • https://bugzilla.mozilla.org/show_bug.cgi?id=1660555

    ....

 

Each step gets us closer...

  • Web Platform Tests
  • Build deeper concensus
  • Continue to close the gap

// TODO...

Chromium Architecture

//chrome vs //content

UX / Permissions issues

 Problematic for downstream variation!

 

 

We would like to move this and allow the shipping of default handlers at both levels...

Thanks!

Igalia and Decentralization

By Brian Kardell

Igalia and Decentralization

  • 375