Earlier quoted context omitted.
At scale, it might be hard to do that, however this doesn't address the key problem. One of the hallmarks of good engineering is to add technical safeguards, rather than relying solely on Smart People. It would be comical to hear, "Hire better pilots" as an alternative to building parachutes, or fly-by-wire systems. Every one makes mistakes. This is why we have tests, linting, code review. Our choice of tools that we…
> This is why we have tests, linting, code review. None of which is related to using a dumbed-down language. > At Google's scale, I can completely understand why they might feel that developing a new tool was the best way to prevent a core set of problems. There's plenty of research around software reliability and on the sources of bugs across different languages. Research shows that verbose languages e.g. Java don't…
A "dumbed-down" language is a tool that prevents one from being able to write certain classes of errors (e.g. some of the footguns from C).
Changing the language doesn't mean you make less mistakes, but it means that you make different kind of mistakes. I'm rather unlikely to make an error related to memory allocation in Python or Java, for example.