From the article I see a lot f reasons why:
> "Don't break things!" is part of the culture.
If you cannot have compile time guarantees on correctness, the discipline to not break things becomes a key feature. On the other hand, if you have strong correctness guarantees, you may more easily incur some breakage (and thus actually fix things).
> Some discipline required [...] with great freedom comes great responsibility.
There's always some discipline required, but without a type system discipline become more important.
> you often need to find specific places where a function or a piece of data is referenced [which is hard in Clojure] because there are no links established via a type system.
Yups. IDEs also like types to build their features on.
> Documentation becomes more important
I dont like documentation as a fix. Docs should tell me why some code is there, not what it does or how to use it (that is preferably obvious).
Again: I like the language a lot. I also like Ruby a lot. But when a new project with serious complexity requires me to pick language I go with something that has: no implicit nulls, strong type safety, sum types, exhaustivity checks.