You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
2.8 KiB
Markdown

# KISS
1 year ago
KISS (Keep It Simple, Stupid!) is a design philosophy that favors simplicity, solutions that are **as simple as possible** to achieve given task. This philosophy doesn't primarily stem from laziness and a want to save time (though these are valid reasons too), but mainly from the fact that higher [complexity](complexity.md) comes with increasingly negative effects such as the cost of development, cost of [maintenance](maintenance.md), greater probability of [bugs](bug.md) (e.g. [security](security.md) vulnerabilities) and failure, more [dependencies](dependency.md). This stance is related to technology [minimalism](minimalism.md).
1 year ago
Under dystopian [capitalism](capitalism.md) simple technology, such as simple software, has at least one more advantage related to "[intellectual property](intellectual_property.md)": a simple solution is less likely to step on a [patent](patent.md) landmine because such a simple solution will either be hard to patent or as more obvious will have been discovered and patented sooner and the patent is more likely to already be expired. So in this sense KISS technology is legally safer.
2 years ago
Apparently the term *KISS* originated in the US Army plane engineering: the planes needed to be repairable by *stupid* soldiers with limited tools under field conditions.
1 year ago
**Examples** of KISS "[solutions](solution.md)" include:
8 months ago
- Using a [plain text](plain_text.md) file instead of a dedicated [bug](bug.md) tracker (TODO.txt), note taking program etc.
1 year ago
- Creating website in plain [HTML](html.md) instead of using some complex web framework such as [Wordpress](wordpress.md).
1 year ago
- Implementing a web left-right sweeping image gallery with HTML [iframe](iframe.md) instead of some overcomplicated [JavaScript](js.md) library. { Example stolen from [reactionary software](reactionary_software.md) website. ~drummyfish }
8 months ago
- Supporting only [ASCII](ascii.md) instead of [Unicode](unicode.md), it is [good enough](good_enough.md).
- Using a plain text file instead of a [database](database.md) system.
- Using [markdown](markdown.md) for creating documents, as opposed to using office programs such as [Libreoffice](libreoffice.md).
1 year ago
- Using a trivial [shell](shell.md) script for compiling your programs rather than a complex build system such as [CMake](cmake.md).
1 year ago
- ...
Compared to [suckless](suckless.md), [unix philosophy](unix_philosophy.md) and [LRS](lrs.md), KISS is a more general term and isn't tied to any specific group or movement, it doesn't imply any specifics but rather the general overall idea of simplicity being an advantage ([less is more](less_is_more.md), [worse is better](worse_is_better.md), ...).
2 years ago
[KISS Linux](kiss_linux.md) is an example of software developed under this philosophy and adapting the term itself.
## See Also
- [minimalism](minimalism.md)
1 year ago
- [suckless](suckless.md)
- [KILL](kill.md)
10 months ago
- [kys](suicide.md)
1 year ago
- [LRS](lrs.md)