The more I code the more I appreciate statically typed languages.
When I learned/started coding, I liked dynamically typed languages. It was easier to get past compiler. My code seemed to do something. And if there was anything wrong in the way, it would just continue to execute making me feel that my code is at least doing something.
Now more into programming, I don't want to go back to duck-typed languages. I like when compiler gives me guarantees along with exceptions being thrown at runtime when something goes wrong, crashing the program and noticing it immediately that something is wrong.
I think language people also recognizes benefits.
- PHP7 allows using strict types.
- Python has static type support
- Javasript -> Typescript
Disclaimer: Have used php, tried ruby. Using C# and javascript. Looking forward to typescript.
Do dynamic language people: 1. Write more tests? 2. Have more defective code? 3. Are better at writing code? 4. Maybe there is just no correlation between code correctness and static/dynamic lang. I just wrote down MY feelings.