Kragen Javier Sitaker writes: > complexity has >hidden costs --- complex things are less reliable, fail in more >unpredictable ways, are harder to diagnose problems in, are often >harder to fix, are usually more trouble to keep running, are harder to >change (especially to change without breaking), and are harder to get >to work with other things.
I do not understand why more designers and users of software do not realize that. As early as the late 1970s, Dijkstra complained often and bitterly about gratuitous complexity. For a while I considered switching from Linux to Plan 9 because Plan 9's designers avoided gratuitous complexity. I did not because it turns out that an even more important factor is that the designers of my software must have empathy for the user, and Plan 9's designers have less empathy for the user than the designers of the Linux software I use (Emacs, Gnome), with the result that Plan 9 is great for programmers implementing software similar to Plan 9 (i.e., software that does not have strong interoperability requirements) but not so great for general work. (Plan 9 also does not have a web browser that can handle most web pages to be found in the wild.)
