"block based" coding has come a long way and I think the time students spend with it helps some of them to understand functions.
I think it's horrible for iteration, but kind of nice for objects.
I'm not "anti-scratch" but I find it limiting very quickly.