Picture of Timothy Miller

Timothy Miller

The internet is a unique animal. People think that things last forever here, but I find more and more that this is simply not the case. There is just so much data on the internet, even if things are preserved, it might become nigh impossible to find them. And often things just aren't preserved.

For instance, on Twitter the other day there was a bit of "folklore/history" displayed in these tweets. I thought it was fun and worth preserving, so I'm recreating it here.

The Etymology of Prollyfill, Polyfill, Shiv, and Shim

(Props to Jonathan Neal for the history lesson!)

  • Polyfill, Shim, and Shiv: JavaScript that makes newer technology work in older technology. E.g. we used to have to polyfill HTML5 tags so that they would work in Internet Explorer.

    A "shim" is borrowed from the real-world definition: a shim normally is a piece of wood used to fill gaps in order to make things work.

    A "shiv" comes from John Resig mis-remembering the word "shim".

  • Prollyfill: Makes experimental (non-standard) technology work everywhere. Often used for specs that are in progress but not final. They might change before they're finalized, but "prolly" not.

  • Ponyfill: Makes something (anything) work everywhere, but different from the spec, so it doesn't break anything when the spec is finalized. (Thanks Sindre)


These are webmentions via the IndieWeb and webmention.io. Mention this post from your site: