{"id":44,"date":"2012-08-02T11:00:24","date_gmt":"2012-08-02T11:00:24","guid":{"rendered":"http:\/\/www.w3.org\/community\/webhistory\/?p=44"},"modified":"2012-08-02T11:00:24","modified_gmt":"2012-08-02T11:00:24","slug":"polyfills-2","status":"publish","type":"post","link":"https:\/\/www.w3.org\/community\/webhistory\/2012\/08\/02\/polyfills-2\/","title":{"rendered":"Polyfills"},"content":{"rendered":"<p>Remy Sharp just posted to Google Plus about how he came up with the name of Polyfills. It is fairly obvious but probably something work keeping record of, you all know how rumours can change things!<\/p>\n<p>Original post: https:\/\/plus.google.com\/u\/0\/109330852418236875528\/posts\/3YMEPcAGBny<\/p>\n<blockquote>\n<div>\n<div>\n<div>Where polyfill came from \/ on coining the term<\/p>\n<p>It was when I was writing Introducing HTML5\u00a0<a href=\"http:\/\/introducinghtml5.com\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/introducinghtml5.com<\/a>\u00a0back in 2009. I was sat in a coffeeshop (as you do) thinking I wanted a word that meant &#8220;replicate an API using JavaScript (or Flash or whatever) if the browser doesn&#8217;t have it natively&#8221;.<\/p>\n<p>Shim, to\u00a0<strong>me<\/strong>, meant a piece of code that you could add that would fix some functionality, but it would most often have it&#8217;s own API. I wanted something you could drop in and it would\u00a0<strong>silently<\/strong>\u00a0work (remember the old shim.gif? that required you actually inserted the image to fix empty `td` cells &#8211; I wanted something that did that for me automatically).<\/p>\n<p>I knew what I was after wasn&#8217;t progressive enhancement because the baseline that I was working to\u00a0<strong>required<\/strong>\u00a0JavaScript and the latest technology. So that existing term didn&#8217;t work for me.<\/p>\n<p>I also knew that it wasn&#8217;t graceful degradation, because without the native functionality and without JavaScript (assuming your polyfill uses JavaScript), it wouldn&#8217;t work at all.<\/p>\n<p>So I wanted a word that was simple to say, and could conjure up a vague idea of what this\u00a0<strong>thing<\/strong>\u00a0would do.\u00a0<strong>*Polyfill<\/strong>\u00a0just kind of came to me, but it fitted my requirements.\u00a0<strong>Poly<\/strong>\u00a0meaning it could be solved using any number of techniques &#8211; it wasn&#8217;t limited to just being done using JavaScript, and\u00a0<strong>fill<\/strong>\u00a0would fill the hole in the browser where the technology needed to be. It also didn&#8217;t imply &#8220;old browser&#8221; (because we need to polyfill new browser too).<\/p>\n<p>Also for me, the product Polyfilla (spackling in the US) is a paste that can be put in to walls to cover cracks and holes. I really liked that idea of visualising how we&#8217;re fixing the browser. Once the wall is flat, you can paint as you please or wallpaper to your heart&#8217;s content.<\/p>\n<p>I had some feedback that the &#8220;word should be changed&#8221; but it&#8217;s more that the community at the time needed a word, like we needed Ajax, HTML5, Web 2.0 &#8211; something to hang our ideas off. Regardless of whether the word is a perfect fit or not, it&#8217;s proven it has legs and developers and designers understand the concepts.<\/p>\n<p>I intentionally never really pushed the term out there, I just dropped it in a few key places (most notably the book), and I think it&#8217;s when\u00a0+<a href=\"https:\/\/plus.google.com\/113127438179392830442\" target=\"_blank\" rel=\"nofollow\">Paul Irish<\/a>\u00a0 gave a presentation some (many?) months later, directly referencing the term polyfill, was when the term really got a large amount of exposure (I think this was also helped with the addition of the Modernizr HTML5 shims &amp; polyfill page).<\/div>\n<\/div>\n<\/div>\n<div>\n<div><\/div>\n<\/div>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Remy Sharp just posted to Google Plus about how he came up with the name of Polyfills. It is fairly obvious but probably something work keeping record of, you all know how rumours can change things! Original post: https:\/\/plus.google.com\/u\/0\/109330852418236875528\/posts\/3YMEPcAGBny Where &hellip; <a href=\"https:\/\/www.w3.org\/community\/webhistory\/2012\/08\/02\/polyfills-2\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2238,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"yes","footnotes":""},"categories":[1],"tags":[],"class_list":["post-44","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/posts\/44","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/users\/2238"}],"replies":[{"embeddable":true,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/comments?post=44"}],"version-history":[{"count":1,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/posts\/44\/revisions"}],"predecessor-version":[{"id":45,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/posts\/44\/revisions\/45"}],"wp:attachment":[{"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/media?parent=44"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/categories?post=44"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.w3.org\/community\/webhistory\/wp-json\/wp\/v2\/tags?post=44"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}