Kitchen sink: Difference between revisions
(Created page with "The '''kitchen sink''' is a metaphor referring to the property of software to exhibit an unbounded scope or feature creep. It most commonly afflicts projects whose maintainers aim to be "jacks of all trades", such as many popular programming languages. ==Etymological evidence== The concept has probably existed for decades, even as long as programming has been a thing as the idiom "everything but the kitchen sink", but we can definitively date it to at least 2011 via [//...") |
m (add see also and properly place references) |
||
Line 11: | Line 11: | ||
In the context of computing and software architecture, the kitchen sink is an extreme end state of poor architecture. Ordinarily, programmers attempt to avoid this by practising such things as [[modular programming]], but in effect this does not avoid the problem of scope creep so much as it compartmentalises it, making the project at hand into a bureaucratic object, and leading to massive inefficiencies. | In the context of computing and software architecture, the kitchen sink is an extreme end state of poor architecture. Ordinarily, programmers attempt to avoid this by practising such things as [[modular programming]], but in effect this does not avoid the problem of scope creep so much as it compartmentalises it, making the project at hand into a bureaucratic object, and leading to massive inefficiencies. | ||
==See also== | |||
* [[Cool targets don't move]] | |||
==References== | ==References== | ||
<references/> | |||
{{mission/software architecture}} |
Latest revision as of 05:54, 18 February 2023
The kitchen sink is a metaphor referring to the property of software to exhibit an unbounded scope or feature creep. It most commonly afflicts projects whose maintainers aim to be "jacks of all trades", such as many popular programming languages.
Etymological evidence
The concept has probably existed for decades, even as long as programming has been a thing as the idiom "everything but the kitchen sink", but we can definitively date it to at least 2011 via this Hacker News post:
Scala seems to be the academic kitchen sink of programming languages.
There are other instances confirming this as a concept in the world of software.[1][2] It is also a well-known concept in the world of "conlangs", as discussed on Reddit and on the FrathWiki.
Issues
In the context of computing and software architecture, the kitchen sink is an extreme end state of poor architecture. Ordinarily, programmers attempt to avoid this by practising such things as modular programming, but in effect this does not avoid the problem of scope creep so much as it compartmentalises it, making the project at hand into a bureaucratic object, and leading to massive inefficiencies.