Tuesday, 30 March 2021

Keep it simple

"Keep it simple stupid" has been a known term since the sixties and has been adopted to software development some decades later. Although KISS has been adopted for many years, it is still not understood by many. For starters there's the sentence alone that has been misinterpreted. There shouldn't be a comma after simple. The addition of the comma implies that the one who is is making it simple is stupid, without the comma it implies that there shouldn't be sophisticated tools needed to solve a simple problem.

So KISS' meaning is that the solution to a problem should be simple and that the expertise and tools needed to solve the problem should be simple as well. Simplification makes the world easier to understand. A problem needs to be broken down in simple parts that everybody can understand, then a solution must be made to fix the problem as simple as possible. When tools are needed in the solution, those need to be simple as well. Of course simple means within your area of expertise, you ought to be knowing what you do.
Overly complex solutions indicate that the problem was not thoroughly investigated or not completely understood.

Within software development I have seen a lot of non-KISS-compliant problems and solutions. Too many classes depending on each other, versioning of API's gone wrong, overly complex build pipelines and very interesting workflows to say the least.

We humans have a knack to make things overly complicated. Because some things can be done complicated, it is not a must to make them complicated. Only use what is needed and keep it as simple and clean as possible. If you don't do it for the ones after you, just do it so it makes sense if you look into your solution a year from now.

No comments:

Post a Comment