|
Article in other languages: |
A kludge (or kluge) is a workaround, a quick-and-dirty solution, a clumsy or inelegant, yet effective, solution to a problem, typically using parts that are cobbled together. This term is diversely used in fields such as computer science, aerospace engineering, Internet slang, and evolutionary neuroscience.
LinguisticsThe present word has alternate spellings (kludge and kluge) and pronunciations (IPA: /klʌdʒ/ and /kluːdʒ/, rhyming with fudge and stooge), and several proposed etymologies. The Oxford English Dictionary (2nd ed., 1989) kludge entry cites one source for this word's earliest recorded usage, definition, and etymology: Jackson W. Granholm's 1962 "How to Design a Kludge" article, which appeared in the American computer magazine Datamation [1]
The German surname Kluge derives from klug "prudent; wise". Although the OED2 notes Granholm was "jocular", it accepts his ironic etymology from a fictional "Fink and Wiggles" for Funk & Wagnalls lexicographer.
This OED2 entry also includes the verbal kludge "to improvise with a kludge or kludges" and kludgemanship "skill in designing or applying kludges". The Jargon File (a.k.a. The New Hacker's Dictionary), which is a glossary of internet slang maintained by Eric S. Raymond, differentiates kludge from kluge and cites usage examples predating 1962.
This Jargon File entry notes kludge apparently derives via British military slang from Scots kludge or kludgie meaning "a common toilet", and became confused with U.S. kluge during or after World War II.
This entry notes kluge, which is now often spelled kludge, "was the original spelling, reported around computers as far back as the mid-1950s and, at that time, used exclusively of hardware kluges". The Jargon File gives possible etymologies from naval slang (cf. jury rig) or printing equipment. First, kluge "was common Navy slang in the WWII era for any piece of electronics that worked well on shore but consistently failed at sea". A 1947 article in the New York Folklore Quarterly recorded the classic shaggy dog story "'Murgatroyd the Kluge Maker' then current in the Armed Forces, in which a 'kluge' was a complex and puzzling artifact with a trivial function."[6] When Murgatroyd enlists into the Navy, he gives "kluge maker" as his occupation. Because none of the officers knows what a kluge is, Murgatroyd ascends through the ranks, eventually becoming "kluge maker, first class". When an admiral demands that Murgatroyd build him a kluge, he constructs a strange object with springs in all directions. He then drops it over the side of the ship into the ocean, where it goes "kkluuge". Second, the "Kluge paper feeder" was an automatic paper feeder for printing presses, which was first manufactured by Brandtjen & Kluge, Inc. in 1919. It supposedly had a Rube Goldberg machine reputation, and was "temperamental, subject to frequent breakdowns, and devilishly difficult to repair — but oh, so clever!" The Jargon File further includes kluge around "to avoid a bug or difficult condition by inserting a kluge", kluge up "to lash together a quick hack to perform a task". After Granholm's 1962 "How to Design a Kludge" article popularized the kluge variant kludge, both were interchangeably used and confused. The Jargon File concludes:
Another suggested folk etymology or backronym for kludge is from klumsy, lame, ugly, dumb, but good enough.[citation needed] In aerospace engineeringIn aerospace design a kluge was a temporary design using separate commonly available components that were not flight worthy to proof the design and enable concurrent software development while the integrated components were developed and manufactured. The term was in common enough use to appear in a fictional movie about the US space program.[7] Perhaps the ultimate kludge was the first US space station, Skylab. Its two major components, the Saturn Workshop and the Apollo Telescope Mount, began their development as separate projects (the SWS was kludged from the S-IVB stage of the Saturn 1B and Saturn V launch vehicles, the ATM was kludged from an early design for the descent stage of the Apollo Lunar Module). Later the SWS and ATM were folded into the Apollo Applications Program, but the components were to have been launched separately, then docked together in orbit. In the final design, the SWS and ATM were launched together, but for the single-launch concept to work, the ATM had to pivot 90 degrees on a truss structure from its launch position to its on-orbit orientation, clearing the way for the crew to dock its Apollo Command/Service Module at the axial docking port of the Multiple Docking Adapter. The Airlock Module's manufacturer, McDonnell Douglas, even recycled the hatch design from its Gemini spacecraft and kludged what was originally designed for the conical Gemini Command Module onto the cylindrical Skylab Airlock Module. The Skylab project, managed by the National Aeronautics and Space Administration's Marshall Space Flight Center, was seen by the Manned Spacecraft Center (later Johnson Space Center) as an invasion of its historical role as the NASA center for manned spaceflight. Thus, MSC personnel missed no opportunity to disparage the Skylab project, calling it "the kludge." In computer scienceIn modern computing terminology, a kludge (or often a "hack") is a 'solution' to a problem, doing a task, or fixing a system (whether hardware or software) that is inefficient, inelegant, or even unfathomable, but which nevertheless (more or less) works. To kludge around something is to avoid a bug or some difficult condition by building a kludge, perhaps relying on properties of the bug itself to assure proper operation. It is somewhat similar in spirit to a workaround, only without the grace. A kludge is often used to change the behavior of a system after it is finished, without having to make fundamental changes. Sometimes to keep backwards compatibility, but often simply because it is easier. That something was often originally a crock, which is why it must now be hacked to make it work. Note that a hack might be a kludge, but that 'hack' could be, at least in computing, ironic praise, for a quick fix solution to a frustrating problem.[8] A kludge is often used to fix an unanticipated problem in an earlier kludge; this is essentially a kind of cruft. Something might be a kludge if it fails in corner cases, but this is a less common sense as such situations are not expected to come up in typical usage. More commonly, a kludge is a poorly working heuristic which was expected to work well. An intimate knowledge of the context (i.e., problem domain and/or the kludge's execution environment) is typically required to build a corner case kludge. As a consequence, they are sometimes ironically praised. An anecdotal example of a kludge involved a computer part supposedly manufactured in the Soviet Union during the 1960s. The part needed slightly delayed receipt of a signal to work. Rather than setting up a timing system, the kludge was to make the internal wires extra-long, increasing the distance and thus increasing the time the electrical signal took to reach its destination. A variation on this use of kludge is evasion of an unknown problem or bug in a computer program. Rather than continue to struggle to find out exactly what is causing the bug and how to fix it, the programmer may hack the problem by the simple kludge of writing new code which compensates. For example, if a variable keeps ending up doubled in a certain code area, add code which divides by two when it is used, after the original code has been executed. In computer networking, use of NAT (Network Address Translation) (RFC 1918) or PAT (Port Address Translation) to cope with the shortage of IPv4 addresses is an example of a kludge, in this case an awkward fix for a fundamental design flaw. Another common example are quickstarts like those shipped with OpenOffice.org, Real Player, and Adobe products, in which a bloated program that normally takes a long time to load is kept in memory to reduce the delay in starting it. In evolutionary neuroscienceThe kludge or kluge metaphor has been adapted in fields such as neuroscience and evolutionary biology, particularly in reference to the human brain. The neuroscientist David Linden discusses how intelligent design proponents have misconstrued brain anatomy.
The research psychologist Gary Marcus's book Kluge: The Haphazard Construction of the Human Mind compares evolutionary kluges with engineering ones like manifold vacuum-powered windshield wipers – when you accelerated or drove uphill, "Your wipers slowed to a crawl, or even stopped working altogether."
Other usesIn the science fiction television series Andromeda, genetically engineered human beings called Nietzscheans use the term disparagingly to refer to genetically unmodified humans. See also
References
External links
Questions for article: |
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
IHS Europe: Infrared Heating Systems for Home and Business.