To Reach Perfection, Tools Must Be Boring
If you need to reach perfect outcome, you must use boring tools. When trying to open a laptop, you use a screwdriver which is a tool made too many years ago without any major improvements or hipster things.
That’s the way tools must be. So to reach perfect software, you need a great tool that is backward compatible, fast, futureproof and simple enough to let you focus on the job at hand. That’s why I think “opinionated software” is the way to go.
I love Go programming language because it is opinionated and everything is chosen by the Go team. Go is simple, fast, reliable, concurrent language.
I also like Angular because it is opinionated. But it is complicated, so I prefer VueJS for small projects.
If the tool is complicated such as C++ or Rust, it takes the time instead of focusing on the job at hand — the software project.