So I’m no expert, but I have been a hobbyist C and Rust dev for a while now, and I’ve installed tons of programs from GitHub and whatnot that required manual compilation or other hoops to jump through, but I am constantly befuddled installing python apps. They seem to always need a very specific (often outdated) version of python, require a bunch of venv nonsense, googling gives tons of outdated info that no longer works, and generally seem incredibly not portable. As someone who doesn’t work in python, it seems more obtuse than any other language’s ecosystem. Why is it like this?
You’re not wrong, but you have offended the python guys for suggesting they use something other than their toy language.
I personally look away when I find programs I want to use that are written in python. I don’t have time to play with all that BS just to run a small software on my machine. Go is my go-to (heh) but any other modern language would be fine.
such a strange interpretation. i’ve been working in go for over 10 years now, and i love it. but the notion that you can “just find the same program but built in a different language” doesn’t make sense at all.
like, if you’re annoyed with pandoc being written in haskell and clogging up your system dependencies, you can’t just “find another pandoc”. there’s nothing like it. same thing with curl, or xonsh, or thingsboard.
I agree in general, if you need something specific then there is no way around it. But when I’m looking for something I evaluate all possible solutions, and being written in a language that has issues like this is a mark against it. Sometimes it’s easier to write the thing myself in some language I master than to wrangle python or Js dependencies.
In my experience there is rarely only one solution written in python or Js for my use cases.
that’s posturing if anything. if you’re an experienced developer it takes fully 10 minutes with either system. and if you’re not interested in modifying it, just use a container image.
the only case where i would agree with you is when i have to modify LD_LIBRARY_PATH to get things to run…