4 ms·
I genuinely can't work on projects that are not using TypeScript anymore. I feels weird but I can't trust myself making changes.
by msoad 10y ago
I genuinely can't work on projects that are not using TypeScript anymore. I feels weird but I can't trust myself making changes.
- mikekchar 10y agoI spent most of my career in statically typed languages. It was in that environment that I learned TDD. I still think that TDD is really valuable in that arena. I work mostly with dynamic languages now. Working without TDD in that arena seems downright crazy to me. Michael Feathers put it best in my opinion. You want to have a kind of vise on your code so that you can hold one part in place and be able to reason about the other part. Tests give you that ability. Static type checking eliminates the need for a whole class of tests. It's great. The key, though, is that the type annotation system has to be convenient and readable. Lately I've been playing with Haskell derived languages and it's really incredible how much you can push into the type system. But it's important, I think, to realise that this is a convenience. You can still do it all by hand if you have to. It's always a balance of what you can do efficiently with language syntax and what you can't. Or, maybe a bit more concisely, if the language doesn't help you, you can still help yourself. It takes more code and more discipline, though.