Elijah Lopez
2 min readJan 1, 2022

--

Lots of Python hating here. It's sad that the Author did not defend his position in the comment section. I don't usually like to defend because people who criticize something using poor arguments have usually made up their mind to begin with.

First off, all the people who criticized Python don't know Python or already know how to code in other languages. I say this because if you code in Python, you'd criticize its Global Interpreter Lock which makes threading pseudo. So we have multiprocessing, but that requires additional code because of the lack of os.fork on Windows.

Lack of types:

The person who said this doesn't care about static typing with relation to avoiding bugs, but did not specify what exactly his issue with a lack of static typing was. Performance? Productivity > Performance anyday.

Lack of private scope:

The person who said this is highly opinionated into thinking that restricting access to variables is objective superior to recommending against accessing private variables. In Python you can use self.__private_var and any Python dev using your class will know not to use those variables unless the API did not do as much as was required.

Treating space as a keyword.

People who use this as an argument either don't code in Python or are poor Python developers. You only make indentation issues in your first year of programming in Python, as a BEGINNER. If you end up using tabs that don't convert to spaces, then you'll immediately get the error when you unit tests fail to run. Use of this argument is pedantic, because we both know you'd still dislike Python if you think no curly braces is an actual argument. The forcing of indentation makes for properly or better formatted code.

There are many developers who don't format their code at all. It's a mess.

Virtual envs.

I've never needed to use virtual envs in Python.

Python2 is out of support. Any code written in python2 should not be run at all, you should just find something else, or port the code. This is a Windows only problem, since on Linux, you need to explicitly use python3 to use python3.

Lastly performance:

Most of the things where performance matters are just compiled C libraries: e.g. numpy.

Python's productivity is unmatched.

It's a good start for beginners and if you already know to code, you should learn it on a need-to basis, not a could be useful basis.

--

--

Elijah Lopez
Elijah Lopez

Written by Elijah Lopez

Github pages + Hugo is better than medium. Creator of the Matte Black Firefox themes and Music Caster. https://elijahlopez.ca/

No responses yet