I just had to look up "cruft" (jargon for software or hardware that is of poor quality), as used in a comment to an earlier question.

But I can't find any details of etymology, and I don't know how often it's used outside the superfluous source code that has yet to be removed context. Can anyone help?

  • Did you see the reference to Harvard's Cruft Hall? – tylerharms Dec 10 '12 at 20:20
  • @J.R.: I don't really see the point of your edit (apart from adding the two tags I should have done myself). My existing link to onlineslangdictionary already cites what I assume is the primary definition, and if anyone wanted to follow it they'd also find in software, layers of poorly written source code that have accumulated over a great length of time. Obviously I'm no authority (I never knew the word until yesterday), but I haven't seen anything except your quote from Wikipedia linking cruft to poor quality hardware. – FumbleFingers Dec 11 '12 at 22:10
  • @FF: You said you had to look it up. I had to look it up, too. (I didn't initially catch that your second link pointed to a dictionary meaning). I just figured that it wouldn't hurt to add a quick summary of the meaning for any others who might be curious what the word meant. Feel free to roll it back, or strike hardware from my parenthetical statement. – J.R. Dec 11 '12 at 22:38
  • @J.R.: It's no big deal either way, so let it stand. I just didn't understand why you did it, but all becomes clear when you say you hadn't noticed my superfluous source code that has yet to be removed was in fact a link to definitions. Anyway, it's obviously good that you added the extra two tags (I know I'm a bit remiss in that area myself) - so on balance, many thanks! – FumbleFingers Dec 11 '12 at 23:31

It's a made-up word, in a culture where hacking words is a time-honored traditional value. So the etymology itself becomes a matter of competing legends.

One of the reasons why a word stays around instead of being forgotten is because it sounds right. That's the legend of Phonosemantics, or sound symbolism.

Monosyllabic English words (like, say, stump) can be broken into Assonances (st-, in the case of stump) and Rimes (-əmp).

Many of these word chunks have meaning; for instance, the assonance /kl-/. And in particular, the assonance /kr-/ is a very good phonosemantic match for cruft.

| improve this answer | |
  • Phonosemantics is definitely starting to appeal to me! Even if Cruft Hall at Harvard University was the "proximate cause" of the word (which I don't really believe), I'm well up for the idea that a word stays around instead of being forgotten because it sounds right. Cruft does seem a good fit with crud, crude, crap, crumble, crust, etc. Before my fruitless search, I'd speculated cruft might be a variant of crud, which I've always known, and assumed was from crude. But I now know crud came from curd (and to me, crud really does "sound better" for crusty debris :). – FumbleFingers Dec 10 '12 at 22:59
  • ...there's one huge problem I imagine must bedevil people trying to work on phonosemantics. It seems to me that other words like scruffy, scurvy, scum, and scutch (dialectal "rubbish") gain at least some "currency" from these loose phonological associations. But how on earth would you train computer code to pick these out without getting sidetracked by things like scrumptious and sumptuous? There's a lot of hands-on spadework there, I feel. – FumbleFingers Dec 11 '12 at 1:36
  • You don't. Like a lot of things, this is an AI-Complete problem. Humans can sense these things, and so far machines can't -- except by statistics, which is probably close to what we do chemically in the brain, if truth be known. – John Lawler Dec 11 '12 at 1:56
  • Dang. I've been telling people for years that computers ain't gonna crack natural language parsing any time soon, but I got really fired up by the possibility they might at least be able to compile lists of words that have "something in common" both semantically and phonologically. Partly because I like the idea that we might gain insights into how people really think by identifying the semantic groupings represented by those lists. But I guess that humans will have to do all the really hard work, as usual. Computers are still good drudges though, and it's good they don't forget things much. – FumbleFingers Dec 11 '12 at 2:08
  • 1
    Already done it: FrameNet – John Lawler Dec 11 '12 at 5:22

Jargon File

According to the Jargon File:

cruft: /kruhft/

[very common; back-formation from crufty]

  1. n. An unpleasant substance. The dust that gathers under your bed is cruft; the TMRC Dictionary correctly noted that attacking it with a broom only produces more.

  2. n. The results of shoddy construction.

  3. vt. [from hand cruft, pun on ‘hand craft’] To write assembler code for something normally (and better) done by a compiler (see hand-hacking).

  4. n. Excess; superfluous junk; used esp. of redundant or superseded code.

  5. [University of Wisconsin] n. Cruft is to hackers as gaggle is to geese; that is, at UW one properly says “a cruft of hackers”.

And for crufty:

crufty: /kruhf�tee/, adj. [very common; origin unknown; poss. from ‘crusty’ or ‘cruddy’]

  1. Poorly built, possibly over-complex. The canonical example is “This is standard old crufty DEC software”. In fact, one fanciful theory of the origin of crufty holds that was originally a mutation of ‘crusty’ applied to DEC software so old that the ‘s’ characters were tall and skinny, looking more like ‘f’ characters.

  2. Unpleasant, especially to the touch, often with encrusted junk. Like spilled coffee smeared with peanut butter and catsup.

  3. Generally unpleasant.

  4. (sometimes spelled cruftie) n. A small crufty object (see frob); often one that doesn't fit well into the scheme of things. “A LISP property list is a good place to store crufties (or, collectively, random cruft).”

This term is one of the oldest in the jargon and no one is sure of its etymology, but it is suggestive that there is a Cruft Hall at Harvard University which is part of the old physics building; it's said to have been the physics department's radar lab during WWII. To this day (early 1993) the windows appear to be full of random techno-junk. MIT or Lincoln Labs people may well have coined the term as a knock on the competition.

Tech Model Railroad Club Dictionary

The quoted TMRC Dictionary was compiled by members of the Tech Model Railroad Club at MIT (who may also be responsible for foo and bar), many of worked on early programming languages and computers such as LISP and the PDP-1 and Project MAC from 1964 onwards.

The terms appear in the first edition of the TMRC dictionary of 1959, compiled by Pete Sampson who later added the italic notes:

CRUD: cruft (q.v.).
The gag here is to define the obvious word in terms of the more obscure.

CRUFT: that which magically amounds in the Clubroom just before you walk in to clean up. In other words, rubbage.
The word was in use at the club when I wrote this definition. The sense is of detritus, that which needs to be swept up and thrown out. The dictionary has no definition for "crufty," a word I didn't hear until some years later. Rubbage is a rare term for rubbish, but I had heard it used growing up in New England.

Oxford English Dictionary

Cruft now appears in the OED, with this etymology:

Origin unknown. Perhaps an expressive formation, perhaps recalling fluff n.1, scruffy adj., crust n. However, with crufty adj. perhaps compare Jamaican English crufty coarse-looking (1943), cruffy scurfy, rough (1868), cruff (adjective) scabby, scurfy, naturally rough, coarse, uncooth (c1915), all ultimately related to scruff n.1: see F. G. Cassidy & R. B. LePage Dict. Jamaican English (1967) at cited words.

A number of other etymologies have also been suggested.


Computing slang.

Anything unnecessary or redundant; esp. poorly designed or unnecessarily complex computer software, e.g. that containing sections of obsolete code. Also: filth, esp. that which builds up over time; detritus.

Their first quotation is the 1959 TMRC dictionary.

Nowadays, it is mainly used in terms of redundant, poor quality or wasteful source code that should best be removed; but can also be that unpleasant-to-touch dirt that accumulates on keyboards and inside computers.

| improve this answer | |
  • I'm upvoting this answer because it contains a wealth of associated interesting information. But I'll probably end up accepting John's answer, because in the final analysis it's not just that the "definitive origin" seems to be beyond our reach. The key point I've picked up from asking this question is that whatever the origin, it wouldn't have arisen and/or survived without "phonosemantic support". And even then it might not have made it but for the fact that Americans never really adopted crud/cruddy as much as Brits, so they had more of a "phonosemantic gap" there waiting to be filled. – FumbleFingers Dec 10 '12 at 23:13
  • 1
    I'm also sceptical of the Cruft Hall claim, I think it's more simply humourous word play, as was common at TMRC/MIT, and still common in computing communities. See also Pete Sampson's comment that a joke was to define the more obvious crud in terms of the more obscure cruft. – Hugo Dec 11 '12 at 6:32

According to the Hacker Dictionary:

This term is one of the oldest in the jargon and no one is sure of its etymology, but it is suggestive that there is a Cruft Hall at Harvard University which is part of the old physics building; it's said to have been the physics department's radar lab during WWII. To this day (early 1992) the windows appear to be full of random techno-junk. MIT or Lincoln Labs people may well have coined the term as a knock on the competition.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.