Python Is a Bad Programming Language
medium.com
medium.com
Supporting evidence:
1. It looks ugly
2. Why is there more than one python?
3. Whitespace is dumb
4. Dynamic typing is bad
5. No support for constants
The article fails to even consider that languages are different tools for different problems where a valid argument can actually be found.
Why do you need constants? How can you argue that types are necessary but simultaneously permit magic numbers?
There are certainly some valid shortcomings of python, none of which the author mention.
I'll also add that a lack of backwards compatibility with python2 is painful but not unheard of in other languages and libraries. Not that the author presented it as a complaint about compatibility, rather about being given too many options. I wonder which C compiler they use?
Python can have its own conventions though, separate from the conventions of other languages. It just means the applications that Python is a good choice for are not exactly the same ones that Java or C# are great choices for.
Magic numbers like Pi?
If a value must not change for the lifetime of a program, you are unable to enforce that constraint, leading to bugs.
Wrong and wrong. Well, the first is at least something one can discuss (though wrong).
The latter is straight-up BS. Google never pushed Python, much less hard.
And the fact that Google uses Python (along with Java, C++, and Go) doesn't mean it pushed it in any way to the masses. Guido working there did nothing for Python either.
Python was already on its way up before Google was a thing (slowly ovetaking Perl), and was further pushed with Scientific Computing, Data Science and ML -- all of which have nothing to do with Google. It was also popular for ops and admin scripts (and the backend for many of RedHats distro utilities), and has always been a good choice for a web backend.
In any case, this is so badly written, it appears like it's someone that doesn't know the history of the last 2 decades of the developer landscape (but wants to opine on it), hasn't bothered to do basic research, doesn't understanding basic PL pragmatics or language adoption, and has typical religious strong opinions ("dynamic typing is bad" - does that mean Smalltalk, Lisp, Self, and other such languages are also bad?
all the javascript/ecmascript/react/vue/etc. i've been learning lately makes me want a new rant for each day of the week.
if the author didn't use the term 'bad', would anyone have clicked thru?
prob not.
Imagine:
Python Is an Imperfect Programming Language
i would just prefer to see these types of articles about 10 years earlier in the hype cycle.the 'self' keyword has always bothered me to no end -- much moreso than 'this' (java) -- prob because you have to pass 'self' in so many constructors -- it's just everywhere.
i still hold out hope that javascript is going to be replaced.
followed by its node/deno equivalent.
i also wonder if the creators of various tech would be more forgiving than many commenters.
founder of Vue basically said he created it because Angular sucked.
Deno created by creator of Node.
This op-ed piece feels a lot like troll bait, so I'm not going to respond to the litany of complaints in the article. "X-language sucks" articles have been done to death and I will leave it to the author to chase those down if they are looking for legitimate criticism.