Hacker News new | comments | ask | show | jobs | submit login
Tell HN: We should say “shim,” not “shiv”
47 points by alanh on May 12, 2013 | hide | past | web | favorite | 12 comments
In the last 4 years, give or take, there has been a lot of discussion and work relating to adding features to old or sub-par web browsers.

These have been called, variously, “polyfills,” “shims,” and “shivs.”

What’s the best term?

Well, a shiv is a homemade knife-like implement, such as one created and used in a prison environment. Where’s the word come from?

> “a razor,” 1915, variant of chive, thieves’ cant word for "knife" (1670s), of unknown origin. [1]

A “shim” is something that raises something up a level — that is exactly what we are doing within an old browser! Origin:

> “a slip of wood,” 1723, a Kentish word, of unknown origin. Originally a piece of iron fitted to a plow for scraping soil; meaning “thin slip to fill up a space or raise a level” is from 1860. [2]

Similarly, “polyfill” originates from “Polyfilla,” a brand of wall filler (or spackling paste, which is less relevant). That also kind of makes sense: it’s filling a gap (in a wall, and now in provided functionality).

Please — two terms is already too many and hurts searchability. Three is absurd. Let’s start with, ahem, cutting out the obvious worst option. Don’t say “shiv” when you mean “shim”!

[1]: http://www.etymonline.com/index.php?allowed_in_frame=0&search=shiv&searchmode=none [2]: http://www.etymonline.com/index.php?allowed_in_frame=0&search=shim&searchmode=none

Speaking of etymology, from https://github.com/aFarkas/html5shiv/#readme:

Why is it called a shiv?

The term shiv originates from John Resig, who was thought to have used the word for its slang meaning, a sharp object used as a knife-like weapon, intended for Internet Explorer. Truth be known, John probably intended to use the word shim, which in computing means an application compatibility workaround. Rather than correct his mispelling, most developers familiar with Internet Explorer appreciated the visual imagery. And that, kids, is etymology.

At this point, grousing about shiv vs. shim is a bit like grousing about some guy calling their dating tips a 'hack' - you're completely in the right, but we all know what he's trying to say and life's short. Hell, if you search for 'shiv' in Wikipedia, you'll get (among other things) a pointer to shim, and we all know what pedants they are over there.

> Well, a shiv is a homemade knife-like implement, such as one created and used in a prison environment.

You've clearly never done hard time up at IE6 Zero-Security Penitentiary.

Ha! :)

Wow, I had no idea shiv was so frequently misused on HN. I wouldn't have believed it if I hadn't searched.

I'm equally surprised/irritated that someone went and stuck "or shiv" into the shim article on Wikipedia back in 2011.

Well, for one thing, there's specifically http://en.wikipedia.org/wiki/HTML5_Shiv

I noticed that.

I wonder how much of the confusion is owed to that project? That would go a long way toward explaining why this confusion seems common on HN (lots of web developers), but non-existent elsewhere.

By the way, the way that article immediately (second paragraph) addresses the question is just odd and confusing.

While some people refer to it as "HTML5Shim" with respect to shim (computing), there is no real difference between the names and as noted in the code repository, the only difference is that "one has an m and one has a v - that's it."


Of course, that section of the article like the shim article edit I mention above is the work of one person in 2011 and the repository mention it cites for support no longer exists.

I believe shiv was used to mean something that didn't quite produce the correct behavior 100% of the time, or only produced the correct behavior in part. I agree these names are not intuitive but I believe that there are subtleties to the naming variations.

If I met IE in a dark alley, I would reach for a shiv. Not a shim.

Is "shiv" really a common synonym? I've only heard shim.

His handlebars had started slipping. Not badly, he said, just a little when you shoved hard on them. I warned him not to use his adjustable wrench on the tightening nuts. It was likely to damage the chrome and start small rust spots. He agreed to use my metric sockets and box-ends.

When he brought his motorcycle over I got my wrenches out but then noticed that no amount of tightening would stop the slippage, because the ends of the collars were pinched shut.

"You’re going to have to shim those out," I said.

"What’s shim?"

"It’s a thin, flat strip of metal. You just slip it around the handlebar under the collar there and it will open up the collar to where you can tighten it again. You use shims like that to make adjustments in all kinds of machines."

"Oh," he said. He was getting interested. "Good. Where do you buy them?"

"I’ve got some right here," I said gleefully, holding up a can of beer in my hand.

He didn’t understand for a moment. Then he said, "What, the can?"

"Sure," I said, "best shim stock in the world."

I thought this was pretty clever myself. Save him a trip to God knows where to get shim stock. Save him time. Save him money.

But to my surprise he didn’t see the cleverness of this at all. In fact he got noticeably haughty about the whole thing. Pretty soon he was dodging and filling with all kinds of excuses and, before I realized what his real attitude was, we had decided not to fix the handlebars after all.

As far as I know those handlebars are still loose. And I believe now that he was actually offended at the time. I had had the nerve to propose repair of his new eighteen-hundred dollar BMW, the pride of a half-century of German mechanical finesse, with a piece of old beer can!

Ach, du lieber!

Since then we have had very few conversations about motorcycle maintenance. None, now that I think of it. You push it any further and suddenly you are angry, without knowing why. I should say, to explain this, that beer-can aluminum is soft and sticky, as metals go. Perfect for the application. Aluminum doesn’t oxidize in wet weather...or, more precisely, it always has a thin layer of oxide that prevents any further oxidation. Also perfect.

In other words, any true German mechanic, with a half-century of mechanical finesse behind him, would have concluded that this particular solution to this particular technical problem was perfect.

For a while I thought what I should have done was sneak over to the workbench, cut a shim from the beer can, remove the printing and then come back and tell him we were in luck, it was the last one I had, specially imported from Germany. That would have done it. A special shim from the private stock of Baron Alfred Krupp, who had to sell it at a great sacrifice.

Then he would have gone gaga over it.

-- Robert Pirsig Zen and the Art of Motorcycle Maintenance

That is one of my favorite passages from that book.

Well done, precisely the quote I was going to give :-)

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact