Just recently there was an article here, where a person claimed that recommended python tooling is inadequate because they needes to read two paragraphs of documentation. Endemic problem really.
I used to work at a place that used Jython (which never got updated to Python 3, BTW) and was responsible for trying to keep that shit working even as various libraries started dropping Python 2 support.
I still get a thousand-yard stare when I think about it.
(Still worth it vs. writing actual Java code, though.)
Python is great for standalone scripts/CLIs with standard system dependencies. For actual apps you want venvs, probably managed by uv these days.
I’ve written 1000s of python CLIs/scripts over the years, typically wrapping APIs for otherwise shitty enterprise and SaaS software (also many one-off scripts for ETL).
Nowadays, AI writes these scripts in a fraction of the time (and reads the shitty API docs / otherwise figures it out) and my CLI toolkit is better than ever (with $0 ongoing cost). Calling MCPs from CLIs is also interesting, as some vendors never had usable APIs before now.
Yeah, Python as a language is a mess IMO. We used it for making a electrical simulator and the language is…bad. The variable scoping, lack of explicit variable declaration, backwards comprehension syntax, the VERY CONFUSING object orientation design, that classes aren’t serializable by default, package story and deployment… It really has very little going for it, and combine all that with the awful performance characteristics it’s just…no.
Today I’m “Rust if it fits, if not Rust then C#”. We re-wrote the simulator in C# and performance was 70x better and the code got shorter, the deployment was hell of a lot easier since we went AOT and it just builds a native binary for the target platform. No virtual environment crap.
Python is very opinionated. I like it (other than the stupid ternary operator) but I can very much see why others don’t. (At the same time I will fight for it. It’s like the GNOME of programming languages.)
Yeah, the fact that so much of the language is conventions as well doesn’t help. The type hinting is fairly poor as well, but then again type hinting is basically admitting that dynamic typing is a mistake (which it is).
So glad to see that Python finally made it big in 2022
It’s thanks to Django and Flask paving the way in 2003 and 2010 respectively.
Removed by mod
I have lots of experience with node and a little with python.
Python seems great for working with large data sets and I really like jupyter notebooks. The available libraries are really great.
However, the thought of installing a Python CLI app makes me twitchy.
I suspect that node has all the same problems and that I’m used to working around them, but all the Python environment stuff is a nightmare.
Edit: dear python dweebs: I don’t care.
Yeah, absolute nightmare of writing
pipx install programname.iykyk
Removed by mod
A venv isn’t a vm
Removed by mod
uv is a fantastic tool if you didn’t know
Python environment/packaging sucks, but at least the language itself doesn’t.
It’s fine actually, all of the problemswith python packaging and env are overblown to insane degree.
yeah everyone elses experience is invalid.
Yep, they are.
Just recently there was an article here, where a person claimed that recommended python tooling is inadequate because they needes to read two paragraphs of documentation. Endemic problem really.
Npm/yarn are absolute horseshit.
See? Node is just as bad as Python now.
I used to work at a place that used Jython (which never got updated to Python 3, BTW) and was responsible for trying to keep that shit working even as various libraries started dropping Python 2 support.
I still get a thousand-yard stare when I think about it.
(Still worth it vs. writing actual Java code, though.)
Removed by mod
Python is great for standalone scripts/CLIs with standard system dependencies. For actual apps you want venvs, probably managed by uv these days.
I’ve written 1000s of python CLIs/scripts over the years, typically wrapping APIs for otherwise shitty enterprise and SaaS software (also many one-off scripts for ETL).
Nowadays, AI writes these scripts in a fraction of the time (and reads the shitty API docs / otherwise figures it out) and my CLI toolkit is better than ever (with $0 ongoing cost). Calling MCPs from CLIs is also interesting, as some vendors never had usable APIs before now.
Removed by mod
Yeah, Python as a language is a mess IMO. We used it for making a electrical simulator and the language is…bad. The variable scoping, lack of explicit variable declaration, backwards comprehension syntax, the VERY CONFUSING object orientation design, that classes aren’t serializable by default, package story and deployment… It really has very little going for it, and combine all that with the awful performance characteristics it’s just…no.
Today I’m “Rust if it fits, if not Rust then C#”. We re-wrote the simulator in C# and performance was 70x better and the code got shorter, the deployment was hell of a lot easier since we went AOT and it just builds a native binary for the target platform. No virtual environment crap.
Python is very opinionated. I like it (other than the stupid ternary operator) but I can very much see why others don’t. (At the same time I will fight for it. It’s like the GNOME of programming languages.)
Removed by mod
Yeah, the fact that so much of the language is conventions as well doesn’t help. The type hinting is fairly poor as well, but then again type hinting is basically admitting that dynamic typing is a mistake (which it is).