this post was submitted on 16 Sep 2024
227 points (83.7% liked)
Programmer Humor
19680 readers
162 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
For me it's dependency hell. Almost as bad as npm.
...is it truly that bad? npm is the reason I don't even install software based on node on my machines... python doesn't seem nearly as bad by comparison? (I run it, just don't like to write it) Maybe it's worse than I realize
I haven't used npm. But pip is horrible. Some times I've used a well-known library that only works on linux, but there is no mention of it whatsoever, and it installs without problem. The error only happens at run-time (not even when importing!) and says nothing about platform-dependency. I only learned that it was a linux-only library because I happened to try running it on a Linux machine to see if it worked.
Many times you have to set up your environment a specific way (environment variables, PATH, install dependencies outside of pip) for it to work, and there's no mention of it anywhere. Sometimes you install the library with pip, sometimes with apt, and there is no way to know which one. And sometimes the library is both in apt and pip, but the pip one does nothing.
Furthermore, good luck importing a library. You might have installed it with "pip install my-library" but to import it you have to do "import MyAwesomeLibrary3". And pip won't tell you about that.
Wow that sounds like a headache, even though I've avoided python for other reasons that sounds like an additional reason to do so. Also the reason I avoid npm isn't for a technical reason like you've outlined here. It's because even installing npm requires me to install an entire other Linux distros worth of packages. Why do I need to install like 100+ new packages just to use a freaking package manager????
Not as bad. But if a bigger tool like Paperplane doesn't run after an update, it's likely some changed dependency in python.