This guy seems like and sounds like a serious developer, so I'm totally confused by this statement.
Dynamic languages that don't do compile time type checking are not toys.
I used to only write in Java or C++, but I think it's a stage of maturity as a developer to realize that you can develop code that can take arguments with the assumption that the objects sent in are of types that will have the behavior you need to work with them.
If you argue that the code is faster when it is compiled- that's fine, and I agree, and that's good, if it matters.
If you argue that you need types because otherwise you can't be safe, I'm sorry, but that's like being a helicopter-parent. Sometimes maybe you can't trust what is calling your code even when you give it trust, and that's valid; just like as a parent, sometimes the child really needs that level of micromanagement. But, for a lot of if not most of practical web development, you can use dynamic typing, and most children do not need that level of micromanagement.
There's nothing wrong with languages that provide type checking, but it isn't necessarily a deficiency when it's not there.