kludge definition

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 first published in September 2007

Dig Deeper on Business process management



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



Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:


File Extensions and File Formats

Powered by: