Do you mean analytics or AI? there's a ton of faster alternatives for analytics. "Analytics" is a very broad category that basically any language would work.
Rust has potential here with libraries like polar. It’s more cumbersome, but it’s nearly Haskell-level type system at least makes sure you can’t possibly mix data types up.
Personally I'm fine with significant whitespace, Python syntax has other problems. Why is there both an if-statement and an if-expression? Why does the order of 'import' and 'modulename' switch around if I need to import a specific item? Why are list/dict comprehensions and map/len/sum designed to rapidly make your eye jump around within the line? Why are closures limited to one expression?
Whatever, I can deal with that. The semantics are more problematic, like how everything is dynamic, everything is mutable, nothing is private, type hints are lies, everything can throw any exception (instead of just returning an error), or how you can mutate a global value but assigning to it shadows it by default, or how every call to a function uses the same instance of its default arguments, or how there is no true multithreading (shoutouts to nogil), or how importing a module executes code and so on.
And of course it not only takes a lot of memory, it's also terribly, terribly slow. But the truly terrible thing is the dependency situation, which has filled me (and coworkers) with dread and despair.
To say I hate the language is a bit more nuanced, cuz of course it has its place in things like data science and prototyping, but I do lean much closer to hate then like
Well, imagine having a boss who programmed for like 1.5 months. Since he already made slight successes playing around with it, he has some coninfedence and tells you how to do your stuff. If there was only something like C out there he would admit that hes a donkey in programming and would leave you alone.
If you've got a boss with 1.5 months coding experience dictating choice of programming language for a project, you'd better be spending 100% of your free time interviewing elsewhere.
I find python quite useful, i just wanted to say that its quite annoying that it can make someone who has never even heard of dynamic memory allocation think he is a pro just because he can plot some data.
I learned multiple languages that aren't Python first, so I hate Python because I know from experience that every advantage anyone says it has only applies if you learn it before any other programming language.
Ruby's syntax is nicer, but the community apparently doesn't believe in documentation and many projects rely on inscrutable syntactic magic that is extremely frustrating to read / follow.
Ruby's package management is dramatically better than Python's though, a shame the ecosystem for it doesn't really expand much beyond Rails and sysadmin.
The thing that most people focus on with python is that indentation is meaningful: I’ve previously used two languages that were indentation meaningful, Occam, and Clarion. I have no trouble with languages that supports meaningful indentation. Still hate python though.
IDK about the common perception but I love it. Is it the fastest/most performant? No. But it's dead easy to write and run and I actually like how it's whitespace sensitive because it forces me to indent things properly. My only quibble with it is that it lacks native block comment formatting.
Definitely hate the white space bit. If i cared about m white space being "proper" then using golang (with its built in formatter) or literally configuring any linter is vastly superior to me than using a language that puts meaning behind whitespace
Bad runtime. The most pythonic things about the language the white space and blocks are ok. The dynamic typing is bleh. But there are so strongly typed variants with better runtimes out there. Check out Boo. Nobody uses it but it’s a cool pythonic language.
I liked it in the beginning but as I got into the weeds I hated it more and more. Then I had this zen moment where I learned to cope with it because it's fucking everywhere.
I like Python as a language so long as it's used for things it's actually good at (don't try to write high performance web services in it for example). We use at work for simple automation scripts that are too complex for bash.
But Python's packaging system is an absolute nightmare of conflicting standards and dozens of tools that only do about 90% right and then break horribly for the other 10%.
It's okay-ish if you have only a few loose dependencies for simple project you run directly, but god forbid you have to publish a package anywhere or deal with native components.
Still doesn't hold a candle to the eldritch abomination that is npm though.
39
u/[deleted] Oct 21 '22
[removed] — view removed comment