Слабодинамически типизированный язык программирования (например, PHP) сделал так, что ошибки программиста возникают как некогерентные поведения (например, программа будет отображать глупую информацию).
При использовании языка со строгой динамической типизацией (например, python) ошибки программирования вызывают сообщение об ошибке. Это облегчает обнаружение и диагностику ошибок, но в целом программа стала непригодной для использования после отображения сообщения.
Наконец, с языком со строгой статической типизацией (таким как Java, Ada, OCaml, Haskell, ...) некоторые ошибки могут быть обнаружены во время компиляции и, следовательно, снижают риск создания программы с ошибками. (но релиз происходит позже)