Oh man, I read this article a few months back and it immediately resonated with me. I've never used Scala, but this advice has been applicable in every language, project, and team I've ever worked with, and I very much regret that I didn't already have this resource to cite in past code reviews.<p>A lot of the worst tendencies that developers complain about in complex programming languages (i.e. all of them, they're all complex) could be addressed by this advice.
Past related threads:<p><i>Strategic Scala Style: Principle of Least Power</i> - <a href="https://news.ycombinator.com/item?id=11467339" rel="nofollow">https://news.ycombinator.com/item?id=11467339</a> - April 2016 (64 comments)<p><i>Strategic Scala Style: Principle of Least Power</i> - <a href="https://news.ycombinator.com/item?id=11265424" rel="nofollow">https://news.ycombinator.com/item?id=11265424</a> - March 2016 (4 comments)
The W3C had a Tag Finding on the Rule of Least Power back in 2001 <a href="https://www.w3.org/2001/tag/doc/leastPower.html" rel="nofollow">https://www.w3.org/2001/tag/doc/leastPower.html</a>
If this Principle of Least Power had been applied to sbt, what would have been the result? Compilation times depend on scalac and not so much sbt.<p>Perhaps Scala adoption would be higher today. Assuming no competitors (Kotlin) had gained momentum.
A developer that is concerned (and rightfully so) with the Principle Of Least Power choosing Scala as his weapon of choice, in 2014, meaning before they partially saw the errors of their ways in Scala 3: a theoretical possibility, sure, but not one I have ever seen in the wild.