Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change some misconceptions about web components #6

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Change some misconceptions about web components #6

wants to merge 1 commit into from

Conversation

ergo
Copy link

@ergo ergo commented Jan 31, 2017

Hi, this piece of information contradicts facts so I thought it might make sense to change it.

It was adopted by giant enterprises (biggest players in their industry) like: Github, Slack, Comcast, USAToday (Ganett), ING, Coca-Cola, Electronic Arts, General Electric, Google, Youtube and others.
Just https://www.webcomponents.org/ reached over 500 reusable elements, just polymer slack channel is now 6,5k users.
The current growth and adoption looks very bright, chrome, opera and safari already shipped 1.0 versions of most of the spec (so no polyfills are needed), firefox is close behind and edge is implementing right now.

Reference:
https://youtu.be/VBbejeKHrjg?t=9m33s

Hi, this piece of information contradicts facts so I thought it might make sense to change it.

It was adopted by giant enterprises (biggest players in their industry) like: Comcast, USAToday (Ganett), ING, Coca-Cola, Electronic Arts, General Electric, Google, Youtube and others.
Just https://www.webcomponents.org/ reached over 500 reusable elements, just polymer slack channel is now 6,5k users.
Please don't write information without any fact checking.

Reference:
https://youtu.be/VBbejeKHrjg?t=9m33s
@tpluscode
Copy link

Maybe you should write slowly gain traction? As much as I agree with you, I don't see 2017 being the turning point for Web Components. Maybe 2018?

On the other hand you're right. Adoption grows and Aurelia, Angular and vue.js all offer web components as build target or use some of the spec, right?

@ergo
Copy link
Author

ergo commented Jan 31, 2017

Well, polymer channel gained over 2k developers in last 3 months I think, and there are other libraries like x-tags, bosonic, svelte and others so I think components are gaining traction quite fast.

@codylindley
Copy link
Collaborator

codylindley commented Jan 31, 2017

Before we conclude such massive adoption, I'd want to see the usage. Sprinkling a tech around does not mean it is being used by a lot of developers (even if a large company sprinkles it). I just have no reason to believe that it has actually gain any traction with developers. I'm taking my cues from surveys.

https://ponyfoo.com/articles/javascript-developer-survey-results
http://stackoverflow.com/research/developer-survey-2016
http://stateofjs.com/
https://ashleynolan.co.uk/blog/frontend-tooling-survey-2016-results
https://risingstars2016.js.org/

I just don't see web components & polymer show up in meaningful ways in surveys. And certainly not as promised.

I should re-word the sentence to include the word "developers".

@codylindley
Copy link
Collaborator

codylindley commented Jan 31, 2017

This seems like a reasonable thought from a developer, given survey results and the amount of time the tech has been around.

"Web components will continue to lurk and wait for significant traction by developers that might never come to be."

If someone can show me a wide spread survey that can show significant traction for web components I'd reconsider my position.

@ergo
Copy link
Author

ergo commented Jan 31, 2017

"Before we conclude such massive adoption, I'd want to see the usage. "

Well did you see the keynote that I linked?

Biggest companies in the world use web components in their main products, yet you bring up survey results that mean very little in the end (they don't ask for web component usage really). Real life adoption and projects powered by it are the testament of usage - not bubbles created by hype.

Aurelia and Angular 2.x also can produce web components out of the box so I think all of that counts.

You just keep in mind that "web components" do not mean specific framework brand. Right now every browser has/soon will have web components baked in, that should tell something.

Vue.js has ~7k people on their gitter, polymer has ~6k and I think there are more web components published than there are vue elements, yet no one disputes vue popularity.
Lets try to avoid creating perception bubbles here.

Stack overflow: polymer ~16k results , vue ~8k (hard to exactly estimate popularity of web components on SO since like I mentioned its not like its a single library/framework).
Github stars: Angular 20k, Polymer 16k, Aurelia 8k.

If we want the numbers also show up in the surveys - maybe it would be a good idea to not tell them to use specific tech because it will never take off, especially when it is part of web platform itself.

@ergo
Copy link
Author

ergo commented Jan 31, 2017

I'm not really sure how to gather meaningful numbers since its hard to prove web component usage :-)
It's obvious when it comes to polymer, but for angular 2.x, Aurelia may or may not output web components.

Sites like https://customelements.io/ or https://www.webcomponents.org/ may give some idea of adoption but that is all.

I'll try to give this more thought but it is tricky subject since web components are part of w3c standards.

I'm actually what exactly traction means in this context, its not like webcomponents are a framework that will stop being maintained if developers will get bored with development - its part of browser API.

@codylindley
Copy link
Collaborator

codylindley commented Jan 31, 2017

@ergo - I think you have raised some really good points. Would it help if I changed the words "web components" to "polymer"?

Also, if you were going to say something about Web Components in 2017, what would you say?

My opinion is that most developers don't think much about them. Not, meaning that as a slight. I literally mean, little thought is given to them by a significant number of developers. What do you think?

BTW - did see the link. I just don't think specific types of usage equate to large numbers of devs.

@tpluscode
Copy link

Also, if you were going to say something about Web Components in 2017, what would you say?

I would emphasize that browser vendors have finally found middle ground and the specs are actually moving forward in terms of native support. The table on https://www.webcomponents.org/ is as green as ever and by the end of this year I think that all browsers will support WC specs (probably with the exception of imports, but they are easiest to polyfill AFAIK)

This is big because flaky support may be the biggest obstacle

@ergo
Copy link
Author

ergo commented Jan 31, 2017

I think this would make it even more tricky - because I think as of today polymer is the most mature and widespead library for web components (kind of like jquery for webcomponents, i know that this in some part contradict what i said earlier that web components are not tied to a framework but I'm not sure how to phrase this better), and like I said more people are using it everyday - if you don't want Angular/Aurelia route - which can technically produce web components for you - but its not like they will be really reusable if your application doesn't use the framework.

Even today HP just announced they launched https://lookbook.hp.com/us/en/ using polymer - so I def. think there is nice adoption on this front, there are polymer jobs posted almost daily on the channel.

My opinion is that most developers don't think much about them. Not, meaning that as a slight. I literally mean, little thought is given to them by a significant number of developers. What do you think?

That is true and I tend to agree, there are tons of misconceptions about web components and polymer in general (some are justified because of old 0.5 version which was very different, slow because of problems with ShadowDOM polyfilling). So one of the reasons people are afraid to jump on this bandwagon is they read about components being slow, or not supported by browsers etc. One can see questions like this on slack channel very often.

Also, if you were going to say something about Web Components in 2017, what would you say?

I would say that this is the right moment to actually start developing using them especially with polymer - as the ecosystem and library itself matured greatly, there is wealth of options for developer including polymer-redux or uniflow-polymer. Browser vendors are on webcomponent side, 1.0 spec is implemented, right now I would say that the tech and ecosystem is mature enough to use - I've been observing it for over a year and started developing last 6 months and had very good experiences with it - and I'm not convinced it would be the same a year ago. I would def. send out a positive signal on the subject.

In my book web standards beat custom implementations because frameworks come and go, and can change drasticly - case of Angular 2.x is obvious here. And we as web developers should try to use the awesome platform that browsers provide for us.

@codylindley
Copy link
Collaborator

codylindley commented Jan 31, 2017

I have to admit that I am leery of the premise that a lack of support for X by browser X will cause developers not to use it when a polyfill has been available (babel crushes this premise).

IMO, developers have had the right tools for sometime to make good use of WC and things like polymer. Some have done that. But, from what I can determine the fact that WC is spec (and polyfilled for sometime now) has not been helpful to bring the technology into the mainstream concern of the average developer.

I have to ask. At what point is one allowed to dissent over a stagnate solution (as it pertains to adoption)?

Also, where polymer does show up in the surveys does allow us to infer something. Mainly that compared to the other options in the survey (specific question) it is way less popular than other solutions developers favor.

Additionally, when it it does not show up at all (in results or questions) in a survey, I think we can infer something.

@ergo
Copy link
Author

ergo commented Jan 31, 2017

I have to admit that I am leery of the premise that a lack of support for X by browser X will cause developers not to use it when a polyfill has been available (babel crushes this premise).

Unfortunatelly some things cannot be properly polyfilled because of browser limitations - this is why polymer team came up with ShadyDOM concept instead of insisting on full ShadowDOM polyfill. See, this is complex and there had been multiple evaluations on the subject - unfortunately its not like you can slap some JS code and get things just working - even the Chrome Team got it wrong the first time (those are the people behind polymer btw).

sometime to make good use of WC and things like polymer.

Reality is this time is less than a year at least from my perspective - only now things are mature enough for general adoption - and "we" should encourage using standards.

WC is spec has not helpful bring the technology

Web Components are formed by 4 things, you need at least 2-3 natively supported to get them working on a reasonable level and with good performance. This support is actually fairly recent development.

Things like canvas or svg were not adopted in a day either or CSS3, the same applies here - now is the time where one can reasonably use webcomponents with confidence.

It is kind of self-fulfilling prophercy :) - you tell people "dont use web components they will not take off" - then surprise surprise - developers avoid solutions that people paint as a dead end.

How about we skip the polymer topic completely and maybe write something neutral like:

"Web Components 1.0 standard was agreed on by major vendor browsers in 2016 and is already implemented (or is being actively worked on in Edge) as stable part of web platform API and is ready for general use".

That is a fact - regardless of percieved adoption the API is there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants