<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Binh Bui</title>
    <description>The latest articles on Forem by Binh Bui (@thisisbinh).</description>
    <link>https://forem.com/thisisbinh</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F73067%2Fe466201c-5d4f-484b-9286-255c632c2c4d.jpg</url>
      <title>Forem: Binh Bui</title>
      <link>https://forem.com/thisisbinh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/thisisbinh"/>
    <language>en</language>
    <item>
      <title>Web Components statistics in 2017</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Mon, 30 Jul 2018 09:21:30 +0000</pubDate>
      <link>https://forem.com/thisisbinh/web-components-statistics-in2017-2ecf</link>
      <guid>https://forem.com/thisisbinh/web-components-statistics-in2017-2ecf</guid>
      <description>&lt;p&gt;This article is the last story in the series "Testing 696 Web Components". The statistics in this article covers many topics: the number of components published on webcomponents.org, distribution of components based on its libraries, working and non-working components, and some more interesting stats.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; These statistics were yielded roughly a year ago. Some of them might become irrelevant in the current day.&lt;/p&gt;

&lt;h3&gt;
  
  
  300 elements in 3 months. That's an impressive number.
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Frzvu8nmg4kovi609kaw1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Frzvu8nmg4kovi609kaw1.png"&gt;&lt;/a&gt;&lt;br&gt;
Let's break those numbers down:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Polymer consistently accounts for more than 90% of the published elements. It's evident that Polymer is dominating in the scene of web component libraries.&lt;/li&gt;
&lt;li&gt;An impressive number of ~100 custom elements are published each month.&lt;/li&gt;
&lt;li&gt;The most notable change here is the distribution of Polymer 1 and 2 components. Polymer 2 has a surge of 278 elements while Polymer 1 roughly stays the same.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Out of 696 tested elements, here is how many are functioning
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fr1hdp7wc2lwpylhc1cwz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fr1hdp7wc2lwpylhc1cwz.png"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Heads up!&lt;/strong&gt; Every working component has its own live demo and screenshots for you to try in Vaadin Directory.&lt;/p&gt;
&lt;h3&gt;
  
  
  Browser Compatibility
&lt;/h3&gt;

&lt;p&gt;Out of 489 working elements, here's how many that works in each browser:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fl4mqk6uoyhy3xffmr0cc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fl4mqk6uoyhy3xffmr0cc.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;Without any doubts, things have been revolving in favor of web components. More companies and technologies are betting on it. I hope you enjoy the series. If you have not read the previous two, here they are:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;If you have any question regarding testing web components, feel free to PM or send me an email. Thanks for reading!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;For more news and writing pieces on Web Components, follow me on Twitter &lt;a href="https://twitter.com/binhbbbb" rel="noopener noreferrer"&gt;@binhbbbb&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;If you would like to try out Web Components, check out the series &lt;a href="https://vaadin.com/blog?tag=wcw" rel="noopener noreferrer"&gt;Web Components Wednesday&lt;/a&gt;, where I introduce and explain easy-to-use web components to beginners.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>javascript</category>
      <category>webcomponents</category>
      <category>statistics</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Top 5 obstacles I faced in testing 696 web components</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Thu, 26 Jul 2018 11:03:47 +0000</pubDate>
      <link>https://forem.com/thisisbinh/top-5-obstacles-i-faced-in-testing-696-web-components-1e13</link>
      <guid>https://forem.com/thisisbinh/top-5-obstacles-i-faced-in-testing-696-web-components-1e13</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Ffu0hobuwz6ahci3vcjo4.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Ffu0hobuwz6ahci3vcjo4.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  &lt;em&gt;Image credit: thoughtsofascent&lt;/em&gt;
&lt;/h6&gt;

&lt;p&gt;Following my last &lt;a href="https://dev.to/binhbbbb/the-story-of-a-man-who-has-tested-696-web-components-af8"&gt;autobiography&lt;/a&gt;, I promised to post a story concerning the toughest barriers I faced during testing web components.&lt;/p&gt;

&lt;p&gt;The fact is that, when the number of components reaches hundreds, there will be thousands of those obstacles you meet along the way. In this story, I will point out the 10 most common barriers.&lt;/p&gt;

&lt;h3&gt;
  
  
  No reliable content delivery network (CDN)
&lt;/h3&gt;

&lt;p&gt;In short, CDN offers a fast, efficient and secure delivery of content to websites. To test remotely on sites like CodePen, JSFidde or JSBin, a reliable CDN is heavily needed.&lt;/p&gt;

&lt;p&gt;Otherwise, you need to test it locally, which includes downloading the source code, installing the dependencies and serving the demo on the website (I say it's triple, if not more, the amount of work).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzi4sjmtgm8pboxu94gwi.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzi4sjmtgm8pboxu94gwi.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Import links for dependencies are inconsistent
&lt;/h3&gt;

&lt;p&gt;Most of the times you will see the HTML imports are either&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;link rel="import" href="../google-map/google-map.html"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;link rel="import href="bower_components/google-map/google-map.html"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;So, which one is the correct way?&lt;/p&gt;

&lt;p&gt;The answer is that they are both correct. When developing locally, bower_components is the folder that contains all of your dependencies. So it is logical to import codes from there, the problem comes when you want to make demos for example on CodePen, there is no bower_components folder because it's only installed locally.&lt;/p&gt;


&lt;div class="ltag_github-liquid-tag"&gt;
  &lt;h1&gt;
    &lt;a href="https://github.com/webcomponents/polymer-boilerplate/issues/11" rel="noopener noreferrer"&gt;
      &lt;img class="github-logo" alt="GitHub logo" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg"&gt;
      &lt;span class="issue-title"&gt;
        How to make elements reusable through Bower
      &lt;/span&gt;
      &lt;span class="issue-number"&gt;#11&lt;/span&gt;
    &lt;/a&gt;
  &lt;/h1&gt;
  &lt;div class="github-thread"&gt;
    &lt;div class="timeline-comment-header"&gt;
      &lt;a href="https://github.com/zenorocha" rel="noopener noreferrer"&gt;
        &lt;img class="github-liquid-tag-img" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Favatars1.githubusercontent.com%2Fu%2F398893%3Fv%3D4" alt="zenorocha avatar"&gt;
      &lt;/a&gt;
      &lt;div class="timeline-comment-header-text"&gt;
        &lt;strong&gt;
          &lt;a href="https://github.com/zenorocha" rel="noopener noreferrer"&gt;zenorocha&lt;/a&gt;
        &lt;/strong&gt; posted on &lt;a href="https://github.com/webcomponents/polymer-boilerplate/issues/11" rel="noopener noreferrer"&gt;&lt;time&gt;Mar 20, 2014&lt;/time&gt;&lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag-github-body"&gt;
      &lt;p&gt;When we stopped to use the CDN and started to use Bower we had this default &lt;code&gt;bower_components&lt;/code&gt; folder commited (which is now called &lt;code&gt;lib&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;We made this decision because we want people to be able to demonstrate their elements right from the &lt;code&gt;gh-pages&lt;/code&gt; and debug them easily.&lt;/p&gt;
&lt;p&gt;However this causes reusability problems. They cannot be shared with Bower and used by other apps.&lt;/p&gt;

    &lt;/div&gt;
    &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/webcomponents/polymer-boilerplate/issues/11" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Polymer comes up with the relative path serving style to make online and local testing consistent. webcomponents.org CDN also behaves in a pretty similar way. So if you develop a web component using Polymer, always uses the relative path for imports and the command polymer serve for serving.&lt;/p&gt;

&lt;h3&gt;
  
  
  People usually forget to import the polyfill
&lt;/h3&gt;

&lt;p&gt;Even though modern browsers are making progress in implementing Web Components standards, not all the technologies are natively supported. When I was testing, so far only Chrome &amp;amp; Opera supports Web Components natively. The rest of them provide partial support and usually need the polyfill, webcomponentsjs, to make web components function properly.&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/webcomponents" rel="noopener noreferrer"&gt;
        webcomponents
      &lt;/a&gt; / &lt;a href="https://github.com/webcomponents/webcomponentsjs" rel="noopener noreferrer"&gt;
        webcomponentsjs
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A suite of polyfills supporting the HTML Web Components specs
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🚨 Moved to &lt;a href="https://github.com/webcomponents/polyfills/tree/master/packages/webcomponentsjs" rel="noopener noreferrer"&gt;&lt;code&gt;webcomponents/polyfills/packages/webcomponentsjs&lt;/code&gt;&lt;/a&gt; 🚨&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;The &lt;a href="https://github.com/webcomponents/webcomponentsjs" rel="noopener noreferrer"&gt;&lt;code&gt;webcomponents/webcomponentsjs&lt;/code&gt;&lt;/a&gt; repo has been migrated to &lt;a href="https://github.com/webcomponents/polyfills/tree/master/packages/webcomponentsjs" rel="noopener noreferrer"&gt;&lt;code&gt;packages/webcomponentsjs&lt;/code&gt;&lt;/a&gt; folder of the &lt;a href="https://github.com/webcomponents/polyfills" rel="noopener noreferrer"&gt;&lt;code&gt;webcomponents/polyfills&lt;/code&gt;&lt;/a&gt; 🚝  &lt;em&gt;monorepo&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;We are &lt;em&gt;actively&lt;/em&gt; working on migrating open Issues and PRs to the new repo. New Issues and PRs should be filed at &lt;a href="https://github.com/webcomponents/polyfills" rel="noopener noreferrer"&gt;&lt;code&gt;webcomponents/polyfills&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/webcomponents/webcomponentsjs" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;It's quite common that developers forget to import the polyfill in the demo. Hence, those samples will not work in any browsers except for Chrome or Opera.&lt;/p&gt;

&lt;h3&gt;
  
  
  No demo or documentation
&lt;/h3&gt;

&lt;p&gt;I saw a lot of projects, getting published without a demo and a single word for how to use it. This is exceptionally careless considering the element was created with the author's own way of usage. Most of the time, I have to read the source code and figure out how to use it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyxv5sy0sfhsz7mzqp52p.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyxv5sy0sfhsz7mzqp52p.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Naming convention is important
&lt;/h3&gt;

&lt;p&gt;Even though not being official, it's always a good practice to name your main component the same name as your project's. For example, I've met cases where the primary element is named skeleton-layout.html, and the project is named good-component . Those projects leave me extremely confused.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Ftwy1wckm6qxze276c9aa.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Ftwy1wckm6qxze276c9aa.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Final word
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;"Testing a product is a learning process" - Brian Marick&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The best thing about this journey is that I can learn the mistakes, which often go past the normal eyes, that people make. I have fun along the process, and will all the way again if given a chance.&lt;/p&gt;

&lt;p&gt;Here is my last autobiography that I mentioned in the beginning, it’s a 4-min read. Feel free to check it out.&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;If you have any question regarding testing web components, feel free to PM or send me an email.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;For more news and writing pieces on Web Components, follow me on Twitter &lt;a href="https://twitter.com/binhbbbb" rel="noopener noreferrer"&gt;@binhbbbb&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;If you would like to try out Web Components, check out the series &lt;a href="https://vaadin.com/blog?tag=wcw" rel="noopener noreferrer"&gt;Web Components Wednesday&lt;/a&gt;, where I introduce and explain easy-to-use web components to beginners.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>javascript</category>
      <category>webcomponents</category>
      <category>autobiography</category>
      <category>beginners</category>
    </item>
    <item>
      <title>The story of a man who has tested 696 Web Components</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Fri, 20 Jul 2018 11:57:53 +0000</pubDate>
      <link>https://forem.com/thisisbinh/the-story-of-a-man-who-has-tested-696-web-components-af8</link>
      <guid>https://forem.com/thisisbinh/the-story-of-a-man-who-has-tested-696-web-components-af8</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ISAWmx91--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/vliu7bnu9v85drbhnjhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ISAWmx91--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/vliu7bnu9v85drbhnjhy.png" alt="" width="740" height="492"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  &lt;em&gt;Image credit: DZone&lt;/em&gt;
&lt;/h6&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Do you know what Web Components is? How would you test hundreds of them?”&lt;/em&gt; — Sami Ekblad, my supervisor in our interview&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That was the beginning of my journey to explore the world of web components. I, myself, was a 22-year-old IT student with no professional experience. And to make it even more interesting, that interview was the first time I heard the term “Web Components.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Starting from zero
&lt;/h2&gt;

&lt;p&gt;Things were rough in the beginning. No one in our company has done this task before, or anyone else publicly. There were no testing guidelines, no formats, no nothing. This was the scopes list I come up with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Functionality: Is it working?&lt;/li&gt;
&lt;li&gt;Design: How does it look?&lt;/li&gt;
&lt;li&gt;Compatibility: Does it work on all platforms?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I begin by manually picking some from &lt;a href="https://www.webcomponents.org/"&gt;webcomponents.org&lt;/a&gt; and start testing them. Luckily, they feature JSFiddle demo (&lt;a href="//jsfiddle.net/egu2h4hs/"&gt;like this&lt;/a&gt;) for previewing components. The downside is that they are available only if the author provides the sample code. Nonetheless, those inline demos are the little sunshine! ☀️&lt;/p&gt;

&lt;p&gt;To keep track of the records, I set up a spreadsheet. Everything was manual, the spreadsheet, the writing, and the testing. They were notably time-consuming, but my boss, he believes it’s the way to go before any automation takes place.&lt;/p&gt;

&lt;h2&gt;
  
  
  Automation kicks in. Well, not really!
&lt;/h2&gt;

&lt;p&gt;With the discovery of webcomponents.org API, I managed to populate my spreadsheet with all the web components there, along with its author, description, etc. Python was my best friend during this time, it’s fast and convenient for making small scripts to work with the API and the spreadsheet. However, the reality kicks in, I still have to test the components manually.&lt;/p&gt;

&lt;p&gt;Safari Tech Preview, Chrome Canary, Firefox Nightly, and Opera were the four browsers I used for testing the compatibility, mainly because Web Components standards are always implemented there first before the stable versions acquire them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Testing requires patience
&lt;/h2&gt;

&lt;p&gt;For the components that have demos, it was easy. You just copy and paste the Fiddle link to every browser to see if it works, right?&lt;/p&gt;

&lt;p&gt;The answer is NO!&lt;/p&gt;

&lt;p&gt;Let’s consider one person, who makes 5 web components, and each of them was made differently. Now multiply that one person by a hundred and there you go, hundreds of projects with fat-fingering and typos.&lt;/p&gt;

&lt;p&gt;For the components that do not have demos, I need to understand what they are for, how they were created and how I should use them in order to write a sample code that works. It was a nightmare to deal with hundreds of code writing styles.&lt;/p&gt;

&lt;p&gt;In the end, I’m not even sure if that component does not function because of the element or because of my code.&lt;/p&gt;

&lt;h2&gt;
  
  
  The result
&lt;/h2&gt;

&lt;p&gt;As I become more familiar, things have processed much faster. I was able to analyze a component quickly.&lt;/p&gt;

&lt;p&gt;After 5 months, I finally accumulated 696 tested elements (I will feature these statistics in another story).&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“How did you do it?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Well, the whole process was a trial and error. Experiencing is the answer.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“How do I feel after testing that much components?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Tired but also proud, I did not have any prior experience to web components, testing or even coding before doing these. And the best thing about it? The records are public.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Seriously, everything is public?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Yes! Every working component that I have tested is included in &lt;a href="https://vaadin.com/directory"&gt;Vaadin Directory&lt;/a&gt;. They come alone with a personal review and a demo sample, which I made in CodePen &amp;amp; JSFiddle.&lt;/p&gt;

&lt;p&gt;Make sure you check it out!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uXviF7cG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/thj4s4i0vhvmujh8fcyl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uXviF7cG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/thj4s4i0vhvmujh8fcyl.png" alt="" width="800" height="583"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Final word
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Am I the one who tested the most number of web components in the world?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Maybe.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Do I understand Web Components the best now?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Definitely not, there are a lot of people who comprehend so much more of this beautiful standard, and I am merely a tester.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What is the point of this story?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It’s something I’ve been wanting to publish on Medium for a while now, I started testing one year ago. The journey was amazing to me, and I hope you might learn something from it.&lt;/p&gt;

&lt;p&gt;Feel free to ask me anything regarding my journey or about Web Components. Thanks for reading!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;For more news and writing pieces on Web Components, follow me on Twitter &lt;a href="https://twitter.com/binhbbbb"&gt;@binhbbbb&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;If you would like to try out Web Components, check out the series &lt;a href="https://vaadin.com/blog?tag=wcw"&gt;Web Components Wednesday&lt;/a&gt;, where I introduce and explain easy-to-use web components to beginners.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>storytelling</category>
      <category>javascript</category>
      <category>webcomponents</category>
      <category>autobiography</category>
    </item>
    <item>
      <title>The emoji web components you never thought you need</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Tue, 17 Jul 2018 10:44:26 +0000</pubDate>
      <link>https://forem.com/thisisbinh/the-emoji-web-components-you-never-thought-you-need-4gie</link>
      <guid>https://forem.com/thisisbinh/the-emoji-web-components-you-never-thought-you-need-4gie</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgflip.com%2F2e5snu.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgflip.com%2F2e5snu.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This July 17th, let us celebrate the World Emoji Day by looking at some of the coolest emoji web components by &lt;a href="https://twitter.com/notwaldorf" rel="noopener noreferrer"&gt;notwaldorf&lt;/a&gt;, our Emoji Ambassador 👩🏻‍✈️&lt;/p&gt;

&lt;h2&gt;
  
  
  🌧 emoji-rain 🌧
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fvq6tv518brm4f5ay6ccj.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fvq6tv518brm4f5ay6ccj.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This funky &lt;a href="https://vaadin.com/directory/component/notwaldorfemoji-rain" rel="noopener noreferrer"&gt;component&lt;/a&gt; is gonna pour down a heavy rain of emojis. It's mesmerizing, colorful and beaujiful (Get it?). &lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/notwaldorf/emoji-rain" rel="noopener noreferrer"&gt;Source code&lt;/a&gt; ◆ &lt;a href="http://meowni.ca/emoji-rain" rel="noopener noreferrer"&gt;Demo&lt;/a&gt; ◆ &lt;a href="https://codepen.io/vaadin/pen/jKZzVN?editors=1000" rel="noopener noreferrer"&gt;CodePen&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  📚 emoji-selector 📚
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzq4sggmq4e3oqgp3iq9e.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzq4sggmq4e3oqgp3iq9e.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://vaadin.com/directory/component/notwaldorfemoji-selector" rel="noopener noreferrer"&gt;emoji-selector&lt;/a&gt; features a large set of emojis. It provides users with a "Recently Used" windows, like how it is in most smartphone keyboard, and this is extremely handy if you're a ❤️ or 🔥 spammer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/notwaldorf/emoji-selector" rel="noopener noreferrer"&gt;Source code&lt;/a&gt; ◆ &lt;a href="http://meowni.ca/emoji-selector/components/emoji-selector/demo/" rel="noopener noreferrer"&gt;Demo&lt;/a&gt; ◆ &lt;a href="https://codepen.io/vaadin/pen/qyZGow?editors=1000" rel="noopener noreferrer"&gt;CodePen&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ✨ emojillate ✨
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F0or5gk8i5e3nq1ryknoe.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F0or5gk8i5e3nq1ryknoe.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;emoji + pixellate = emojillate&lt;/strong&gt; - It translates any picture to full-text of emojis, so you can even share it with people by simple copy &amp;amp; paste. Check out the CodePen demo for a surprise.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/notwaldorf/emojillate" rel="noopener noreferrer"&gt;Source code&lt;/a&gt; ◆ &lt;a href="https://meowni.ca/emojillate/" rel="noopener noreferrer"&gt;Demo&lt;/a&gt; ◆ &lt;a href="https://codepen.io/vaadin/pen/wxGLvq" rel="noopener noreferrer"&gt;CodePen&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;For more news and writing pieces on Web Components, follow me on Twitter &lt;a href="https://twitter.com/binhbbbb" rel="noopener noreferrer"&gt;@binhbbbb&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;If you would like to try out Web Components, check out the series &lt;a href="https://vaadin.com/blog?tag=wcw" rel="noopener noreferrer"&gt;Web Components Wednesday&lt;/a&gt;, where I introduce and explain easy-to-use web components to beginners.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>emoji</category>
      <category>webcomponents</category>
      <category>worldemojiday</category>
      <category>polymer</category>
    </item>
    <item>
      <title>How to use the Google Map Web Component</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Wed, 11 Jul 2018 10:33:32 +0000</pubDate>
      <link>https://forem.com/thisisbinh/how-to-use-the-google-map-web-component-4c7i</link>
      <guid>https://forem.com/thisisbinh/how-to-use-the-google-map-web-component-4c7i</guid>
      <description>&lt;p&gt;Everybody uses Google Map, or at least the people I know. It's handy, ubiquitous and accurate (most of the time). In order to integrate Google Map to your site, you need to have a good knowledge of the &lt;a href="https://developers.google.com/maps/documentation/javascript/tutorial" rel="noopener noreferrer"&gt;Maps JavaScript API&lt;/a&gt;. Now, with the invention of Web Components, this is all you need for a nice window of Google Map:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;google-map api-key="AIzaSyD3E1D9b-Z7ekrT3tbhl_dy8DCXuIuDDRc"&amp;gt;&amp;lt;/google-map&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;The result:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fjvn2sif5xi3v30n5617p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fjvn2sif5xi3v30n5617p.png"&gt;&lt;/a&gt;&lt;br&gt;
Too good to be true? That's Web Components for ya 😉 Let's look at some more examples on how to utilize this powerful web component.&lt;/p&gt;
&lt;h2&gt;
  
  
  Displaying the marker and the poly in Google Map
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://vaadin.com/directory/component/googlewebcomponentsgoogle-map" rel="noopener noreferrer"&gt;&lt;code&gt;google-map&lt;/code&gt;&lt;/a&gt; web component also provides some other useful sub-elements to use with: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;google-map-directions&lt;/code&gt;: provides the &lt;a href="https://developers.google.com/maps/documentation/javascript/directions" rel="noopener noreferrer"&gt;Directions API&lt;/a&gt; service.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;google-map-marker&lt;/code&gt;: provides a map marker. It is used as a child of google-map.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;google-map-point&lt;/code&gt;: provides a map point. It can be used as a child of all google-map-*.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;google-map-poly&lt;/code&gt;: displays a series of connected lines segments. It is used inside google-map and needs at least two google-map-point.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;google-map-search&lt;/code&gt;: provides the &lt;a href="https://developers.google.com/places/web-service/intro" rel="noopener noreferrer"&gt;Places API&lt;/a&gt; functionalities.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example, here's how you would use a marker (click HTML to show the code):&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/vaadin/embed/bjNweW?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;br&gt;
As you can see from the code, a longitude and a latitude value are needed for the marker. You may include as many markers in a single map as possible, the attribute &lt;code&gt;fit-to-markers&lt;/code&gt; makes sure that all of them are in the view. Well, it does not function in my demo.&lt;/p&gt;

&lt;p&gt;What is the difference between a &lt;code&gt;google-map-point&lt;/code&gt; and a &lt;code&gt;google-map-marker&lt;/code&gt;? A marker can be displayed directly inside &lt;code&gt;google-map&lt;/code&gt; and draggable, while a point is fixed and can be only used as children of &lt;code&gt;google-map-*&lt;/code&gt;, such as &lt;code&gt;google-map-poly&lt;/code&gt;:&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/vaadin/embed/rraWzO?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;I couldn't succeed in making &lt;code&gt;google-map-directions&lt;/code&gt; and &lt;code&gt;google-map-search&lt;/code&gt; work, the same things happened several months ago when I first tried these. Feel free to check out and fork the pen here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;google-map-directions&lt;/code&gt;: &lt;a href="https://codepen.io/vaadin/pen/NBPbVQ" rel="noopener noreferrer"&gt;https://codepen.io/vaadin/pen/NBPbVQ&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;google-map-search&lt;/code&gt;: &lt;a href="https://codepen.io/vaadin/pen/mjyRXZ" rel="noopener noreferrer"&gt;https://codepen.io/vaadin/pen/mjyRXZ&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And if you got it working, please leave a comment below to teach me :)&lt;/p&gt;

&lt;h2&gt;
  
  
  Final words
&lt;/h2&gt;

&lt;p&gt;With the invention of Web Components, things might have gone two steps easier for developers to integrate technology like Google Map in a website. And the best thing about Web Components is that in a few years, all of its standards will be available in every browser natively.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;For more news and writing pieces on Web Components, follow me on Twitter &lt;a href="https://twitter.com/binhbbbb" rel="noopener noreferrer"&gt;@binhbbbb&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;If you would like to try out Web Components, check out the series &lt;a href="https://vaadin.com/blog?tag=wcw" rel="noopener noreferrer"&gt;Web Components Wednesday&lt;/a&gt;, where I introduce and explain easy-to-use web components to beginners.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>beginners</category>
      <category>webcomponents</category>
      <category>polymer</category>
      <category>google</category>
    </item>
    <item>
      <title>Comparison table of 5 datepicker web components</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Wed, 04 Jul 2018 11:51:54 +0000</pubDate>
      <link>https://forem.com/thisisbinh/comparison-table-of-5-datepicker-web-components-5e1f</link>
      <guid>https://forem.com/thisisbinh/comparison-table-of-5-datepicker-web-components-5e1f</guid>
      <description>&lt;p&gt;I usually tested web components in my free time. This time, I tested some datepicker components and figured out I should make a short comparison table. The comparison includes some features, as well as, indicates which browser they are functioning properly (Chrome, Safari, Opera, Firefox, Edge, IE11). Mobile testing was performed on iPhone X.&lt;/p&gt;

&lt;p&gt;There is also a more detailed &lt;a href="https://vaadin.com/blog/web-component-wednesday-1-datepicker"&gt;blog&lt;/a&gt; version of these five datepicker components.&lt;/p&gt;

&lt;p&gt;If you like this kind of blog, share or comment so I will make more of those in the future.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;name&lt;/th&gt;
&lt;th&gt;Mobile&lt;/th&gt;
&lt;th&gt;I18n&lt;/th&gt;
&lt;th&gt;Arrow Keys&lt;/th&gt;
&lt;th&gt;Library&lt;/th&gt;
&lt;th&gt;Working&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://vaadin.com/directory/component/fooloomanzoodatetime-picker"&gt;calendar-element&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;Polymer#^2.0.0&lt;/td&gt;
&lt;td&gt;C,S,O,F,E,I&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://vaadin.com/directory/component/roxusrange-datepicker"&gt;range-datepicker&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✘&lt;/td&gt;
&lt;td&gt;Polymer#^2.0.0&lt;/td&gt;
&lt;td&gt;C,S,O&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://vaadin.com/directory/component/motssapp-datepicker"&gt;app-datepicker&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;✘&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✘&lt;/td&gt;
&lt;td&gt;Polymer#1.9 - 2&lt;/td&gt;
&lt;td&gt;C,S,O,F,E,I&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://dev.toCheck%20vaadin-date-picker%20on%20Vaadin%20Directory"&gt;vaadin-date-picker&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;Polymer#^2.0.0&lt;/td&gt;
&lt;td&gt;C,S,O,F,E,I&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://vaadin.com/directory/component/mpachnismp-calendar"&gt;mp-calendar&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✔&lt;/td&gt;
&lt;td&gt;✘&lt;/td&gt;
&lt;td&gt;Polymer#^2.0.0&lt;/td&gt;
&lt;td&gt;C,S,O,F,E&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>webcomponents</category>
      <category>beginners</category>
      <category>polymer</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Upgrade to Polymer 3 or LitElement?</title>
      <dc:creator>Binh Bui</dc:creator>
      <pubDate>Thu, 24 May 2018 11:03:29 +0000</pubDate>
      <link>https://forem.com/thisisbinh/upgrade-to-polymer-3-or-litelement-1olj</link>
      <guid>https://forem.com/thisisbinh/upgrade-to-polymer-3-or-litelement-1olj</guid>
      <description>&lt;p&gt;From &lt;a href="https://www.polymer-project.org/blog/2018-05-02-roadmap-faq"&gt;Roadmap update, part 2: FAQ&lt;/a&gt;, Polymer team states:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;• For new projects, we suggest that you use LitElement (and if your project is an app, PWA Starter Kit, which incorporates LitElement).&lt;/p&gt;

&lt;p&gt;• We recommend that you update existing apps and elements to use Polymer 3.0.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What is your opinion about this? I know that converting a big application is not easy so is it worth it, or can you survive with Polymer 2?&lt;/p&gt;

</description>
      <category>polymer</category>
      <category>webcomponents</category>
      <category>javascript</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
