I agree with the overall sentiment, but it’s not actually about static typing — it’s about having a…

The example I provided was actually meant to be a negative one because the expected keys were not specified explicitly (see the paragraph below the example). I agree that a static type system or other means that help tooling do not automatically lead to improvements. The environment and culture must encourage toolability and the programmer himself must understand how to take advantage of his tools. I hope I could get the point across in the article.

Your last example essentially is a static (i.e. lexical/syntactical) type system, as far as I can see, albeit one that is a bit verbose and optional. Correct me if I am wrong, it seems that your comment and the points in the article are actually in agreement.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.