7 ms·
Important to realize glyph's twitter followers are not representative of all Python users. In general, people who follow him are going to be more "into" Python
by redsymbol 6y ago
Important to realize glyph's twitter followers are not representative of all Python users.
In general, people who follow him are going to be more "into" Python than someone who just uses it to get their job done, and thus more likely to use optional tooling with a large overhead like mypy.
That will skew the results in favor of mypy in this poll. Though the poll getting on the HN front page will balance that somewhat.
- croh 6y agoYup agree. People who follow him are more "into" python async stuff.
- watermelon0 6y agoI'm just using it to get my job done, and really couldn't imagine working with Python without it. I'd consider static type checker as optional if you are playing around with small or throwaway scripts, but for any half serious project, it should be a requirement. IME I don't consider it slow, and it's definitely not visibly slower than pylint, flake8, or similar tools for other languages. Dropbox, which has one of the biggest Python codebases, uses it, and most mypy maintainers including Guido work there.
- you_are_naive 6y agoThe biggest problem with mypy is that it's written in python. It's slow. It needs to be rewritten in rust or go to make it faster like how js ecosystem is moving in that direction. All the tooling is moved to faster compiled languages.
- crazypython 6y agomypy has implementations in other languages – PyCharm's is in Java, Facebook's Pyre's is in OCaML https://github.com/facebook/pyre-check https://github.com/facebook/pyre-check
- MapleWalnut 6y agoThose tools are not re-implementations of mypy, but their own type checkers. Pyre doesn't necessarily have all the features of mypy and vice versa.
- watermelon0 6y agomypy is actually compiled via mypyc, which should be a few times faster than interpreted Python https://github.com/python/mypy/tree/master/mypyc https://github.com/python/mypy/tree/master/mypyc
- wk_end 6y agoInitial type checking with mypy is slow, but if you use mypy-daemon each check after that becomes pretty much instantaneous, even on 10M+ line code bases.
- Twirrim 6y ago> Dropbox, which has one of the biggest Python codebases, uses it, and most mypy maintainers including Guido work there. Guido hasn't worked at Dropbox since 2019. He retired for a bit, but is now in the Developer Division at Microsoft.
- watermelon0 6y agoMy bad, I just checked http://mypy-lang.org/about.html http://mypy-lang.org/about.html, which appears to be outdated.
- bostonsre 6y agoYea, it may slightly slow down the initial draft due to needing to type a little bit more, but it helps speed up maintainability and readability a ton and it helps eliminate a bunch of bugs so I think it has definitely increased productivity in my experience.
- duxup 6y agoArguably that applies to all social media ;) I see a lot of sort of 'programming culture' for given languages, practices, even discussion of working conditions and etc that on social media are taken as standard operating procedure. Highly active and even highly knowledgeable folks seem to portray various practices and etc are a given ... that I suspect are actually outliers.
- spicybright 6y agoI agree listen to the heavy weights on these sorts of things. But a poll open to everyone is pretty useless.
- make3 6y agoOne of the first things you learn in theoretical sampling classes is that polls where people self select to participate (like twitter polls) are garbage
- sitkack 6y agoThe results are good, they are just, "of the population that uses twitter" ... What I would really be interested in, is do library developers use or intend to use mypy? Because if your libs are typed checked and your APIs are well constructed, a lot of that safety will flow to the clients. Maybe those 40% would love to use it if something was changed or fixed. I think these numbers are frankly amazing, a year from now we reach an inflection point where mypy is used by the majority of some segment of the Python developer ecosystem.