If the project is small enough to be familiar with all the code (e.g. most scripts and many small websites) and/or if for prototyping or short time use, then dynamic typing offers a bit of a speed advantage.
But for large projects (long time and/or many people), when it gets too difficult to know all the code, I really like static type systems. It rules out a lot of bugs completely (so you don't have to check when reading someone else's code), and they provide great documentation that can't go out of date (also great when reading other people's code).
It works much better if you actually create many types for names, prices, unsafe strings, etc. If you mostly use primitives and enormous classes you don't get much of the benefit. Of course it helps to have things operator overloading and sum types for this.
EDIT: I'm sad to see dynamic typing winning. I would've been in that group a few years ago. I think, given time, some of you will come around if you give it a chance. ;-) When percentage bugfixing time goes up and percentage code that's yours goes down...