• Rik LomasRik Lomas, almost 9 years ago

    Sure, fair question. It's about picking good tools for the job. Why should trendiness matter when picking a tool? Javascript and Node are great tools but so is Rails.

    I've taught both Javascript and Rails to students and I've found that Rails is a lot easier to comprehend for beginners. The way Rails is written is visually clearer than Javascript - you need a lot less brackets, braces and semi-colons.

    You can achieve a lot with Rails in a very short amount of time. I used to teach how to make a basic version of Airbnb to beginners in two days - that would include payments, geo-location, user registration and more. Once you understand the principles behind how it works, there's a lot you can achieve.

    5 points
    • Tori ZTori Z, almost 9 years ago

      I gave up learning Javascript because of the brackets. I just totally CAN'T deal with it. Now I wanna try Ruby!

      1 point
    • Matt WilliamsMatt Williams, almost 9 years ago

      You wouldn't happen to have a write up on the Airbnb tutorial online anywhere, would you?

      0 points
    • Luchia BloomfieldLuchia Bloomfield, almost 9 years ago

      Brilliant answer. I learnt Ruby and then Rails first up and it was definitely a lot easier than my failed attempts at learning JS.

      1 point
    • Jeff EscalanteJeff Escalante, almost 9 years ago

      For people trying to decide here, this is the correct answer. As the OP said here, it's trendiness has absolutely nothing to do with whether it's worth using, and this is always the case for every tool. In fact, I'd be cautious of more trendy tools, as they tend to be as such because they attract more beginning developers, and if you are a full time dev, tools that are good for beginner devs are not what you want most of the time.

      If you are just trying to get something off the ground quickly, rails is a great solution. It's been around for a while and has a ton of gems you can use to not write extra code, as you can see in this tutorial. To be good with rails, you do really need to understand it's internals, which is a monumental task though. So if you are investing heavy in rails, know that you will hit certain walls after a while that you won't be able to get past without understanding exactly how it works under the hood, which takes some time and a good foundation in both programming and ruby.

      If you are tying to build a more stable foundation for a larger app, starting off with an API is probably the way to go. Once you have a good API, then build out the front end in backbone/angular/whatever, or even as a native app if you want. You can also build APIs in any language more or less equally well. Sinatra is great for ruby (it's like a mini-rails), express is great for node, and flask is great for python. The flexibility of APIs is their strength.

      0 points