• GreenKnight23@lemmy.world
    link
    fedilink
    arrow-up
    30
    arrow-down
    2
    ·
    4 days ago

    it’s hilariously depressing how most people hate on Ruby because of the shit Rails does.

    also, Sheon Han(the author), is a corpo-shilling hack that writes predominantly fluff pieces for his silicon valley friends and neighbors.

    don’t believe what he writes because he only gets paid when his opinions garner traffic.

    want to know why Ruby still has a following? same reason why Java is still holding on. Same reason why COBOL and FORTRAN is still going. because it works and people still use it.

    • FizzyOrange@programming.dev
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      3 days ago

      None of the points in the article about the flaws of Ruby are because of Rails. In fact the article says the exact opposite - the only reason Ruby is still relevant is because of Rails!

      • GreenKnight23@lemmy.world
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        3 days ago

        you’re wrong. none of the points in the article say anything at all. the pillars that hold up the lies are

        • ruby is bad because python/js good
        • matz is good but DHH is bad and so ruby is bad
        • Twitter failed 14 years ago because ruby is bad and so ruby is still bad
        • ruby is bad because it’s old
        • ruby bad because it’s not used as much as python/js

        Sheon Han worked at Twitter. doubtful he was there between the 2011-2014 rewrite. I also doubt that he’s done much of anything with ruby since he was fired from Twitter after Musk destroyed it. especially so since he’s taken up freelance writing since 2021.

        Sheon Han is attempting to stay relevant by desperately attacking a language he barely uses and hasn’t touched seriously since at least 2021.

        you’re better off ignoring him and “journalists” like him.

        • FizzyOrange@programming.dev
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          2 days ago

          ruby is bad because python/js good

          Nobody said that.

          matz is good but DHH is bad and so ruby is bad

          Nobody said that.

          Twitter failed 14 years ago because ruby is bad and so ruby is still bad

          I don’t think Ruby’s performance has significantly changed since then, so yes. Still bad.

          ruby is bad because it’s old

          Nobody said that.

          ruby bad because it’s not used as much as python/js

          Nobody said that.

          More straw men than a scarecrow convention.

          • GreenKnight23@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            2 days ago

            ruby is bad because python/js good

            1000002575

            matz is good but DHH is bad and so ruby is bad

            1000002577

            Twitter failed 14 years ago because ruby is bad and so ruby is still bad

            1000002576

            ruby is bad because it’s old

            1000002578

            ruby bad because it’s not used as much as python/js

            1000002579

            More straw men than a scarecrow convention.

            did you even read it?

            • FizzyOrange@programming.dev
              link
              fedilink
              arrow-up
              3
              arrow-down
              1
              ·
              2 days ago

              did you even read it?

              Yes I read and understood it. :-D

              I probably shouldn’t reply since apparently you’re still working on learning how to copy text…

              ruby is bad because python/js good

              Yes indeed, if you actually read his text, Ruby isn’t bad because Python/JS are good. It’s bad because it has failed to add static type checking. Python and JS are simply examples of languages that didn’t fail in the same way.

              matz is good but DHH is bad and so ruby is bad

              That quote says absolutely nothing about Matz or DHH making Ruby bad.

              ruby is bad because it’s old

              No, the text says that Ruby persists despite its badness due to inertia and nostalgia.

              How can you accuse me of not reading it when you’re pasting literal quotes that contradict you? Insane.

  • xxce2AAb@feddit.dk
    link
    fedilink
    arrow-up
    26
    arrow-down
    1
    ·
    4 days ago

    Maybe if I could read the article I’d have something to say about that. I guess we’ll never know, and that’s probably for the best.

        • xxce2AAb@feddit.dk
          link
          fedilink
          arrow-up
          16
          ·
          edit-2
          4 days ago

          Disclaimer: I’m not Ruby programmer. I evaluated it once, saw no particular reason to use it instead of Python and promptly forgot about it.

          With that said, the specific criticism(s) are:

          • Poor performance. Sure. Ruby does appear to be somewhat slower than Python, but I’m more concerned about the peak memory consumption which is admittedly frequently pretty terrifying. Mind you, if I need high performance, I’m not likely to be using either Ruby or Python. It’s fine for automation scripts, rapid prototyping or experimentation, hypothesis validation, moderate data processing, analysis and visualization, but yes: If you build your (supposedly) hyper-scalable website on Rails or use it for the system software for your embedded device, you’re going to have a bad time. Every tool has its place (except Brainfuck). Don’t use a hammer when you should be using a screwdriver.

          • The above also covers the railing against rails, about which I have no further comment as I’ve never used it. Maybe it’s nice, but if you’re working on something with more concurrent users than your homelab automation UX, there’s undoubtedly better alternatives.

          …And that appears to be it. So it boiled to down to “performance”. Does that in and of itself make Ruby “not a serious programming language”. Well, if it does, then the same applies to Python. Does it mean that there’s probably a better alternative for any given application? Probably yes.

          • FizzyOrange@programming.dev
            link
            fedilink
            arrow-up
            3
            arrow-down
            1
            ·
            3 days ago

            You forgot about the lack of static type hints. That’s a serious flaw.

            If you ignore the performance and lack of static types, then I don’t think there’s too much wrong with Ruby but apart from Rails there isn’t really a compelling reason to use it over Python either. And that’s not saying much!

            • xxce2AAb@feddit.dk
              link
              fedilink
              arrow-up
              1
              ·
              8 hours ago

              Eh. Almost every tool has its place. I use Python for all my automation needs, a niche in which it serves perfectly well. Surely you wouldn’t argue that Rust or C++ would be a more appropriate alternative in that kind of role because they’re statically typed. Then there’s other things - I enjoy having Jupyter Notebook on hand for rapid prototyping, sanity checks or quick testing of ideas, plotting etc. It certainly beats using Octave, at least in terms of ergonomics. Most of my recent C++ projects uses Python generated Ninja scripts as the build system, and so on. It is possible there’s something out there that would serve those needs of mine better than Python? Sure, but if so, I don’t think I know what it is.

              • FizzyOrange@programming.dev
                link
                fedilink
                arrow-up
                2
                ·
                7 hours ago

                Surely you wouldn’t argue that Rust or C++ would be a more appropriate alternative in that kind of role because they’re statically typed.

                Not C++. Rust hopefully, when cargo script is stabilised!

                Until then I strongly prefer Deno (which is also statically typed) for ad-hoc scripting. Python is surprisingly bad for that use case despite it being super popular for it because:

                1. There’s no way to use third party dependencies reliably from a single-file scripts. You’re limited to the standard library, or setting up a whole pyproject.toml, venv and so on.
                2. You can’t import files by relative file path like you can in Deno, Zig, and Rust (sort of; it’s slightly hacky). That leads to people doing hacks to PYTHONPATH or importlib which completely breaks all tooling.
                • xxce2AAb@feddit.dk
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  edit-2
                  6 hours ago

                  I agree that Python’s handling of 3rd-party dependencies is cumbersome, especially for scenarios that would have otherwise been trivial. However… The use-cases I’m referring to in my context have no need for anything outside the standard library. I’m literally talking about using Python as a shell script alternative, more or less.

                  …Which is admittedly the lowest of bars. It’s hard to be less ergonomic or more arcane than Shell script - unless one resorts to the Dark Arts of Perl or APL.

                  This is the first time I’ve heard of Deno, but I’m not sure that having to install a 110Mb JS VM + runtime is more convenient in my context than simply using Python which is already guaranteed to available on any system I use and does all I need. Is Typescript a better language than Python? Perhaps. Does that matter for my use-cases? No, not really. I definitely wouldn’t use Rust - or any other compiled language - for scripting. While I haven’t had time to look at Zig as much as I’d like, I do adore the language so far - I can definitely see myself transitioning from C++ to Zig, and likely will to the extent I’m able. Still don’t see it as a Python replacement though (again, for my use-cases - I’m emphatically not arguing that there isn’t plenty of projects implemented in Python that could have benefited from being written in Zig or Rust instead).

                  If you have any other suggestions for viable alternatives, I’m open to suggestions though.

    • MonkderVierte@lemmy.zip
      link
      fedilink
      arrow-up
      3
      ·
      4 days ago

      No problem with 3rd-party scripts and frames blocked.

      Seriously, this lets me read more articles than with only adblocking.

    • thingsiplay@beehaw.org
      link
      fedilink
      arrow-up
      2
      ·
      4 days ago

      Me too. What happened there? I thought it might be because some of my browser extensions block few scripts and other elements. Enabling some of the stuff didn’t make reveal the article, so I lost interest. Or is it paid?

      • xxce2AAb@feddit.dk
        link
        fedilink
        arrow-up
        2
        ·
        4 days ago

        I honestly didn’t care enough to spend time looking into it as I’m not being paid to make Wired’s website functional. Thankfully, BrikoX was the real MVP and ensured nobody has to actually go there to access the content by posting an archive link.

  • FizzyOrange@programming.dev
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    edit-2
    3 days ago

    This mirrors my feelings about Ruby. Especially the lack of type hints. It’s a huge problem when trying to work on large Ruby codebases, e.g. Gitlab or Asciidoctor. Easily doubles the time it takes to get anything done. Sometimes I’ve tried to make a change to Gitlab but had to give up entirely simply because it’s impossible to follow the control flow.

    That’s very rarely a problem with statically typed languages. (It can happen with excessive use of interfaces that are resolved at runtime but it’s much less common.)

    So aside from Rails I can’t really see any reason to use it over even Python, let alone actually good languages like Rust, Go, Typescript, etc.

  • maub@slrpnk.net
    link
    fedilink
    arrow-up
    2
    ·
    3 days ago

    The article starts with a lie, imprinting for computer users and the importance for UX is discussed for at least 20 years, see: Baby Duck Syndrome(wikipedia).

    One can only think of something like this as “their own little theory”, if they are uninformed in both programming and psychology which, after reading this stain of an article, is not far fetched. The correct psychological effect to point out here would be Dunning Kruger (wikipedia).

  • partial_accumen@lemmy.world
    link
    fedilink
    arrow-up
    14
    arrow-down
    2
    ·
    4 days ago

    Ruby was the most approachable language I found and sheparded me from my limits of bash scripting and Windows batch file scripting into the next level.

    The author derides Ruby’s easy readability and syntax because it has issues scaling to large enterprise applications. I don’t disagree there is a performance ceiling, but how many hundreds of thousands of Ruby projects never rose to that level of need? The author is also forgetting that Ruby had Rubygems for easy modular functional additions years before Python eventually got pip.

    I don’t write in Ruby anymore, and Python has evolved to be much more approachable than it was when Ruby was in its prime, however if someone came to me today saying they wanted the easier programming language to learn that could build full applications on Linux, OSX, Windows, and the web, I’d still point them to Ruby with the caveat that it would have limits and they would be better served by Python in the long run.

  • Ephera@lemmy.ml
    link
    fedilink
    English
    arrow-up
    9
    ·
    4 days ago

    Hmm, I don’t have too large of a sample size, but I don’t feel like Ruby programs are buggier than Python programs, on average. Not being the language for programming beginners and data scientists, probably aides that impression, though…

      • Ephera@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 days ago

        Perhaps, yes. 😅

        It was a diplomatic way of saying that I doubt the author’s assessment that Ruby’s tooling is worse than Python’s. Partially, because Python’s tooling has traditionally been terrible (even if it’s been improving in the past two years, from what I hear). But yeah, partially because I do not see Ruby programs being as buggy as they insinuate here…

    • entwine@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      3 days ago

      Not being the language for programming beginners and data scientists, probably aides that impression, though…

      I think it was that back when it was relevant (but replace data scientists with web devs)

      I never got interested in the ecosystem myself, but I’ve run into it every now and then. I feel like it’s in the same place as PHP today: still used a lot for legacy reasons, but you’ll get weird looks if you start a new project with it and you’re under the age of 40

      • Ephera@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 days ago

        I think it was that back when it was relevant (but replace data scientists with web devs)

        Sure, but if programs from that era are still around, chances are the maintainer is quite experienced by now and has fixed all the funky behaviour. 🙃

        I never got interested in the ecosystem myself, but I’ve run into it every now and then. I feel like it’s in the same place as PHP today: still used a lot for legacy reasons, but you’ll get weird looks if you start a new project with it and you’re under the age of 40

        Ten years ago, a university buddy of mine discovered Ruby and you might’ve thought a miracle happened from how excited he was for it. But yeah, that was also the last time I met someone in real life who was excited about Ruby. 😅