4 ms·
Ask HN: How to become a better Python developer?
- Jeff_Brown 4y agoPydoc, pytest and mypy are simple, powerful, underused tools. @dataclass can make a lot of code cleaner than it would be otherwise. Sum types, only available as of 3.10, make a lot of things easily expressible now that were extremely awkward previously. Also, learn Haskell. It forces you to learn to keep most of your code pure, limiting IO to a thin top level layer, which makes testing and hence correctness a lot easier.
- timfi 4y agoNot to nitpick, but do you mean the pattern matching statement when you are talking about "sum types"? Because as far as I'm aware Python doesn't have " proper" algebraic data types.
- Jeff_Brown 4y agoYou're right, it doesn't, and they're still quite awwkward. And I'm not even talking about pattern matching; just the fact that you can finally define a class as `X = Y | Z`.
- richardjam73 4y agoRead the Python Enhancement Proposals PEP's https://peps.python.org/ https://peps.python.org/