Hack (term)
Hack is a term in the slang of the technology culture which has come into existence over the past few decades. As a noun, it has a number of related meanings. As a verb, it means creating or participating in a hack.
All of the modern meanings seem to be rooted in its widespread use as slang throughout the Massachusetts Institute of Technology (MIT), starting in the 1960s. There, the original meaning of "hack" was an elaborate and flamboyant student prank; it was used with hacker, meaning "one who perpetrates a hack". Past MIT hacks include:
- Covering the university's signature "Great Dome" (which seems to be something of a magnet for hacks) with tin foil
- Putting a fake (but convincing) MIT Campus Police cruiser on the Dome
- Putting a fake (but convincing) fire truck on the Dome.
- Decorating the Dome as R2-D2
- Hiding the university president's office by covering its entrance with a fake bulletin board
- Inflating a huge balloon on the playing field during a Harvard-Yale football game
- Turning the MIT Dome into a giant baseball with a Red-Sox logo after the Red-Sox won the World Series
- Making an image of Trogdor out of post-it notes
- Turning the Great Dome (again) into a beanie, complete with forty-foot spinning propellor on top and a detailed removal manual left at the base of the propellor.
Over time, the meaning of the word there was expanded, perhaps through contact with the amateur radio community. It came to mean either a kludge, or the opposite of a kludge, as in a clever or elegant solution to a difficult problem. In the term "hack value" it also acquired a meaning of anything that was simultaneously fun and clever.
The initial hacker community at MIT, particularly those associated with the Tech Model Railroad Club, applied this pre-existing local slang to computer programming, producing the variant which first came into common use outside MIT. A "hack" now meant a clever or quick fix to a computer program problem, as in "That hack you made last night to the editor is working well". A hacker came into the lexicon as meaning one who hacks, using this definition. The surface implication (which might be a modest mocking and play on the literary definition) was a casual attempt to fix the problem, but the deeper meaning was something more clever and thus impressive.
It was used especially among US university computing center staff, such as those at Stanford in the period beginning approximately in the mid-1960s. The context determined whether the complimentary or derogatory meanings were implied. Phrases such as "ugly hack" or "quick hack" generally referred to the latter meaning; phrases such as "cool hack" or "neat hack" referred to the former.
In modern computer programming, a "hack" can refer to a solution or method which functions correctly but which is "ugly" in its concept, which works outside the accepted structures and norms of the environment, or which is not easily extendable or maintainable (see kludge).
In a similar vein, a "hack" may refer to works outside of computer programming. For example, a math hack means a clever solution to a mathematical problem. The GNU General Public License has been described as a copyright hack because it cleverly uses the copyright laws for a purpose the lawmakers did not foresee. All of these uses now also seem to be spreading beyond MIT as well.
The term has since acquired an additional and now more common meaning, since approximately the 1980s; this more modern definition was initially associated with crackers. This growing use of the term "hack" is to refer to a program that (sometimes illegally) modifies another program, often a computer game, giving the user access to features otherwise inaccessible to them. As an example of this use, for Palm OS users (until the 4th iteration of this operating system), a "hack" refers to an extension of the operating system which provides additional functionality. The general media also uses this term to describe the act of illegally breaking into a computer.
Sometimes the jargon used by hackers is thought of as a language in its own right, called hackish. This should not be confused with "1337" or "leetspeak."
References
See also
- History of "hacker"
- Nightwork: A History of Hacks and Pranks at MIT (book)
- Tech Model Railroad Club
- Hack value
- HAKMEM
- Boolean Programming Method
- Wiktionary definition
- Haxie
- Roof and tunnel hacking
- NetHack
- Lifehacks
- IHTFP
- MIT hack