The ideas behind hungarian are sound, but one of the reasons the name 'hungarian' stuck was that the names were unpronounceable.
Modern IDEs make that whole thing moot anyway, but the notation is still being used afaik.
There is nothing wrong with type-safety per se, it's just that when it gets to the point where it is literally 'in the way of progress' that things have been taken too far.
Ideally its something that's there when you need it, and override-able when you specifically don't need it.
That way you can do your type checking at compile time for the 70% or so of the code where that makes good sense, and where you're happy to have those guardrails to save you some time catching stupid bugs.
The other 30% of your code you can be as free as you want to be knowing full well that the price of failure would be a very angry end user.
That's because I think there are multiple 'modes' of programming, if you're writing a one-off data import script then type safety is just a real pain, as soon as you want to do that every day at a few thousand locations you'd better have it bullet proof.
Now you need two languages for those two situations.