Merrick Christensen's Avatar
I have been impressed with the urgency of doing. Knowing is not enough; we must apply. Being willing is not enough; we must do.Leonardo Davinci

Extensible Web Summit

2014-04-05

As I sat down in a half empty room located at Adobe headquarters and began to look around it didn't take long for me to realize how truly privileged I was to be there. I felt humbled. Actually, I felt like an impostor, as if I had infiltrated a secret meeting of sages deciding the fate for something of massive importance. In representation, there were members of TC39, W3C Tag, Angular, Polymer, Ember & Sir Tim Berners-Lee. In fact, I requested a picture with him for posterity but found myself feeling like a humiliated rejected Bieber fan when he declined my request, and asked me to focus on the content. Touchè Mr. Lee. Below, is a summary of that very content. ;-)

The event was started with Daniel Appelquist whom I believe was the organizer of the event. It was to be run barcamp style, however, before the barcamp sessions there were a series of lightning talks.

Final Sessions

Lightning Talks

Yehuda Katz

Yehuda noted that the "don't break the web" requirement means that browser vendors don't have the liberty to "ship and iterate" in the traditional sense. The Extensible Web Manifesto is about providing primitives that allow developers to iterate in user space and eventually merge that progression back into the platform. This enables iteration and mitigates the burden of backward compatibility. It also empowers users to progress the platform. He noted Polymer in particular as providing high-level APIs in userland iteration, meanwhile leveraging that information to drive the platform forward.

Jake Archibald

Jake started about by lamenting the unfortunate lack of features found in the web platform such as push notifications, offline first, background updates, payments, alarms, geofencing, etc. He then went on to explain a new technology, Service Workers, that solves many of these problems.

Angelina Fabbro

Angelina gave a quick overview of Web Components. Namely,

Tab Atkins

Tab opened by conceding that CSS is by far the least extensible piece of the web platform. He then went over different ideas to open up CSS for developer empowerment. My favorite part was the optimistic and empowering close, "The future of CSS is open for business".

Domenic Denicola

Domenic shared his story about the Promises/A+ specification in which a community born specification is now a platform-wide primitive for thinking about asynchrony. He is now working on a streams specification. I owe Domenic a special bit of gratitude for convincing me to come to this meeting in the first place, thank you, Domenic.

Jeni Tennison

Jeni shared her work on a specification for packaging on the web. Today we optimize our applications using concatenation, however, you can't concatenate ES6 modules due to module scoping. There is also a large amount of work for mitigating requests, sprites or Base64 encoding images, CSS & JS concatenation etc. Packages are an answer to this problem.

Alex Russell

Alex proposed the question, how does progress happen? He contended that progress happens outside of the W3C, the W3C stamps that progress and they become standards. Progress happens with:

  • Evidence-based consensus, e.g. polyfill.
  • Engineers have personal experience with a problem and they fix it.

Progress starts with changing mind and ends with changing behavior. Delivering meaningful progress on the web requires that we ship and use evidence to iterate on the platform.

Anne van Kesteren

Anne told a story in which about a decade ago the HTML parser was standardized. Prior to that time browsers implemented HTML in a variety of ways which meant new specifications and standards were unreasonably difficult to agree upon and implement. Once they got behind a standard strategy of parsing HTML a great deal of progress was enabled. That work is leveraged as the underlying primitive for many of the features we are working on today. The point of the story, so far as I understood it, is that progress on the web platform requires a sort of "archaeology" in which you unearth the underlying primitives in our existing systems to propose meaningful ways of moving them forward. He noted a lot of things need some archaeological work done, namely styling form controls and content editing.

All of the above happened in about thirty minutes, it was wonderful. Afterward, we split up into the barcamp sessions in which I attended.

  1. Service Workers
  2. Web Components
  3. Bed Rock - Unearthing Primitives - A crazy awesome wacky idea of using MessageChannel's to provide low-level APIs.
  4. Packaging on the Web
  5. Remote Debugging - Source Maps - I bailed out to go listen to Misko Hevery discuss directive semantics in Dart with Justin Fagnani.

I considered posting my notes about the discussions and topics covered in these sessions but I think that content is best explored in the meeting minutes found on the events lanyrd page.

Discussing Web Packaging Web Components Drinks Discussing Sessions