Rails vs JavaScript: Which one should you use for your SaaS?

Sdílet
Vložit
  • čas přidán 18. 05. 2024
  • Ahh, one of the evergreen debates ...Rails vs JavaScript. Which one should you use?
    Both can do the job well and ultimately you should choose the right tool for the right job, but in this video I'll show you which one I prefer to use, and why. Please note, sometimes I do use Rails and sometimes I do use JavaScript and both work quite well ... this opinion is based off of pure real world experience having built production apps with both.
    Intro: 00:00
    JavaScript: 00:46
    Ruby on Rails: 04:33
    Productivity Showdown - JavaScript vs Rails: 08:59
    Conclusion: 12:05
    #rubyonrails #nodejs #javascript

Komentáře • 133

  • @aeroplane769
    @aeroplane769 Před 2 lety +117

    Ruby on Rails is a way more developer-friendly framework than others.

    • @phanta5m
      @phanta5m Před 2 lety +3

      they "force" use to do best practice, which is good btw

    • @buildingcoolstuff6639
      @buildingcoolstuff6639 Před 2 lety +2

      I will like to know your opinion on RoR vs Meteor Js.

    • @ric7044
      @ric7044 Před rokem +5

      Rails is good only for light crud apps. Start adding algorithms, complexity, connections to multiple databases, queues, other data source types or anything that rails generate can't help you with.... Then you painted yourself in a corner. Still, plenty of crud apps needed out there. If that satisfies you as a programmer.... Then I guess rails is for you

    • @laughingvampire7555
      @laughingvampire7555 Před rokem +6

      I've been coding in rails since 2010 and I disagree.
      Rails is opinionated and omakase and if your project is in line with those decisions and opinions then you are in a very developer-friendly environment. however if you need to get outside of the standard rails pattern then all hell break loose.
      Like right now, how friendly is Rails that all the projects written with webpacker now have to undo all that mess or stay trapped in the version that supports webpacker and carry that technical debt for months and even years.
      Rails is very niche framework.
      Only the people who haven't actually used Rails in real life keep saying this nonsense of "developer-friendly"

    • @killerdroid99
      @killerdroid99 Před rokem

      I find sinatra to be better if you have a pre-planned workflow ofc

  • @berlinerfamily
    @berlinerfamily Před rokem +22

    Great to see this. So many CZcamsrs out there just compare popularity of frameworks according to some search statistics and other indices. Videos as this one are rare, but gold. Because they focus on what REALLY matters. If you are a newbie to coding and got interested in learning Ruby and Rails you can do so at Exercism, where you can learn and practice it for free! We need fresh blood in the Ruby scene, since most youngsters just chase the buzz and jump on Node because it is "faster" although, as described well in this video, it is neither necessary for most, nor impossible to have speed with Rails. Also, if speed REALLY is an issue for you, after having mastered Ruby & Rails you can easily also learn Crystal and Amber or Lucky. Crystal is an compiled language with almost the speed of C but with the beauty of Ruby as it has almost 100% the same syntax. Amber and Lucky are web frameworks, cloning Rails. So you can learn that stack within an extremely short and easy learning curve once you have mastered Ruby & Rails and then use both, depending on the project.

  • @tamasbalint1597
    @tamasbalint1597 Před 2 lety +5

    Thank you Donn. It was very interesting to watch this video as a front-end dev with 6 years of experience mainly working with React, Node, AWS. I felt like I am blinded by these all new shiny technologies. I enjoyed your perspective.
    You might have done it already. However, an example video of Ruby vs Node SaaS app would be awesome. Thank you once again.

  • @thierrydebelder2947
    @thierrydebelder2947 Před 2 lety +15

    Thanks for this vid, I was on the fence on what to learn JS or RoR, I'll go with RoR

  • @je9625
    @je9625 Před 2 lety +4

    Thanks for this. You just solved a problem I was grappling with.

  • @johndoyle9917
    @johndoyle9917 Před rokem +2

    This is an excellent video. I appreciate your perspective and real-world selection criteria. Your point about - beware of devolving into two apps for UI vs API - really struck a chord.

  • @jpryding
    @jpryding Před rokem +11

    Thanks for this. I've just finished the Odin Project Fundamentals and have the choice to do Ruby/Rails or Node, will choose the Rails track after watching this. I figure I will need to learn Node anyway so might as well have Rails as an extra tool in my back pocket. You got a new sub!

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +2

      Awesome! Glad to know it helped you!

    • @RafiHasan-pi4xz
      @RafiHasan-pi4xz Před 6 měsíci

      I'm currently on The Odin Project and have the same reason to be here. How are you doing now? :D

    • @clayjeansen5502
      @clayjeansen5502 Před 2 měsíci

      I'm doing the Odin project too and I'm gonna go with the ROR!​@@RafiHasan-pi4xz

  • @jayswartzfeger7204
    @jayswartzfeger7204 Před 6 měsíci

    Great stuff, Donn... subscribed!

  • @JamalShaheen
    @JamalShaheen Před 2 lety +19

    Great video, with RoR not only I enjoy developing apps but I also built a connection with the framework through DHH, emotionally hard to move on, like a wife.

  • @ajtheengineer4121
    @ajtheengineer4121 Před rokem +14

    The choice between JavaScript and Ruby on Rails doesn't have to be exclusive. Because ruby on rails has a really nice test framework for writing end to end tests, especially for small projects or projects starting out, I'm also a huge fan of the mono-repository set up. Specifically, I found that ruby on rails + vue or ruby on rails + react really easy to work with, and being able to write end to end tests allow me to be very confident that a feature works from a user's perspective.

  • @mayurdugar03
    @mayurdugar03 Před rokem +1

    Quite informative. Thanks!

  • @SkaPhilosopher
    @SkaPhilosopher Před rokem

    Thanks for the informative video!

  • @ernepazzo1212
    @ernepazzo1212 Před rokem

    Gracias por tu opinión, es el camino que escogí también luego de años como desarrollador. Saludos

  • @theroboticscodedepot7736

    Great video! I can definitely appreciate the ROR approach. I have built my own proprietary framework but use many of the same principles built into ROR.
    1. Downside to my approach is it took a very long time to build and debug my framework.
    2. The upside is I have complete control to make changes.
    If I had to do it over again I might go the ROR road but building your own framework was a great learning experience.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +1

      Good point! I'm glad you posted so others can learn from you as well. Thank you for that insight!

  • @josbexerra8115
    @josbexerra8115 Před 10 měsíci

    Gracias mister Felker por las recomendaciones...., ya me decide voy a mover mi pequeña aplicación a rails

  • @2MSTennis
    @2MSTennis Před rokem

    Thanks Don for the video! I’m convinced!! I’m off to start on RoR!

  • @phonk64
    @phonk64 Před rokem +6

    Amen. I've been an RoR dev/CTO since 2007. I haven't bothered with other frameworks because I am far less effective and efficient without Rails.

  • @wfbraga2099
    @wfbraga2099 Před rokem +1

    It took me a while to get the "convention over configuration" but when I got I was flying!

  • @MrCostas32
    @MrCostas32 Před rokem +1

    i totally agree!!! great video

  • @anthonypetruzzi158
    @anthonypetruzzi158 Před rokem +8

    This is even more pertinent now that they have hot wire baked into the framework. Just having that power at your fingertips is a total game changer for developing live applications. If you haven't taking rails 7 for spin and used hot wire, I would strongly suggest installing it and just following through the rails seven demo that dhh did. It will completely blow your mind.

  • @eliaslamesgen8703
    @eliaslamesgen8703 Před rokem +2

    Thank you man.

  • @stvlley
    @stvlley Před rokem +1

    the rails to react/ api to client model is what Flatiron School teaches ❤️

  • @SIX-ji7rv
    @SIX-ji7rv Před 10 měsíci

    Will be waiting for Ruby on Rails course from you...🥺🥺🥺

  • @tylercornett2022
    @tylercornett2022 Před 10 měsíci +1

    Blazor is a remarkably productive stack as well. C# and LINQ are very nice to work in. I love Ruby, but if you are building out an API specifically, I love the strict typing of C#. Coming from Ruby and Python, the syntax is different and inheritance works a little differently, but even though C# is more verbose, the code ends up being almost boring it's so easy to read...

    • @donnfelkeryt
      @donnfelkeryt  Před 10 měsíci

      I'm a big fan of C#, and its probably one of my favorite languages. If you're in the .NET realm, this is definitely something worth evaluating.

  • @victorhugopaes6932
    @victorhugopaes6932 Před rokem +1

    Thanks for the video!
    I would like to know your opinion for someone who intends to start studying programming in 2023 and wants to enter the job market knowing Ruby on rails.
    Important detail will be my first programming language!

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +1

      There is demand for every modern programming language. Some more than others but there’s demand everywhere. I’d say choose what you enjoy encause you’ll be doing it a long time. If that’s Ruby, cool. If that’s python, cool. If that’s Kotlin or swift or JavaScript or Go or Rust. All valid options. Doing what you enjoy is more important than “the most popular”, in my opinion.

  • @fwuensche
    @fwuensche Před rokem +4

    Thanks for the video, and fully agreed on the trade-offs and final decision for ruby on rails. However, I'd be interested to know how you deal with frontend intensive applications. Do you usually go with React for your RoR frontend? Or do you try to stick as most as possible with Rails built-in tools such as stimulus and hotwire? Thanks again 🙏

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +2

      I integrate lately with Hotwire and Stimulus. Both give you the speed and responsiveness of a client app but with the Ruby on Rails infrastructure

    • @talhamahmood9185
      @talhamahmood9185 Před rokem +2

      Agreed.Using the complete ROR stack is the way to go in most cases.However,if you suspect your application is going to have a lot of pages with complex FE logic(like the scale of FB ,Twitter), React would be my choice because you can just organize your code better and apply patterns to the FE code.
      Overall,when starting a new SAAS application I would choose Hotwire + Stimulus any day.

    • @stevenhe3462
      @stevenhe3462 Před rokem

      @@talhamahmood9185 Could you raise some concrete evidences why React is better for organizing code and apply patterns to the FE code in the said case? Just curious because I have only recently get to React and Hotwire.

    • @Dr_PhilK
      @Dr_PhilK Před 9 měsíci

      Hi,I just stumbled on this video, you inspired me a lot,please can you recommend any full stack RoR and ruby bootcamp courses ?

    • @fwuensche
      @fwuensche Před 9 měsíci

      @@Dr_PhilK Le Wagon is a high quality but also quite expensive bootcamp. I previously worked with them and had several colleagues coming from their bootcamp so I do recommend. If you're motivated, there are other ways tho, that could be less expensive, and more effective. Like, hiring a 1:1 tutor for 1 hour a day 5 days a week for 12 weeks (~$3600) is about half the price of Le Wagon (~$7500 for the same 12 weeks). But you need self-discipline.

  • @shivar547
    @shivar547 Před 7 měsíci +2

    Yes I like Ruby on rails than other js framework s

  • @md.jubairahmed6580
    @md.jubairahmed6580 Před rokem

    How come I never heard of this channel!

  • @aqwan01
    @aqwan01 Před 9 měsíci

    Ruby is the under appreciated magic of Rails, the worlds most beautiful language to work with.

  • @Hema-desu
    @Hema-desu Před rokem

    I'm confused learning golang or ruby ? I'm from software engineer using JavaScript and java springboot

  • @sheikhmohideen6951
    @sheikhmohideen6951 Před 2 lety

    I have a doubt in intellij kotlin that which shortcut keys to get the numbers.kt file

  • @junyorff12
    @junyorff12 Před 2 lety +6

    I love Js, but Js have not a Tool to make an entire App like Rails or Django etc. has no pattern.
    Tks for the video.

    • @asdiasx
      @asdiasx Před rokem

      How about Nestjs and Adonisjs?

  • @colinrosati9403
    @colinrosati9403 Před 2 měsíci

    I’d like to see a comparison of fullstack JS vs RoR bundle sizes, runtime speed.
    SSR scale.
    The argument about framework convention and speed of dev is superficial 2024.
    Why don’t he use next.js for a fullstack instead node + react 😅

  • @DevlogBill
    @DevlogBill Před rokem +5

    Don, what type of Database is used for Ruby on Rails? is it SQL? Do you need to learn SQL for the Rails?? MySQL? Fairly new to programming, thanks man.

    • @mateoleoncamacho3222
      @mateoleoncamacho3222 Před rokem +2

      Default is SQLite, you can connect anything else tho

    • @DevlogBill
      @DevlogBill Před rokem +1

      @@mateoleoncamacho3222 Thank you Mateo for the feedback.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +3

      In the development env its SQLite.
      Production can be MySQL or PostgreSQL or any number of options.
      I prefer to use PostgreSQL for both development and production.

    • @hoanghainam7272
      @hoanghainam7272 Před rokem +1

      Rails community prefer postgres SQL. But you can use mySQL. It up to you.

    • @DevlogBill
      @DevlogBill Před rokem

      @@donnfelkeryt Hi Donn, I stood with JavaScript for a total of 1 year and got really good with the fundamentals and even did some React. But this year I enrolled in the Meta Backend Course, and they teach it in Python and D'Jango. By any chance would you happen to have any experience with this technology and how it compares to node.js? I am assuming it is faster than node.js as well? Thanks!

  • @FabrizioAzzarri
    @FabrizioAzzarri Před rokem +2

    Absolutely Rails!

  • @bhairavkedare9074
    @bhairavkedare9074 Před rokem +1

    Then what to use on the front end. If you don't have to use JavaScript, can the front end code run only with HTML and CSS?

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +3

      You can use JS. With rails you can use Stimulus js, Hotwire or even a vast array of other stuff. With rails and Hotwire (which is powered by JS under the hood) you can be very productive.

  • @laughingvampire7555
    @laughingvampire7555 Před rokem +7

    I have written apps in Rails since 2010 and I'm working right now to escape Rails, Is a very niche and opinionated framework, and I used it just to escape Java world because Java has also its opinions that I disagree with.
    Rails is awesome when your problem is a CRUD problem and that fits most businesses for the first 2 months, the thing is that most businesses evolve into something entirely different and the Rails architecture becomes a straitjacket, if the app you are doing mostly keeps it's core within the CRUD model then the friction will be minimal but it grows and grows and grows.
    I also think that the part that makes Ruby on Rails attractive, which is Ruby it becomes also the part that makes it problematic, Ruby lacks a proper type system and thus makes any change heavily dependent on test coverage so it is problem in its own right.
    It is very difficult to get on ruby on rails from windows, pretty much the fastest way to do so is to get WSL2, then linuxbrew and then follow the setup as if you were on a mac.
    Which brings in the other issue Ruby on Rails chains you into macos, I like macos visually and there are great things about it but you also have to deal with the omakase mentality and "brilliance" of the Apple team and accept whatever imposition they think is great, then find workarounds.

    • @desmoulins6095
      @desmoulins6095 Před rokem +1

      what language framework do you want to replace Rails with ?

  • @Maverral
    @Maverral Před 2 lety +9

    You put "maturity" of Rails to cons, "because it's not new"... what? It should be in pros, because if you have a problem, there is already solution to this on the internet. It means also it had been tested by thousands of programmers and users over the years and it just works! We can say the same about JS - it's not "new"... so what?

    • @poochymama2878
      @poochymama2878 Před 2 lety +1

      It can be somewhat of a negative in terms of job opportunities. Not as many people using it anymore.

    • @OilersFlash
      @OilersFlash Před 2 lety

      @@poochymama2878 but in this case it's not. Lots and lots of jobs with Rails. Demand can't be met currently in my opinion

  • @misteryleft
    @misteryleft Před 2 lety +2

    What is your recommended resource to learn RoR?

  • @FrancescoMari1
    @FrancescoMari1 Před rokem +1

    The reasons to use Rails in 2023 are exactly the same as in past years: if you need a framework to quickly go to the market, test and iterate your business ideas with a fast feedback loop, Rails is still unbeatable. If you need something crazy fast you have plenty of alternatives, but using languages and frameworks that can't give you the productivity level of Ruby and Rails.

  • @ismail-talb
    @ismail-talb Před 3 měsíci +1

    i'm just switching to Ruby after about 2 yeas of using JS ,now my eyes hurts when I see any js or ts code .Javascript maybe the only language that learning a framework takes 10 times longer than learning the language itself

  • @stevenhe3462
    @stevenhe3462 Před rokem +1

    The biggest con for Rails is actually backwards incompatibility.

  • @Jankee187
    @Jankee187 Před 5 měsíci +1

    Next js is the solution for future :)

  • @muzzi1984
    @muzzi1984 Před rokem +1

    Go with Rails!

  • @DexterrrrX
    @DexterrrrX Před 11 měsíci +1

    wait so let me get this straight... ruby on rails can be used for both your frontend and backend in one codebase then?

    • @donnfelkeryt
      @donnfelkeryt  Před 11 měsíci +1

      Indeed it can. Yes, there are some instances where you might need to write some js via stimulus controllers, but yes, you can utilize Hotwire and get the speed benefits of a single page app

  • @engine_man
    @engine_man Před 8 dny

    Why not both?

  • @killerdroid99
    @killerdroid99 Před rokem

    Well we have redwoodJS which can also scaffold an app just like ruby and the dx is gr8, its cli is heavily inspired by ruby

  • @r1gocastro
    @r1gocastro Před rokem +1

    Thanks!

  • @asmithdev2162
    @asmithdev2162 Před 12 dny

    Why not both

  • @computerprogramming7821

    Definitely Ruby on Rails.

  • @powerinemesitsunday236
    @powerinemesitsunday236 Před rokem +2

    I think this is a slightly wrong comparison. Comparing a framework with a language isn't exactly ideal.
    You should be doing a Rails vs Express comparison or better still, a Rails vs NestJS comparison as those [Express and NestJS] are frameworks like Rails.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +1

      Fair point. Express is still a shell of what Rails is. It should be Express and NextJS. Still hold firm on my advice though - you'll be far more productive with Rails espeically with things like turbo android and turbo ios with Hotwire. You can build mobile apps, native when you need it. Thanks for the comment!

    • @powerinemesitsunday236
      @powerinemesitsunday236 Před rokem

      @@donnfelkeryt Express and NestJS*, you meant?

  • @repotranstech9614
    @repotranstech9614 Před 2 lety +1

    I prefer Django, especially now that I can add interactivity with htmx.

  • @mukinha
    @mukinha Před 2 lety +2

    Agreed

  • @samvelavanesov6838
    @samvelavanesov6838 Před rokem

    Great video, short and sweet. But, I'm just going to have to disagree on the notion of having both backend and frontend arch so codependent, coming from JS world and with a heavy bias of course.
    I can't even imagine having to develop having such constrains, forget the mobile side of it, because fundamentally, frontend, should be functional without having to be integrated at all with a proper mockups etc...
    From my perspective the backend and frontend shall never be related, if only by sheer coincidence.

  • @ric7044
    @ric7044 Před rokem +2

    Rails is good only for light crud applications (not small necessarily, but light in any features beyond that), as far as I'm concerned. If that satisfies you as a programmer, then I guess rails is for you. If you're serious about coding and not simply making a buck from writing superficial apps, you will get bored with rails quickly, and feel stuck in a walled garden of convention. Again, if that's enough for you, then enjoy rails' bliss

  • @Cyber_Lanka
    @Cyber_Lanka Před 2 měsíci

    Correction: everything in JavaScript is an Object. In fact, purists say it's a true OOP language.

  • @aram8639
    @aram8639 Před 5 měsíci

    Node.js is not a framework; it's a runtime for JavaScript. You cannot say that Node.js cannot do what Rails does because, in my opinion, Nest.js can do everything that Rails can. Please avoid comparing things when you only have knowledge in one of them. As the owner of a company, do you prefer developers who can easily switch between backend and frontend when either a backend or frontend developer gets sick? 🙂

  • @antonuis2547
    @antonuis2547 Před 2 měsíci

    the thing I hate with javascript is that change ALL THE FUCKING time the last formation i've made ( not in javascript chance for my self ) the people who made the guide never upgrade to the new syntax of js
    ruby is good for new coder for that.
    And js is not good for backend...

  • @juandalisay
    @juandalisay Před rokem

    I would suggest Phoenix Elixir over Rails or Node
    Rails can get your app running fast, but either your users will stop using it after they see how slow it is, or your server will crash from the lack of RAM

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +2

      While Elixir is a great tool, I disagree with the sentiment of your comment. Why. You can tune a Rails app so that it can scale. There are many very large rails apps that are successful. Some include: GitHub, Shopify, Basecamp, Etsy, AirBnb, Instacart, Hulu and the list goes on and on and on ...

  • @fooked1
    @fooked1 Před rokem +1

    If you have an idea that's worth coding, you might as well code it properly. Which means, separate your concerns.

  • @armanmirk
    @armanmirk Před rokem

    You are very loose with what you’re describing. Comparing JavaScript to Rails isn’t really comparing apples to
    Oranges. JavaScript is a language and Rails is a framework. Did you think about what JavaScript frameworks to compare with Rails? This video isn’t a cogent argument.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem

      There is sails and next.js. Still, none touch Rails in regards to productivity in my opinion.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem

      There are others too, but my opinion still stands that Rails is nearly impossible to beat for productivity.

    • @armanmirk
      @armanmirk Před rokem +2

      I don’t really disagree and I’m a 10+ years Rails developer.
      I think in the video you speak as though you are comparing Node to Ruby but in fact you compared Node to Rails without really clarifying the difference which could be confusing to a new comer.
      If you think Rails is productive then you should check out Elixir Phoenix. Elixir community is still smaller than Ruby but Phoenix is better than Rails in almost every way thanks to Elixir.

    • @donnfelkeryt
      @donnfelkeryt  Před rokem +1

      @@armanmirk I could have made that distinction more clear, I agree ... no doubt. :)

  • @adventurer2395
    @adventurer2395 Před 5 měsíci +2

    dude compares a programming language to a framework. SMH

  • @oguching
    @oguching Před rokem

    I stopped at JavaScript is not an Object Oriented Language.

  • @amazingtamilmystery1196
    @amazingtamilmystery1196 Před 2 lety +2

    Javascript developers paid more . So I prefer JS and has many lib than ruby

    • @aeroplane769
      @aeroplane769 Před 2 lety +8

      I challenge you, the time you take to create the CRUD operations using JS, I'll do it in half of that time in Rails(or maybe in just 2 secs.).

    • @amazingtamilmystery1196
      @amazingtamilmystery1196 Před 2 lety

      @@aeroplane769 npm has more lib 😂😂😂

    • @amazingtamilmystery1196
      @amazingtamilmystery1196 Před 2 lety

      @@aeroplane769 JS is trending in the market . Ruby is good option but it don't have customisation compared node js and php , even compare django with rails . A lot of customisation in node,php compared to Ruby .

    • @knsense
      @knsense Před 2 lety +13

      Actually Javascript developers are among the least paid devs out there

    • @amazingtamilmystery1196
      @amazingtamilmystery1196 Před 2 lety

      @@knsense WTH

  • @jarcdday
    @jarcdday Před 6 měsíci

    you just only talk about pure node js, what about node js with Nest js?? you should put framework with framework, Node alone of course is confusing.... Nest js gives that guidence you need to not feel lose... and yes, your speed of development with Node and Nest is also insane....

  • @greglocker2124
    @greglocker2124 Před 10 měsíci

    So, in other words, would you rather agonize or be in agony?
    God I feel bad for all the noobs who will take the bait and use either of these worthless techs. I wish I could have the four worst years of my entire life back when I listened to idiots who made me scared of any semblance of safety in a programming language and cut years off my life due to stress and literal suicidal ideation. I am not joking, noobs. Dynamically typed languages can make you hate your life so much that the only solution you want is the end.
    Everyone is entitled to an opinion, but people peddling this garbage deserve to have their back broken. Seriously.
    The answer to the question in this video is, "I'd literally rather kill myself than use either for more than 20 lines."