The first two principles for good programming were Simplicity and Elegance.
But there are not independent. The aim must be to write code which is as simple and elegant as possible, while getting the job done.
Shibumi is a concept I came across in the book of the same name, written by Rodney Whitaker in 1979 under the pen name of Trevanian. I mentioned this book (which is my all-time favourite) in my old blog.
It is a Japanese word with a number of meanings, including “elegant simplicity”. Here is a passage from the book:
Shibumi has to do with great refinement underlying commonplace appearances. It is a statement so correct that it does not have to be bold, so poignant it does not have to be pretty, so true it does not have to be real. Shibumi is understanding, rather than knowledge. Eloquent silence. In demeanor, it is modesty without pudency. In art, where the spirit of shibumi takes the form of sabi, it is elegant simplicity, articulate brevity
When Nicholai Hel (the hero of the book) heard these words, he decided to dedicate his life to achieving Shibumi.
I’m afraid I have not dedicated my life to Shibumi, but I do look for Shibumi when I am programming.
In programming, Shibumi is thinking about a problem until a simple elegant solution is uncovered, and then coding accordingly. Whenever your design or code seems complex or convoluted, you need to do some more thinking.