3 ms·
I think any programming language with a lot of popularity attracts poor development practices. Simply because a lot of programmers don't actually know the under
by Quothling 2y ago
I think any programming language with a lot of popularity attracts poor development practices. Simply because a lot of programmers don't actually know the underlying processes of what they build. The flip-side of this is that freedom and flexibility also gives you a lot of control. Yes, it's very easy to write bad Python. In fact it's probably one of Python's weaknesses as you point out. If you're going to iterate over a bunch of elements, you probably expect your language standard libraries to do it in an efficient way, and Python doesn't necessarily do that. What you gain by this flexibility (and arguably sometimes poor design) is that it's also possible to write really good Python and tailor it exactly to your needs. I think Python scales rather well in fact. Django is a good example, as it's a massive workhorse for a lot of the web (Instagram still uses their own version of it as one example). It does so sort of anonymously similar to how PHP and Ruby do it outside of the hype circle, but it does it.
One of the advantages Python has, even when it's bad, is that it's often "good enough". 95% of the software which gets written is never really going to need to be extremely efficient. I would argue that in 2024 Go is actually the perfect combination of the good stuff from both Python and C. But those things aren't necessarily easy to get into if you're not familiar with something like memory management, (maybe strict typing?), explicit error handling and the differences between an interpreted and compiled language.
Anyway I don't think Python is anymore annoying than any other language. The freedom it gives you needs to be reigned in and if you don't then you'll end up with a mess. A mess which is probably perfectly fine.
- gjvc 2y agopsst "reined in" https://www.merriam-webster.com/grammar/do-you-rein-in-or-reign-in-something https://www.merriam-webster.com/grammar/do-you-rein-in-or-re...
- Quothling 2y agoThanks! I'm not a native English speaker so I'll probably fuck this up again but it's nice to know. Reign would be cooler though. I guess I could say "you gotta reign your developers use of Python".
- trkannr 2y agoBut CPython itself has poor development practices: For about 8 years those in the inner circle can modify anything and pose as experts while brutally squashing criticism.