this post was submitted on 01 Sep 2023
329 points (96.1% liked)
Programming
17444 readers
147 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Types and unit tests are bloat that increase the maintenance cost of whatever code they are involved in. Most types force premature design/optimization. Most unit tests lock up some specific implementation (increasing cost of inevitable refactors) rather than prevent actual bugs.
Nil-punning in clojure has spoiled me rotten, and now every other language is annoyingly verbose and pedantic.
Meanwhile here I am thinking about pivoting my career from Python to Rust because I've grown to hate Python's lack of typing. I also religiously write unit test even for minor personal projects.
I'm a longtime fan of python, but honestly I don't know how I lived with it before type hints. It still feels a little backwards from the original design philosophy of python, and it's more verbose than other strongly typed languages, but it's come to feel pretty natural all the same.
Yup, IMO Python is so much better with type hints that I can't help but think they should just be part of the language. Which is kinda stupid because of the "original philosophy" as you said. But on the other hand things like third party static type checkers and type stubs, or just untyped libraries can be a real PITA .
Also, I acknowledge that the lack of typing can be an advantage for some people in some circumstances, even though I use typing even in the simplest and shortest scripts myself. Why would I want to figure out the types every time I look at the function if I can just write it down?