Dear Web Developer(s),
While, as a software developer ourselves, we understand very well that new features are exciting to use and integrate into your work, we ask that you please consider not adopting Google WebComponents in your designs. This is especially important if you are a web developer creating frameworks for websites to use.
With Google WebComponents here we mean the use of CustomElements and Shadow DOM, especially when used in combination, and in dynamically created document structures (e.g. using module loading/unloading and/or slotted elements).
Why is this important?
For several reasons, but primarily because it completely goes against the traditional structure of the web being an open and accessible place that isn't inherently locked down to opaque structures or a single client. WebComponents used "in full" (i.e. dynamically) inherently creates complex web page structures that cannot be saved, archived or even displayed outside of the designated targeted browsers (primarily Google Chrome).
One could even say that this is setting the web up for becoming fully content-controlled.
It also creates problems for any browser that is not Google Chrome or a direct descendant of it (and that includes Mozilla's Firefox, despite being developed by a well-funded corporation), which is basically enforcing a full browser monoculture in the near future if web developers continue to adopt every latest new thing that comes out of the Google web labs in an "implementation-first" fashion, and continue to implement change for the sake of change. Once more, this is doubly-important for frameworks in use by thousands of websites that are at the heart of the Internet economy like on-line stores, bank sites, media sites, etc.
Full disclosure: While it is absolutely true that it is in our direct interest that web developers don't use something we are still working on implementing ourselves (considering our limited capacity as a smaller non-profit community, which is likely the same for any other true Open Source/Libre projects out there), the impact of what is outlined above is much more far-reaching than just our own projects; not only is it pushing for a proprietary web that is vendor-locked, it also, as stated, becomes something that will be impossible to archive, save or process.
"But I like the scoped styling I can do"
One of the main reasons people want to use shadow DOM these days is because it allows them to designate CSS styling that only applies to their little corner of the web page it is in (e.g. a widget). The thing is, we already had scoped styling in a much simpler (not script or DOM dependent) way that was actually asked for by web developers like yourself, that was actually standardized, and that got implemented by browsers, but then removed... basically because Chrome didn't implement it (despite resistance from designers) to be replaced with the much more complex Shadow DOM alternative; it would be much more useful to ask for that to be returned to the spec. You can help by getting involved with the requested spec change on WhatWG issue 4508  and/or Mozilla's implementation bug 1542645 .
The big question to framework and web developers
We know that some developers will obviously not be amenable to this request to avoid WebComponents (e.g. I don't expect Angular, developed by Google, or YouTube, owned by Google, to do anything but push these things) but we ask that you please consider this request if you don't have a direct need to actually use them.
To conclude, I'm hoping that you, our web creators, will continue to keep the big picture in mind when it comes to the internet being primarily a public exchange of information, keeping it open and accessible to all with the software your users choose or need to use.
Thanks for listening,
 https://github.com/whatwg/html/issues/552#issuecomment-178107702 and onwards
Pale Moon releases and site news
1 post • Page 1 of 1