I completely disagree. Dynamic typing makes keeping track of what you're doing more difficult; at least for a beginner. If they don't understand the difference between a string, an "object", and a numerical value (which is confusing itself) then they cannot be an effective programmer. Also, writing more code and being demanding aren't what I would define as being a additional bonus you get for using a dynamically typed language. You write more code because it doesn't work well and you need to fight with the language more than use it. Also, the dynamically typed aspect makes it more demanding the same way driving with your eyes closed makes driving more demanding; it is not helping you in any way shape or form.
Java's "syntactic clutter" I call "helpful verbosity" and most scripting-turned-application languages are sorely lacking in readability; something Java has been getting better at in recent years. Java forces readability and corectness more than most scripting languages I've ever used, at least. Structure is more beneficial to a beginner than freedom.