you are viewing a single comment's thread
view the rest of the comments
[–] 3 points 1 day ago (2 children)

I mean, just to offer you the counter perspective, IMHO programs written in X tend to have problem Y:

  • Python: Terrible error messages, buggy, sluggish, slow, but good documentation
  • Java: Gurgles RAM like there's no tomorrow (but tends to do something useful with it), sluggish
  • Node.js: Just gurgles RAM for the fun of it, buggy, over-engineered functionality, confusing documentation
  • Rust: Over-engineered functionality
  • Go: Bad error messages, quirky detail behavior
  • Haskell: Practically 0 bugs, but if you do run into a bug, good luck. Thin documentation.
  • C/C++: Basically no bells or whistles, and no compiled build available. Also stupidly difficult compile on anything, except the singular dev's PC.

Obviously, these are caricatures, i.e. I'm overdrawing the details and omitting nuance. And these are also influenced by the kind of people that are drawn to these languages. And these are influenced by what I know about the languages, I didn't conduct a double-blind study.

But yeah, there's a reason why Python ended up first on that list. I don't have that hard of an opinion about the others, but genuinely, when I know a non-trivial program is written in Python, I will think twice whether I want to use it. Because it always seems to cost me a non-trivial amount of nerves in the end.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 13 hours ago (1 child)

    I know you said those are caricatures, but with C or C++, programs usually do have a make or cmake script to be built in 1-3 commands explained in the repo.

    I'd have mentioned that their more typical execution error message is "segfault". Where? Fuck you, that's where.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 3 hours ago

    Ah yeah, segfault is a good point. And if you get more than that, it's still often just an exit code and some generic print statement. 🫠

    And well, with C/C++ programs being difficult to compile, I was referencing that installing libraries is typically left as an exercise for the user.
    If you're on a similar distro as the dev, it's usually documented what you need to do. But if not, you get to guess what the library package might be called. Or if it's available in a compatible version. Or at all.
    You just need to hope you get lucky, which should not be a factor in whether software compiles...

  • source
  • parent