Overopinionated engineers are annoying. Python doesn't suck, everyone knows that. Every language has its strengths and weaknesses. Clickbaity.
Reasons Python Sucks (2018)
31–40 of 74 posts
Re: Reasons Python Sucks (2018)
#32* The standard library still sucks
* The documentation still sucks
* Dependency management still sucks (unless you cope with poetry).
* it doesn't have CPAN
* It's not a lisp
Re: Reasons Python Sucks (2018)
#33Some of the author's "reasons" are bogus: "My code for Python 3.5 won't work with the Python 3.7 installation unless I intentionally port it to 3.7." Sure it will, just invoke it using the Python 3.7 interpreter. I have plenty of code originally written with 3.5 that runs just fine under 3.7, 3.8, 3.9, ... "In Python, you have to work to pass variables by value." No, you don't. Python actually doesn't pass variables…
To be fair, if Python does something that is so different from all other languages maybe that’s a complaint in itself, even if the original complaint is invalid.
Re: Reasons Python Sucks (2018)
#34Here's a better list. * Performance is very bad. * Misspelling a variable creates a new one. * __init__ is a really terrible name for the constructor. * Type annotations are ignored, so nobody bothers.
IDEs/linters help with this one.
> Type annotations are ignored, so nobody bothers
If one really cares you can use MyPy to force errors on bad types.
Type annotations are very useful for IDEs, which is why they are spreading fast in the ecosystem.
Re: Reasons Python Sucks (2018)
#35Here's a better list. * Performance is very bad. * Misspelling a variable creates a new one. * __init__ is a really terrible name for the constructor. * Type annotations are ignored, so nobody bothers.
For any serious Python app worked on by multiple people, you need a CI pipeline that runs type checking. (And while you're there, run a format checker like black, too -- solves the tabs vs spaces "debate" the author complains about as well)
Certainly still a language flaw that it's not inherently enforced, though; unfortunately it just took the Python community way too long to realize how important strong typing is at scale.
Re: Reasons Python Sucks (2018)
#36Overopinionated engineers are annoying. Python doesn't suck, everyone knows that. Every language has its strengths and weaknesses. Clickbaity.
Clickbaity maybe, because it’s a controversial topic. What is the line between opinionated and over-opinionated?
Re: Reasons Python Sucks (2018)
#37Some of the author's "reasons" are bogus: "My code for Python 3.5 won't work with the Python 3.7 installation unless I intentionally port it to 3.7." Sure it will, just invoke it using the Python 3.7 interpreter. I have plenty of code originally written with 3.5 that runs just fine under 3.7, 3.8, 3.9, ... "In Python, you have to work to pass variables by value." No, you don't. Python actually doesn't pass variables…
> I think this person simply doesn't understand how Python works. To be fair, if Python does something that is so different from all other languages maybe that’s a complaint in itself, even if the original complaint is invalid.
Re: Reasons Python Sucks (2018)
#38Some of the author's "reasons" are bogus: "My code for Python 3.5 won't work with the Python 3.7 installation unless I intentionally port it to 3.7." Sure it will, just invoke it using the Python 3.7 interpreter. I have plenty of code originally written with 3.5 that runs just fine under 3.7, 3.8, 3.9, ... "In Python, you have to work to pass variables by value." No, you don't. Python actually doesn't pass variables…
> I think this person simply doesn't understand how Python works. To be fair, if Python does something that is so different from all other languages maybe that’s a complaint in itself, even if the original complaint is invalid.
Re: Reasons Python Sucks (2018)
#39Overopinionated engineers are annoying. Python doesn't suck, everyone knows that. Every language has its strengths and weaknesses. Clickbaity.
Uh, no. There’s a reason I prefer Node, Deno or Rust, and the reason is that Python sucks.
Or at least sucks more than either of those.
Re: Reasons Python Sucks (2018)
#40Some of the author's "reasons" are bogus: "My code for Python 3.5 won't work with the Python 3.7 installation unless I intentionally port it to 3.7." Sure it will, just invoke it using the Python 3.7 interpreter. I have plenty of code originally written with 3.5 that runs just fine under 3.7, 3.8, 3.9, ... "In Python, you have to work to pass variables by value." No, you don't. Python actually doesn't pass variables…
> I think this person simply doesn't understand how Python works. To be fair, if Python does something that is so different from all other languages maybe that’s a complaint in itself, even if the original complaint is invalid.
No, it's just a reason not to use Python if you have trouble understanding how it works. That's true of any tool.