• @RGB3x3@lemmy.world
        link
        fedilink
        English
        153 months ago

        Yeah. Look at any dev job listing and it’s all “Python, C++, or Java experience preferred”

    • @frezik@midwest.social
      link
      fedilink
      403 months ago

      For about the first five years of its life, it was eclipsed by Perl. That’s about it. I don’t think anything will ever unseat Python as too many people’s first and last language.

      • @SpaceNoodle@lemmy.world
        link
        fedilink
        83 months ago

        Surely not in the immediate future, but there will surely be a day when Python dies. Remember that BASIC filled that role for far too long.

        • @frezik@midwest.social
          link
          fedilink
          183 months ago

          BASIC was meant as a teaching language. Python is a real language that’s simple enough to be a teaching language. It also runs the same dialect on every machine, which BASIC never did.

          Being the second best language at everything, it gets used for everything because people don’t want to learn the first best in any given niche. Python isn’t the best choice for numeric applications, but with NumPy, it’s adequate, so why bother learning R? Even if you knew R already, you’re going to run into a lot of Python code for that domain from other people. You’ll be swimming against the current, and why bother?

          Python will die when the sun does.

          • TechNom (nobody)
            link
            fedilink
            English
            23 months ago

            Python is one of my primary languages (the other one being Rust). But it honestly isn’t the easiest language to teach - I’m saying this from experience. There are so many concepts at play - name binding, iterators, generators, exception chains, context managers, decorators, … . I could go on and on. Teaching becomes hard because any basic question could become a journey into the rabbit hole of python semantics.

            Python is, however, a good first language for self learners. (Note: teaching vs learning). Python behaves intuitively. It’s designed in such a way that if you guess something about the language, you’ll probably be right.

      • @smeg@feddit.uk
        link
        fedilink
        English
        23 months ago

        Depends entirely what tests you’re automating. Java codebase? Probably Java tests too. Anything web? Tests will be JS too, etc.

        • @Omgpwnies@lemmy.world
          link
          fedilink
          English
          23 months ago

          Web testing is also done in python. Selenium has support in all major Python test frameworks. I’ve done SE-only tests in Robot, hybrid SE/Python using BDD with Behave, etc.

          Unless I’m testing a language-specific API, I’m probably going to use Python…

          • @smeg@feddit.uk
            link
            fedilink
            English
            23 months ago

            I’m guessing that’s because you’re a python developer though. If you’re a frontend developer who knows JS then why wouldn’t you use that for your tests? (Apart from the fact that JS is horrible, but you’ve already accepted that suffering by becoming a web dev)

            • @Omgpwnies@lemmy.world
              link
              fedilink
              English
              43 months ago

              I’m a test automation developer, I’m not necessarily bound by the platform that the application is written in unless I’m writing white-box tests.

    • I Cast Fist
      link
      fedilink
      -43 months ago

      Maybe when 3.0 was new and created all sorts of incompatibilities with 2.x

      • @zalgotext@sh.itjust.works
        link
        fedilink
        173 months ago

        Nah, Python 2.7 got way more support than it ever deserved because people just refused to switch to 3. Hell, people were starting new python projects on 2 after 3 came out.

  • @invertedspear
    link
    1223 months ago

    Yesterday I would have argued that with the rails framework Ruby is a great way to rapidly develop a scalable application. Today I started having an intermittent failure in one of my API instances and when searching about it the only thing I could find was one obscure blogpost that boiled down to “yeah sometimes Ruby Ave active record just screws up the character set off a string” exact same string, different results. Excuse me Ruby? How the fuck can you sometimes screw up a character set? There should be no sometimes to any thing here.

    • frozen
      link
      fedilink
      873 months ago

      I like Ruby most of the time, but honestly, I’m not surprised at “sometimes” behavior from the language created by someone who, when asked for the formal definition of something in the language, said he’s “not really a formal kind of guy.”

    • @puppy@lemmy.world
      link
      fedilink
      93 months ago

      Haven’t Spring Boot in Kotlin with jib and cloud integration caught upto this in terms of development speed?

    • @FMT99@lemmy.world
      link
      fedilink
      53 months ago

      I mean I’ve been using ActiveRecord for the last 20 ish years and I’ve never encountered or even heard of this bug. Sounds like you came across an especially obscure one.

    • @EnderMB@lemmy.world
      link
      fedilink
      23 months ago

      I spent a few years with Ruby, and my experience is that Ruby and Rails couldn’t be more different in terms of programming approach, philosophy, and nature. I don’t trust Rails fully, but I do trust Ruby.

  • Oliver Lowe
    link
    fedilink
    973 months ago

    Mastodon is written in Ruby. Nowhere near as big as Facebook or the ML field, but hey, it’s important to a couple of us at least :)

    @programming @nifty

      • @arc
        link
        11
        edit-2
        3 months ago

        It probably wasn’t a big deal when it was a niche project until Twitter imploded. Then all the public instances got overloaded with new users and the limits became obvious.

        A better design is Lemmy which is written in Rust so it has far more scalability. It’s compiled and because it’s tokio / actix based, it can also do a lot more stuff asynchronously so it’s not spawning thousands of threads to cope with concurrent requests.

          • Oliver Lowe
            link
            fedilink
            53 months ago

            @towerful I mainly program in Go, so when I see all that extra software I notice how much easier it is when I get to just rely on the Go runtime. It does a lot of the heavy lifting done here, but the resulting code is not as clean. Actually just today I read through Mastodon’s code to track down a bug in my in-progress ActivityPub service (in Go) and found the Ruby really easy to navigate!

            @programmer_humor

  • @caleb@programming.dev
    link
    fedilink
    793 months ago

    As a Rails engineer with 14 years experience, I can say the place that should be in the 3rd panel is Shopify. They employ so many ruby and rails core committers and directly fund a good many rails gems, and ruby community infrastructure it’s insane. They’re also directly funding the development of things like the YJIT and speed enhancements to MRI itself.

    Then there’s all the other places I know or worked at built on Ruby where my other long tenured ruby friends work.

    • Gusto
    • Airbnb
    • Clearbit
    • Stripe
    • Github
    • Gitlab
    • Bold Penguin
    • @ComradeKhoumrag@infosec.pub
      link
      fedilink
      133 months ago

      Ruby was recommended to me by my comparative programming languages professor. I haven’t picked it up, but there were memes that this professor was so good at programming he was secretly built by the university in C++ to teach students how to write better code.

      • @merc@sh.itjust.works
        link
        fedilink
        33 months ago

        It’s worth learning Ruby to understand some of the tricks you can do in programming languages.

        Did your prof also recommend others like Lisp?

    • @SpaceNoodle@lemmy.world
      link
      fedilink
      73 months ago

      And it’s a pile of shit.

      git is great. GitHub blows chunks. The only reason it’s still big is that it sucks less than any other single platform.

      • Oliver Lowe
        link
        fedilink
        63 months ago

        @SpaceNoodle I’ll always be sad how GitHub helped popularise centralised workflows. Such an amazing opportunity for a big cultural shift, but it didn’t go anyway as far as it could have.

        @programmer_humor

        • TechNom (nobody)
          link
          fedilink
          English
          23 months ago

          Git owes a lot of its popularity to github. Without it, there’s a good chance that mercurial would have taken over. In addition, the centralized workflow was what made both git and github popular. It simplified git usage enough to let a lot of novices get started.

          I’m in no way a fan of centralization that github represents. But I think a decentralized workflow using git was a lost opportunity. People complain a lot about the git-email workflow. But I see no reason why it couldn’t have become as easy as using github if the effort spent on github was spent on git-email tools and user experience.

  • @MasterNerd
    link
    433 months ago

    So I know it’s supposed to be an arm, but those language be dummy thicc

      • @settoloki@lemmy.one
        link
        fedilink
        23 months ago

        Couldn’t agree more. Wordpress and the damn loop. Horrid example of how to do something. But it still makes up the majority of the internet…

  • somas
    link
    fedilink
    31
    edit-2
    3 months ago

    @nifty I have nothing against Ruby and think it’s a nice flexible language. At the peak of RoR though, all the asshats were all over Ruby.

    My problem with Ruby wasn’t even RoR, it was with the way the asshats valued creativity “cleverness” which seemed to mean writing code in the most cryptic ways possible. These folks took what should be an expressive language and wrote scripts that rivaled Perl’s worst “read once and never again” scripts.

    • @wim@lemmy.sdf.org
      link
      fedilink
      153 months ago

      I never did Rails but I used Ruby for many personal projects in the 2000s.

      When showing stuff to my coworkers or friends, I often joked how I tried to make my code look like it was already gzipped.

    • @corsicanguppy@lemmy.ca
      link
      fedilink
      0
      edit-2
      3 months ago

      This wasn’t “creativity over code” so much as it was the tail end of y2k and all the greybeards were canned so none could teach the shiny whiz kid how to code like an adult.

      Without the linus-like code review sessions, they never learned why and how to improve.

      Now their kludge-bro mentality has raised a whole new generation.

      And that’s why people don’t know not to flatpak or npm themselves into a solarwinds sploit.

  • @tvbusy@lemmy.dbzer0.com
    link
    fedilink
    English
    303 months ago

    RoR is too much magic for me. Getting started with any new code base is such a pain that I never want to do again. As a manager, I’ll avoid any job post that mentions Ruby. I have maintained projects written in Delphi, Centura, Java, C#, PHP and none of them even come close to the pain of RoR. Java and C# are notorious for ceremonial interfaces but that’s nothing compared to trying to figure out RoR automagics.

    • @arc
      link
      63 months ago

      There is a lot of magic in Java. Try Spring Boot for example, and things magically connect together with annotations, or somehow methods get injected onto interface on the fly, or an http interface maps onto a function with parameters because the runtime is doing it. This is most evident when you set a break point in some class and there might be 4 or 5 mystery functions it passed through between it and where you thought it was calling from. Sl4j, Lombok, Hibernate are doing the same kind of thing.

    • @FMT99@lemmy.world
      link
      fedilink
      53 months ago

      Maybe in enterprises settings what you say makes sense, but for the small to medium startups I usually work for, RoR is great. It’s super easy to prototype and switch lanes. If I had to do what I do in Java I’d go insane. As for Delphi…

      The RoR “magic” being obtuse is extremely exaggerated most of the time and more meme than reality. If you think PHP is better, by which I guess you mean Laravel, how on earth is that less “magical”? React? Next? I’ll take Ruby any day.

      • I Cast Fist
        link
        fedilink
        43 months ago

        React can go fuck itself with a pineapple, fuck that piece of shit. Every project I’ve had to deal with that used React was an absurdly bloated mess because it imported fuckloads of React plugins and addons.

  • @visnae@lemmy.world
    link
    fedilink
    303 months ago

    Hey Ruby debs, lookup Elixir. It’s supposedly similar syntax but run on the Erlang VM instead. Lots of cool companies use it, and a great community. 🤗

    • @frezik@midwest.social
      link
      fedilink
      133 months ago

      I’ve written a non-trivial amount of Elixir. It’s nice, but I wouldn’t say it’s like Ruby. It’s more heavily functional, and it wants you to work with data in an immutable way. If you’re coming from a language that doesn’t force immutability, then you’ll be miserable until you get your head around how to work that way.

      I really like it, though. Especially now that it’s getting optional typing.

    • @bionicjoey@lemmy.ca
      link
      fedilink
      43 months ago

      Elixir is an awesome language. It takes some getting used to as it’s meant to be more functional like Haskell, but it plays really nicely with big parallel workloads and is super clean to write

    • ProdigalFrog
      link
      fedilink
      English
      33 months ago

      Crystal lang is also pretty cool looking. It seems to be going for what Nim is doing, making Ruby as fast as C.

    • @Slotos@feddit.nl
      link
      fedilink
      23 months ago

      Don’t learn Elixir to replace Ruby. Learn it to enjoy OTP and BEAM.

      I would love to join a cool company that’s willing to accept a dev that can transition fast. However, most of Elixir job listings I find are gambling or crypto. And I ain’t gonna touch those.

    • geogle
      link
      fedilink
      103 months ago

      Physics changes with retirements. FORTRAN should received it’s gold watch and shown the door about 20 years ago now.

    • @pbbananaman@lemmy.world
      link
      fedilink
      43 months ago

      How long ago? ROOT (and other frameworks like GEANT) using C++ has been the standard for over 15 years, but probably longer. I think my advisor was of the last generation that had to write in Fortran.

      • Codex
        link
        fedilink
        33 months ago

        the last generation to write FORTRAN

        runs to look out window

        My God is the sun turning into a red giant?!

        Oh no, whew, that’s a relief! Guess the FORTRAN programmers will be relevant for a little longer too then.

        (As a .NET dev, I wish some languages (or versions of languages) would die but i really think once code has been written it never goes away!)

        • Cosmic Cleric
          link
          fedilink
          13 months ago

          [COBOL has entered the chat.]

          Capitalism will never let a programming language die, if it’s still less expensive than an alternative.

    • @dan@upvote.au
      link
      fedilink
      10
      edit-2
      3 months ago

      Yeah…

      Facebook hasn’t used PHP for a long time. They use Hack which started as a language similar to PHP, but it’s very different now - it’s strongly-typed and has a bunch of advanced features, like the ability to annotate functions as pure (no side effects), which gets enforced by the type checker.

  • @s12@sopuli.xyz
    link
    fedilink
    223 months ago

    Rails: “No. Don’t worry Ruby.”
    Ruby: “Huh?”
    Rails: *Hugs Ruby
    Rails: “We’re becoming irrelevant.”

    Together forever!

    • @not_again@lemmy.world
      link
      fedilink
      33 months ago

      Medicine too.

      An instrument in my lab is running jdk 1_8_131…and this is a recent/newish piece of equipment.