Often heard advice in system design – Keep It Simple Stupid. It’s a reasonable idea, a little similar to the Agile principle of no gold plating, that simplicity is efficient and robust.
The trouble I find is that all too often it actually translates to Keep It Simple & Stupid, and the result is a design unnecessarily limited or lacking in flexibility. As is often the case in English, a simple word can have many meanings…
Clear, Clean, Pure, Transparent 🙂 these I want.
Amateur, Foolish, Naive, Stupid 🙁 not in my system thanks.
Is there a point to this? Not really, just a thought – I like the no gold plating rule, but KISS is just too simple for me.