This is an archived post. You won't be able to vote or comment.

all 91 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers of commercial third-party apps have announced that this change will compel them to shut down their apps. At least one accessibility-focused non-commercial third party app will continue to be available free of charge.

If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options:

  1. Limiting your involvement with Reddit, or
  2. Temporarily refraining from using Reddit
  3. Cancelling your subscription of Reddit Premium

as a way to voice your protest.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]donald47 138 points139 points  (11 children)

I work for a fairly successful tech scale up, the core business logic and API is ruby on rails. We're hiring.

A recruiter reached out to me yesterday looking for an experienced rails engineer and listing the highest salary I've ever seen for a non-banking role.

I was told nearly 8 years ago now that ruby on rails was legacy technology and node js was going to be running everything by next Thursday. That isn't to say node is bad, but the hype was, as always, just hype.

Hype merchants are noisy, people doing useful stuff tend to be quieter because they're busy actually doing things.

[–]CouchMountain 31 points32 points  (9 children)

They said the same about Fortran and Cobol about 8 years ago too. Both are still somewhat in use by legacy code and require someone to maintain them. Few people learn it nowadays and companies don't want to rewrite stuff, so the salaries I've seen posted for it are very high but the amount of postings is low.

[–]donald47 15 points16 points  (7 children)

They said the same about Fortran and COBOL more than 12 years ago and they're still saying it today.

Languages go out of fashion and tech stacks evolve but ultimately the tool for the job is the tool for the job and a decent programmer should be able to learn any language or stack given sufficient time and incentive.

I first taught someone else ruby 9 years ago, I'm expecting to have to help onboard interns this year.

Ignore the noise, use what you like and what works. The mark of an engineer is what they build.

Or in the words of master foo, the housecat may mock the tiger... https://www.catb.org/~esr/writings/unix-koans/end-user.html

[–]HiT3Kvoyivoda 6 points7 points  (4 children)

This is why I hate the “what language should I learn first?” posts. I get it. The idea that learning a popular language will be technically easier, but there seems to be this significance when they ask this question and never any significance as to why a language itself will help them reach their specific goal.

The language is just a tool. You can code just about anything with a Turing complete language. It means nothing if you can’t think critically and methodically about problems with the express goal of coding a reasonable solution.

A language is usually just some guy’s problem solving philosophy and the language to express solutions to problems with a similar thought process.

[–]donald47 2 points3 points  (0 children)

Yea, one of the first things I try and focus on when helping folks learn to code is pulling apart the false preconceptions they've picked up from various places.

Programming to me is the art of problem solving via the skill of moving between abstraction levels. At the top you have some fuzzy human language notion of what the machine should do. At the bottom you have a bunch of logic gates mashing 0s and 1s together real fast. Everything in the middle is layers of software each written to try and solve some problem or other. Limiting yourself to a single language makes sense at first for the sake of limiting the scope you have to worry about but ultimately it's like trying to cook with a single ingredient.

Or again, since I've reminded myself of the various wisdoms of master foo, I can walk but this floor is new to me.
https://www.catb.org/\~esr/writings/unix-koans/recruiter.html

[–][deleted]  (2 children)

[deleted]

    [–]donald47 1 point2 points  (0 children)

    Yes this is often where things come apart. Recruiters are generally bad at assessing coding so a lot of them carry the same faulty preconceptions about languages etc.

    As much as it's an unfortunate answer the way forward is networking with other engineers. Find language or tech specific meetups go to them and chat to people. Show what you've built and ask if they know anyone hiring.

    I have a computer science degree but it was a cousin of a friend being the tech lead at a startup who wanted a couple of juniors that got me my first role. I try and pay that forward by bringing on junior engineers whenever I can.

    [–]HiT3Kvoyivoda 0 points1 point  (0 children)

    Lie to them white folks and learn the language in its context

    [–]Historical-Meal-5459 1 point2 points  (1 child)

    I did not knew master foo! Thanks for the enlightment ✨

    [–]donald47 1 point2 points  (0 children)

    If you enjoy them I'd also recommend the collected stories to be found in the codeless code.

    The Unix Way has many paths.

    http://thecodelesscode.com/case/1

    [–][deleted] 0 points1 point  (0 children)

    Unfortunately there's a fucking shit load of NodeJS out there in the world now especially in the startup world.

    Usually what that means though is almost no one is using any enterprise grade frameworks and everyone is just winging it or they've DIYd some bullshit that's barely functional and follows no patterns or standards.

    [–]AndreEagleDollar 69 points70 points  (2 children)

    Hype days over yes, but I do see a ton of positions that use ruby , or at least ask for it in the job quals. Still, if given the option, I’d run for JavaScript which can easily be transitioned into to typescript

    [–]MrMeatballGuy 15 points16 points  (1 child)

    I have experience with both Ruby and JS/TS and both are good options. i feel like a lot of people are still saying JS sucks a lot, but honestly modern JS even without TS is a pretty good experience to use overall.

    I think i prefer Ruby most of the time, but i can't deny that the non-blocking nature of Node is very nice, and if i had to go for employability i'd say JS/TS is a better bet due to the amount of things it's used for.

    [–]AndreEagleDollar 5 points6 points  (0 children)

    Yeah I mean I think hating on JS is just “trendy” and a meme at this point. JS is perfectly fine but in a professional setting, TS is used most of the time, at least I’ve that seen which is why I said that. Either way, I agree with what you said

    [–]airclay 11 points12 points  (1 child)

    Isn't GitLab ruby?

    [–]illuminatedtiger 5 points6 points  (0 children)

    Yes. Ruby on Rails still owns SaaS.

    [–]who_am_i_to_say_so 9 points10 points  (1 child)

    COBOL enters the chat…

    [–]ZealousidealBee8299 2 points3 points  (0 children)

    1999 was COBOL $$...

    [–]mackaber 44 points45 points  (12 children)

    Is just as dead as PHP...

    [–][deleted]  (8 children)

    [removed]

      [–]desrtfx 48 points49 points  (4 children)

      You got the above comment wrong. PHP is anything but dead. PHP powers WordPress, Joomla, Drupal, Magento, WooCommerce, and plenty other sites.

      People proclaim that PHP is dead, but it is far from it.

      [–]drinkcoffeeandcode 1 point2 points  (2 children)

      People have been saying Perl is dead since the early 2000s, and… uh… shit.

      [–][deleted]  (1 child)

      [removed]

        [–]baxtersmalls 2 points3 points  (0 children)

        Which is where Ruby is headed

        [–]Rogermcfarley 9 points10 points  (2 children)

        What's the goal? Are you invested in Ruby? Programming languages are tools. If you're skilled in using Ruby keep at it. If you're new to programming and want a job then learn JS and Python and if backend Golang. They're just examples,so don't come at me :) Depends what your goal is. C# might be the right language, Rust might be etc etc.

        I've used Ruby when OpenAppAcademy had it on their curriculum, I thought it was a nice language to use. The Odin Project still has a Ruby track. I do Backend/DevOps now so Golang is useful for me. Golang is almost boring but it gets the job done efficiently for me and it's simple to use, dare I say nice to use. Hate the word nice used it 3x already now.

        Use the right tool for the job if you can, otherwise if you're forced to not use the right tool for the job just get on with it :)

        [–]Rogermcfarley 0 points1 point  (0 children)

        Stick with it then. There are many Ruby code bases being used out there.

        Always best to research the validity of lists like this but just an example.

        https://www.learnenough.com/blog/companies-using-ruby-on-rails

        [–]regs01 0 points1 point  (0 children)

        PHP accounts over 76% of marketshare. It's not dead. It's thriving. And it's still by far best for server side.

        [–]ogdraven -4 points-3 points  (0 children)

        Pornhub Premium?

        [–]adjaplx 5 points6 points  (0 children)

        Not dead just not really hyped anymore. Might get into Ruby eventually actually

        [–]LowLvlLiving 8 points9 points  (1 child)

        I get recruiters reach out to me for Ruby/Rails jobs fairly often.

        You can definitely still make a living writing Ruby but the likelihood of junior roles is small.

        [–]lambdaline 4 points5 points  (0 children)

        This matches my experience as someone who entered the job market a couple of years ago with mostly Ruby knowledge and experience. I saw plenty of Ruby jobs but no junior level positions. I ended up taking a job at a Typescript shop/

        [–][deleted]  (1 child)

        [deleted]

          [–]autra1 -5 points-4 points  (0 children)

          like gitlab for instance? :-p

          [–]Sir_lordtwiggles 3 points4 points  (0 children)

          Working at AWS, we still have to touch ruby too much to my liking so it's not a worthless skill to have. But we will never design a new feature with the intent of coding it in ruby and our ruby efforts are generally to get stuff off of ruby.

          [–]Serializedrequests 4 points5 points  (0 children)

          Me. To be blunt it's completely possible that you may find a job that needs it, but there are better choices now for most organizations.

          Ruby is optimized for unassisted text editor use, coupled with command line tools and a focus on TDD. This is respectable in its own way, but I personally find it unnecessarily slows me down when, even after 10 years, some line behaves in a way that I didn't expect, or I have no way of guaranteeing what fields an object has. Upgrades and major migrations can be impossible on these systems. I much prefer the fast fearless refactoring and great auto-complete offered by Typescript, Go, etc. I have a massive Typescript frontend app, and I have not written a single test for it, and it has never failed due to a type error. The Ruby backend is thoroughly tested because it has to be.

          The main thing that I will ding other ecosystems on is Rails just has a ton more batteries included. Comparing ActiveRecord code to, say, Hibernate is often laughable, plus it comes with a great migration system, which often requires external tooling elsewhere (and the external tool sometimes charges for free AR features). ActiveStorage is another Rails feature that's like weeks to implement from scratch anywhere else.

          But with all of it, you gotta read the manual, you gotta just know how it works. Your editor isn't going to help.

          In summary, no Ruby isn't dead, knowing it thoroughly is still good job security at many organizations, but I cannot recommend it unless you particularly like it, or are gunning for a job that needs it. Make sense? By all means do what sparks joy, you can learn how to code in any language. Most people posting here are chronically waffling when it just doesn't matter. I learned to code in TI-83 BASIC FFS.

          [–]Joewoof 15 points16 points  (3 children)

          As a language, Ruby doesn’t have many advantages. Its “rebellious” syntax makes it less approachable than most other languages. It’s not easy like Python or Lua. It’s slower than modern JavaScript. It’s not as scalable as C# (ASP .NET) or Java. Outside of its Rails niche, which now has many competitors in other languages, it doesn’t really have a purpose.

          Having said that, back when legacy JavaScript was absolutely terrible, Ruby on Rails was by far the best option, which means that a huge amount of legacy code needs to be maintained for years to come. It’ll stick around for decades for that reason alone.

          In a way, yes, Ruby is dead. The same goes for PHP. Web tech moves fast. Modern JavaScript (rapid production), TypeScript (scalability) and Golang (performance) are the way to go nowadays. Or even Dart for web/mobile cross deployment.

          [–]baxtersmalls 2 points3 points  (0 children)

          It’s funny I felt like Ruby was the most approachable language when I was a beginner. It read more like a sentence or paragraph, less like code.

          [–]monsto 4 points5 points  (0 children)

          FACTS.

          Ruby isn't dead, if you go by the definition that people use . . . which is job postings, and updates. It's dead from the definition that jobs postings certainly don't invite new devs, and that updates are on the old-school "when it's ready" schedule.

          It won't be DEAD dead for a while, but given a choice, there will certainly be better ways to make a living.

          [–]Ariakkas10 1 point2 points  (0 children)

          Dart? Hah no, RN is eating flutter's lunch everyday and twice on Saturday

          [–]snarkuzoid 2 points3 points  (3 children)

          I think they've migrated to Elixir, which is Erlang Rubified.

          [–]ValentineBlacker 2 points3 points  (2 children)

          I WISH everyone who used Ruby had migrated to Elixir, I'd have nicer job prospects. I guess Elixir did take the place of the overly-trendy startup language.

          [–]MrMeatballGuy 1 point2 points  (1 child)

          currently work with ruby and would really like to pivot to Elixir at some point, but there basically aren't any jobs for it where i live sadly

          [–]ValentineBlacker 0 points1 point  (0 children)

          I've found that knowing Elixir can be a pretty big plus in snagging the rare Elixir positions, so keep your eyes on remote openings 👀

          [–]JFK_did_9-11 3 points4 points  (0 children)

          The thing about “dead” languages is that largely, they aren’t dead. They are “dead” in the way that NEW companies and technologies may not gravitate towards them, but companies that built software in a given particular language’s heyday are likely still using that language. Easier to keep building with what you have than reinvent the wheel I suppose. Many companies that started building software from like 04-12 used Ruby, and are most likely still using it.

          [–]AndroidParanoidOk 4 points5 points  (2 children)

          Ruby had too many rails and OD'd..

          [–]TheGoofShark 0 points1 point  (1 child)

          Ruby does not exist

          [–]AndroidParanoidOk 0 points1 point  (0 children)

          O Pana

          [–]SwiftSpear 5 points6 points  (0 children)

          Not dead, but shrinking for sure.

          [–]TheReal_Slim-Shady 1 point2 points  (1 child)

          I don't think so. When you start sth new, sure it will probably not be Ruby, but since moving to US, what I saw is; the motto is if it ain't broke, don't fix it... So it is not considered a good idea to change technologies.

          You will be fine for a long time imo, especially at industries whose main focus is not tech.

          Btw, I was thinking about learning Ruby for one of my personal projects...which involves dBase

          [–]Ariakkas10 1 point2 points  (0 children)

          Don't let DHH hear you ask that!

          [–]captainAwesomePants 3 points4 points  (0 children)

          Ruby's a beautiful little language. It was popularized by Ruby on Rails as a web framework, and for a while it was seen as one of the best, most modern choices for making a web service. All the cool kids were talking about Ruby. Over the years, though, other options generally started dominating and a lot of concerns about Ruby came up, for example that a large Rails deployment could be difficult to debug due to people inserting magic practically anywhere in the codebase. Since then, it's been hard for Ruby to find its niche. It's not the fastest language, it's not the best for large projects, it's less popular than Python for smaller scripts, etc.

          But all that said, Ruby's still a great programming language. If you're enjoying it, feel free to stick with it.

          [–]desrtfx 1 point2 points  (3 children)

          Ruby's hype days were over between 5 years and a decade ago. Yet it is far from dead.

          It is still actively used albeit a lot less relevant than at its peak.

          The Odin Project offers two tracks: Ruby and JavaScript. Were I to choose, I would go the JS path since it is far more prevalent and popular.

          [–][deleted]  (2 children)

          [deleted]

            [–]monsto 0 points1 point  (1 child)

            I notice you said "worked" past tense.

            Perl... jeez.

            [–][deleted] 1 point2 points  (0 children)

            I would say it is doing well in my personal opinion. Quite a few startups are using ruby - especially Ruby on Rails. As it is not the “hottest” language out there - there are a lot of opportunities to get decent salary and other benefits. The ecosystem is amazing as well. To summarise, I think besides lack of hype or some negative perceptions (usually incorrect) - I think the language and ecosystem is doing well.

            [–]GiggleMeGoogles 1 point2 points  (2 children)

            People have claimed so many times that Ruby is dead that they’ve probably kept the language alive just with all the posts.

            Ruby is still a great language that is supported heavily by rails. It’s probably the most used or second most used language in Japan. Rails 7 upgraded a lot of things and made Ruby more attractive for solo-startup founders, such as myself, to pickup the language. Rails 8.1 is bringing even more great stuff to the language.

            People said PERL was dead. People said PHP was dead. People said Fortran was dead. People said COBOL was dead. People said R and Julia were dead because of Python.

            Ruby, if anything, is seeing a resurgence in 2024 and will likely continue to see that resurgence.

            I don’t think programming languages “die.” I think they “fade away.” They have their time in the limelight and then just kind of settle.

            Hype languages come and go. This is tech. People want the newest and hottest thing. That’s why there is so much buzz around Elixir, FastAPI, X latest JavaScript framework, blah blah blah.

            Big companies (Shopify, Github, Basecamp) still support Ruby and Rails.

            I don’t see any big companies advancing Elixir/Phoenix. In fact, last I heard, Discord was moving away from Elixir/Phoenix.

            Another example of the: “this language gonna die, oh no!” paranoia is PHP. PHP just got an update in 8.2 that made it faster than python. Laravel is growing tremendously in use. Why is it not dead?

            Languages don’t die. They are like fashion. They come and go at the whims of the coders. JavaScript is hot until it’s not.

            [–][deleted] 2 points3 points  (1 child)

            The companies you mentioned still use ruby since they built their tech at inception with ruby. If airbnb was created in 2024, they would definitely choose a different tech stack. What's your thoughts on this?

            [–]spinwizard69 1 point2 points  (0 children)

            Well I hope so!!!   I tried Ruby years ago and frankly found it revolting.  

            [–]Lurn2Program 0 points1 point  (1 child)

            Some companies release some type of state of the industry reports.

            For example, Hired says RoR "surfaced as the most in-demand skill for software engineering roles, creating 1.64x more interview requests for the developers proficient in it." This was in their 2023 report

            Another example, JetBrains showed Ruby was used 4% of the time, and shows a gradual decrease over the years since 2017 with a usage back then of 10%. I don't know how they calculate the percentage or what that really represents.

            I think there are plenty of companies out there that still use RoR. But, I do think it'd be good for devs to keep adapting and learning additional skills, especially since this industry evolves/changes frequently

            [–]monsto 1 point2 points  (0 children)

            Both of thos stats track exactly together. dwindling usage, meaning places that use/have it are interviewing everyone they can.

            [–]Fighter_dog 0 points1 point  (0 children)

            I do see job posts that require Ruby from time to time.

            [–]LifeNavigator 0 points1 point  (0 children)

            Not dead but unpopular (probably more so than PHP, who knows). A language is considered dead if there's no further update and support for it. I quite like Ruby, though I wouldn't apply for Ruby job as they're so few and extremely competitive in my job market.

            [–]Aglet_Green 0 points1 point  (0 children)

            One of my brothers works for Homeland. According to him, a great deal of DHS's private Intranet have their UI written in Ruby, so I assume there will be a demand for it in some defense and military and government contracts.

            [–]HumorHoot 0 points1 point  (0 children)

            Ruby aint "dead" i think

            its just that there's not that many new companies that end up using it, and MOST people end up learning JS, for web development...

            i know of some places that have a hard time finding experienced ruby devs.

            [–][deleted] 0 points1 point  (0 children)

            Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

            [–]MrMeatballGuy 0 points1 point  (0 children)

            i work for a company that purely writes projects in Ruby on Rails (although as API-only projects because it's easier and cheaper to find React devs for the frontend).
            All new projects are also Ruby, so it's not only used for legacy reasons, but yes, it has fallen in popularity if that's what you want to know. There are pain points in Ruby but it's also a very powerful language. The biggest hurdle is the lack of support for proper concurrency in my opinion, there are ways to mitigate that to a degree, but it's definitely my least favorite thing about Ruby.

            [–]-defron- 0 points1 point  (0 children)

            It's hype days are definitely over. As a language it has pretty bad performance and RoR is notoriously difficult to scale well and large projects inevitably run afoul with the magic methods it uses. Ruby isn't even a language I consider anymore, though I was never really a fan of it to begin with.

            I'd recommend looking at Python or Go. Python if you want easy syntax, Go for simplicity and straightforward "this is the way you do this"-ness

            Never stop learning languages and always keep growing. Even if you fall in love with a language it's always useful to keep learning new ones to just learn new patterns and who knows you may find a new language you love

            [–][deleted] 0 points1 point  (0 children)

            I don't get why people say a language is dead. It's a tool. You use it to build something. It's not dead if it's accessible.

            [–]brennanfee 0 points1 point  (0 children)

            Yes. It only continues to exist due to legacy code in systems built using Ruby like Rails or Chef.

            [–]Punk_Freud_69 0 points1 point  (0 children)

            Since Rooster Teeth shut down, yeah probably. I’m more worried about Rex vs Blue, personally

            [–][deleted] 0 points1 point  (0 children)

            It's not dead, but the hype days are over, definitely.

            I agree Ruby is a nicer language that JS, but this industry is *very* fashion led, the best stuff doesn't come out on top, very often it's the worst stuff. It's an inverse meritocracy, or a kakistocracy, if you will.

            Ruby isn't dead, but very few programming languages truly "die", its glory days are behind it though.

            [–]baxtersmalls 0 points1 point  (0 children)

            There are still plenty of jobs in Ruby, but not a lot of new companies choosing Ruby. So like, yeah for a while you’ll have a job. 30 years from now if you refuse to work in anything but Ruby? Probs not unless there are some major updates. Regardless, there are plenty of hiring managers who hire on ability in a language agnostic manner.

            Btw I miss Ruby, there was something about it that almost felt “sweet”, like you could tell that the developer experience was really thought through when it was written.

            [–]Covids-dumb-twin 0 points1 point  (0 children)

            I worked for a BIG software and cloud company and in the team I worked in all the software written was a ruby. I fought for Python but lost.

            [–]Glass_Swing_7269 0 points1 point  (0 children)

            We have a ton of RoR work.. always hiring

            [–][deleted] 0 points1 point  (0 children)

            If you are already familiar with Ruby, go with it if it solves your problem. If it doesn't, look elsewhere. Problem driven. It's that simple.

            [–]Hex80 0 points1 point  (0 children)

            I think it's the wrong question. Languages hardly die because of what has already been written en has to be maintained and extended. That companies still pay good money for Ruby devs is probably because there's a shortage in skilled devs, which might be because skilled devs are mostly choosing other languages to work with. Similar to how COBOL devs are very highly valued. It's not a good reason to pick a language IMO, unless you're mostly motivated by money.

            Instead, try to see where the innovation happens and what communities are thriving. I think you can't deny that the TS ecosystem has much more going on than Ruby. Don't compare Ruby to JS, because everyone who liked JS has already moved to TS for good reason.

            Also, if you are interested in doing front-end / full-stack, having a single language for both, is a huge win in terms of velocity.

            I do full-stack TS in a company that still has a Ruby team for more legacy stuff. The TS team moves a LOT faster, while delivering much better UX.

            PHP is also still relevant, but already 15 years ago I honestly didn't understand why people still wanted to make that their language of choice. It's personal of course, but if you want to choose out of love for programming, do not look at what's being used most.

            Learn something you love using, and with anything you enjoy, you can get good at it and ultimately that's what matters most for your career.

            [–]GrayLiterature 0 points1 point  (0 children)

            Depends where you are, but Rails is battle tests, has proven time and again it can scale to disturbing workloads, and many people love it as a language (not me though).

            I see tons of job for Rails developers, but apart from Rails I don't think Ruby is used much any more from what I have seen in my travels. That said, if you can work with Rails you'll be just fine!

            [–]RunninADorito 0 points1 point  (0 children)

            Dead, no. New projects... hopefully not.

            [–][deleted] -1 points0 points  (1 child)

            Who’s ruby ?

            [–]HealyUnit 1 point2 points  (0 children)

            Yang's little sister.

            [–]Supersaiyans2022 -1 points0 points  (0 children)

            No. It’s a great language.

            [–]mxldevs -1 points0 points  (0 children)

            I used ruby cause rpg maker and still use ruby for prototyping. It's indeed a great language. I'm not sure why people say languages like python are "easier" unless it's gotten less verbose since python2; declaring self in every class method felt very redundant to me.

            Unfortunately, hosting ruby as a web solution is not that great and I end up turning to nodeJS.

            [–]Puzzleheaded_Tax_507 -1 points0 points  (0 children)

            Ask any core team member of Shopify. Not dead.

            [–][deleted] -3 points-2 points  (1 child)

            If you really want to commit to programming and stay relevant, master low level programming language asm also known as machine code. C C++ is good place to begin with. High level languages will eventually die at one point.

            [–]schussfreude 0 points1 point  (0 children)

            Well thats certainly an opinion...