I like #Python. It was the first programming language I tried, it had a reputation of being easy to learn and yeah, it was. What I don't really understand is how it has become so popular (# 1 in the TIOBE index...) and pervasive (you find it in areas where it seems like logic for a scripting language, but in others where you wouldn't bet for it too). It shines where it shines, but aren't really there better options in some of the niches it is being used for?
@array There really is very little you need to go outside python for, so people don't.
Scripts? Check.
Well-factored applications? Check.
Static type-checking? These days, check.
It really is a wide range, and while it is not too performant, most of the time your code is waiting for I/O or a human. When performance is actually needed, heavy calculations go into pandas and numpy and on the other end things like protocol parsing go into gunicorn and starlette.
Python's got you covered. Best language for almost nothing, good enough language for almost everything. More boring than Ruby, less line noise than Perl.
@clacke Yeah, it's really pervasive. And very good at what's good, as I said, I like it too. It's just the point that you raise, "best language for almost nothing", that brings me some doubt. As in, why not just use "the best tool for the job", when there are arguably better options in some domains? Using Python for *everything* sounds just a bit... Lazy, I guess? :P
@clacke then judging by events to date I must be brilliant at the latter, so far all my applications and tools remain used almost exclusively by just myself.
(FWIW I still like them and use them a lot)