12
43 Comments

Is it a good idea to learn Ruby(On Rails) for launching a lot of MVPs if I'm a fullstack JS dev?

I've heard a lot of great things about RoR for making MVPs, especially for solofounders.
But a lot of people advise to just use what you know.

If my goal is to launch is to launch MVP after MVP for years until one of my project really takes off(as a solo founder), do you think it would make sense to learn Ruby on Rails? of course it would be slower at first, but once I master RoR, it could be a lot faster right?

I'm kind of experienced with Node.js, and a beginner with Vue.js/Typescript(2 months of experience), I find it a bit slow to make MVPs with JS

Should I learn ruby on rails?
  1. yes
  2. no
Vote
posted to Icon for group Developers
Developers
on February 6, 2022
  1. 28

    Solo founder with 11 years of Ruby on Rails experience here.
    The best advice I can give you:
    Learn how to do Marketing.

    1. 4

      and what resource (maybe book, blog, or something) you will recommend for newbie indie hacker to do marketing?

      1. 3

        I'm not a marketing expert but a few months ago I've received this advice

        TLDR:

        • start a blog related to your product and/or its industry
          (my first blog posts are something like: "How to achieve X with product Y")
        • do keyword research (Ahrefs, Keywords Everywhere)
        • write good content that ranks for at least 6 months
        • crosspost on dev.to / hashnode.com etc...

        Also, follow:
        @theandreboso
        @YannickVeys
        @dagorenouf
        to get some inspiration and the vibe in general

        Good luck!

        1. 2

          Thank you nyku, learn a lot from you, will try to start a blog too, I have not tried it before :)

      2. 2

        I would be very intrested in that.

  2. 6

    I think you are falling into a trap. Rather than spending time learning a new framework you should spend time building product and talking to potential customers. Don't fall into the trap where you think the grass is greener in RoR and decide to learn that framework. Then when it isn't the magical panacea that allows you to build a beautiful full fledged product in 30 minutes you will go and learn the next framework. When really you should have spent that time building product.

    This "learn a new framework" or "learn a new language" trap is especially insidious because it gives you the illusion of progress. Learning and reading books on technical things feels productive but you are actually making 0 progress towards your actual goals.

    If you know fullstack js you have the skills you need to build product. Don't waste time learning more frameworks.

    1. 5

      Agreed!

      Customers are more important than your Tech stack

      A working product is more important than learning XYZ framework.

      Working as both an employee and a consultant, I've seen many projects with questionable technology choices and I've seen others waste months/years fretting over elegant designs.

      As it turns out, I haven't noticed any strong correlations. If anything, making questionable tech decisions seems to be at least weakly correlated with success. Probably because more time was spent on customer success than on quibbling about tech.

  3. 3

    I find it a bit slow to make MVPs with JS

    If it's slow with JS, it's going to be even slower using Ruby. There's tons of frameworks out there for Javascript that can help you with faster development. And a lot of npm packages that you can re-use to avoid building everything from scratch.

    I personally use next.js and vercel for Javascript projects (very fast iteration).

    1. 1

      If it's slow with JS, it's going to be even slower using Ruby.

      I don't think this statement is accurate.
      Yes, Next.js projects (especially hosted on vercel) can be fast or slow.
      It all depends on your implementation and how you optimize your code.

      1. 1

        I'm talking about speed for feature development (same thing as OP). Not app performance.

    2. 1

      This comment was deleted 4 years ago.

  4. 2

    TLDR; If you want to move fast do it in with the tools you're most comfortable with!

    Longer version:

    I would say NO! If you are already proficient In JS or even better Typescript than imho no, don't go the route of learning rails! From the tech perspective you can combine TS with Express + some good MVC patterns and a TypedORM or off the bat with an MVC framework if MVC is what you are looking for and you should be good to go! The type system itself will save you a lot of headaches in the long run that ruby or rails won't! If it's the philosophy of rails you're after you can add it bit by bit to Express (or other) as well and use that time you're saving both from not having to learn a new language/framework and the one the compiler will give you back to do other things.

    Like: marketing, sales, relationships, becoming a leader, public speaking, probably a bit of design and/or branding, finance, etc. This list could literally go on and on and this is the lesson I've been learning for the past year since I started my company: Chessroulette.

    Which btw, is built fully in JS/TS and I gotta tell you there are some perks of having the same language both on the frontend and the backend!

  5. 2

    If you have years of experience in Node.js/React/Vue already, that might be a bad idea, otherwise Laravel/Rails are worth a try! I'd recommend reading https://reviewbunny.app/blog/dont-make-me-think-or-why-i-switched-to-rails-from-javascript-spas

    1. 1

      that's actually the second article that me consider RoR haha!

      I wanted opinions from more people before making a decision

  6. 2

    Yes, I can absolutely recommend it. I'm working with both these days, Rails for my personal projects and JS/TS/Node.js for client work, and I would choose Rails every single time. I like the Rails philosophy and am much more productive in Rails than in any Node.js/TS project I've ever worked on.

    My friend and fellow IH @nikodunk wrote a nice piece about moving from JS to Rails, if you're interested: https://nikodunk.com/a-node-js-developer-discovers-rails/

    1. 2

      Thanks for your answer, it's actually mostly because of that article that I started considering RoR! I'm really wondering how many of the people who categorically say no have actually tried it or have any other arguments than the regurgitated "stick with what you know". I think I'll go against the common wisdom and try RoR :D

      1. 1

        I tried learning multiple programming languages and Ruby just "stuck" with me. The amazing one-liners that allowed you to do what you wanted (vs. Python's 3-4 liners), to the syntax make me really, really love Ruby.

      2. 1

        Haha, that's great to hear! I personally like trying new stuff - it's fun, gives you new perspectives, and actually helps you to understand programming better. So, why not give it a try and see if you like it =)

        And let me know if you have any Rails questions, I have been working with it for almost a decade!

  7. 1

    Why not learn a nodejs framework that is heavily influenced by rails instead? Here are a few:

    https://blitzjs.com

    https://redwoodjs.com/

    https://sailsjs.com/

    I think there's a lot of value in coding everything in one language. Plus you already it very well. From experience, while programming Rails is very pleasant, deployment and the devops related stuff isn't so nice.

  8. 1

    If you already have a decent toolset knowledge to build things fast, then no, not worth it, learning something while trying to make a product and earn money is probably the worst idea ever. You don’t want to be caught into a constant process of choosing the right stack, this is somewhere near procrastination.

    If you want to widen and empower your toolset with Ruby on Rails and have time to learn it, at least a spare month, the yes, totally worth it, you can google anything about it, find an answer from 2014 and it will most certainly fit current version.

    If you already have an experience with Node.js frameworks and Typescript, then I would recommend AdonisJS, it is like Laravel or Rails, they are very similar.

    I used Rails for quite some time and decided to stick with Node.js and Typescript, without latter I would stick with Rails.

  9. 1

    Maybe, just maybe, no experience here, the best way right now is to make fast and dirty prototypes with No-Code tools, the strategy being you get traction first and build to last next.

  10. 1

    Frameworks like RoR and Laravel have you covered if your MVP needs security, database, authorization etc.
    Since everything is baked in and optimized, you can easily get an MVP up and running in as little as 3 days.

  11. 1

    Solo-founder of Testkit here - Yes, it's worth it. You're just extremely fast with it and a lot of things are handled for you - auth, routing, database orm, all of it. Integrating new functionality is extremely easy and quickly done.

    It's worth it. It's a different world from the js ecosystem.

    Of course, it goes without saying that you have to do some marketing and especially - talk to potential customers too.

  12. 1

    So I think using whatever you know to build your product is not good advice because there are many languages/frameworks which aren't very good fit for startups.

    E.g. if you've been an enterprise Java developer, prob not the best idea to use Java for your projects.

    But in your case, since you're already a JS developer, using React + NodeJS I think is a great combo to get you started!

  13. 1

    I'd say just build everything with JS and try to bet on product and self-promotion.

  14. 1

    Yes, it’s definitely worth it if you plan to stay on the dev side. My flat-mate was a full stack JS dev with YEARS of full time experience when he learned rails. It took him about two weeks to get to where he was already more productive with rails than his favorite JS stack. After another couple of months the difference was pretty big.

    There are some rails clones in other languages, but most of those languages (like JS or python) aren’t flexible enough to make DSLs like ruby can.

  15. 1

    As other have said, use what you already know.

    But there’s a case to be made for refining your stack within the JS ecosystem. For example, building MVPs with plain React and NodeJS with minimal libraries will be a lot slower than using a NextJS and Supabase boilerplate.

    1. 1

      so what about nextJS with supabase boilerplate vs react with supabase boilerplate? will react with supabase boilerplate be slover than nextJS with supabase (in term of dev time)

      1. 1

        Hard to answer. Many say Next gives you a better developer experience but create react app with react-router isn’t necessary slower in terms of dev time.

        1. 1

          ok, thank you for the advice :)

  16. 1

    JavaScript is the best for MVP! You have react for both web and mobile. Just double down on JavaScript

  17. 1

    The rule is always use the tools you're familiar with. And I say that as someone who thinks Rails is a terrific framework to build out a bootstrapped business.

    If you want to learn Rails for other reasons, go ahead. But... if anything the first version of your product should be something you knock up quickly in a toolchain you are fast in, or a "services glued together with Zapier" vibe.

  18. 1

    Another vote for sticking with JS / sticking with what you know

  19. 1

    I haven't tried Ruby on Rails. But I also agree with the general sentiment of stick with what you know. It's very likely that your users aren't going to care about the tech stack you use, just if the product is good. So no point spending time in building the same thing with a different tool, but instead improving the product quickly and validating features asap

  20. 1

    Stick with what you know. Write your own or find a boilerplate code with authentication, payments and other default components. Implement your custom code for MVP and release. Rinse and repeat.

  21. 0

    Stick with what you know so you can build something quickly, unless you know there is a specific reason why you think you building in RoR. Its better to write in what you know, especially if your project idea does take off you will know how to fix things a lot quicker, and your users aren't going to care what you built the project in.

  22. 0

    Look into Remix.js and Supabase.

    That stack is dangerous, can ship MVPs so quickly with little maintenance and if you need interactivity React is miles ahead of other frameworks.

    1. 1

      In what exactly is React "miles ahead"?

      1. 0

        Packages, community, frameworks, hype etc

        I might be wrong but I feel like if you need any interactive component React will have a few very decent packages.

        Last time I checked I didn't see that for Vue, that may have changed though.

        Also seems that vue2/3 caused a division for a lot of packages as well.

        1. 1

          Ah I see. So the message was "React ecosystem" is miles ahead :) With that I agree although it is also divided since there is so much to it.

    2. 1

      React is miles ahead of other frameworks

      That’s what struck me about trying other options like Vue or web components. I feel like all the progress is happening in React, just miles ahead

      1. 1

        Vue is great for simple projects and I like the syntax as it is very similar to HTML.

        However I would always default to React for any web app.

Trending on Indie Hackers
I'm a lawyer who launched an AI contract tool on Product Hunt today — here's what building it as a non-technical founder actually felt like User Avatar 142 comments “This contract looked normal - but could cost millions” User Avatar 54 comments A simple way to keep AI automations from making bad decisions User Avatar 46 comments 👉 The most expensive contract mistakes don’t feel risky User Avatar 41 comments The indie maker's dilemma: 2 months in, 700 downloads, and I'm stuck User Avatar 40 comments Never hire an SEO Agency for your Saas Startup User Avatar 32 comments