DEV Community

Discussion on: What programming language should I learn next?

Collapse
 
ahferroin7 profile image
Austin S. Hemmelgarn

Yes, there are actually some pretty good linters for Python. The two most used are flake8 (mostly focused on coding style over anything else) and pylint (which covers coding style, but also covers a bunch of other things).

The off-sides syntax though is surprisingly easy to get used to because it tends very strongly to follow logically from where you would be indenting anyway in other languages. The only tricky part is remembering that you need to explicitly mark empty code blocks with pass and remembering that it is usually harder to read one-liners.

The big complaint for most people with Python is how the package management isn’t really designed in a way that makes handling of concurrent versions of the same thing sane. Essentially, packages default to being global unless you use a tool like venv (included in the Python 3.3 and newer standard library) to create an isolated environment, in contrast to how NPM defaults to all packages being local unless you tell it otherwise.