principle of least astonishment is one of the worst principles for design i've ever heard not sure if it's just the wording or truly the root idea i take issue with but still ( https://en.wikipedia.org/wiki/Principle_of_least_astonishment … )
I think it's an overused and consequently diluted term. Also, s/astonishment/surprise/ is better, imo -- less hyperbolic. But, when appropriate, it has good conceptual bite. E.G. Default argument reuse in #python is usually surprising the first time you encounter it.pic.twitter.com/VZPfB41YL6