Lots of smart people seem to be convinced that with comprehensive unit tests, static typing in a programming language is not a key feature for maintainability. One of the things that really thrilled me about moving from being primarily a Perl programmer to being primarily a Java programmer was strict typing, and more structuredness in general. Maybe I’m behind the curve though. Recent commentors include: