Definition

kludge

Contributor(s): Larry Swanson and Marc J. Warden

In information technology, a kludge (pronounced KLOOdzh) is an awkward or clumsy (but at least temporarily effective) solution to a programming or hardware design or implementation problem. According to Eric Raymond, the term is indirectly derived from the German klug meaning clever. Raymond considers "kludge" an incorrect spelling of kluge, a term of the 1940s with the same general meaning and possibly inspired by the Kluge paper feeder, a "fiendishly complex assortment of cams, belts, and linkages...devilishly difficult to repair...but oh, so clever!"

A kludge originates because another, more elegant or appropriate solution is not currently possible (perhaps because of time constraints). Hardware and software products are sometimes the result of adding a new and basically incompatible design to the original design rather than redesigning the product completely. What is a kludge can be a matter of opinion. Users often have a different opinion than the designers, who understand the problems that had to be overcome. To the extent that information technology products are combinations of elements originating from a variety of design philosophies and constraints, almost any product is bound to contain some element of kludginess.

A kludge could be considered a type of workaround.

This was last updated in September 2007

Dig Deeper on Business automation, robotics and business process management

PRO+

Content

Find more PRO+ content and other member only offers, here.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchCompliance

SearchHealthIT

SearchCloudComputing

SearchMobileComputing

SearchDataCenter

Close