10
27 Comments

Learning from scratch - rails or laravel?

I have a programming background but am fairly new to web frameworks. If I knew ruby or php I would lean towards their respective frameworks. Since I'm not proficient in either, what would be a better investment in my time? I guess part of my decision would be based on learning something that would also help increase my (ideally remote) employability, should the need arise, but it's not a huge factor.

Sounds like both are good for getting things built quickly once you know them well. So is it really just a coin flip?

Thanks!

  1. 8

    I'm a ruby/rails developer. (self-taught) Here's my advice to you. Try looking at some code of each Ruby and PHP. Decide which one is more readable to you just by looking at it.

    You're going to want to enjoy whatever language you choose for the long term.

    RE: Ruby/rails popularity and worrying about popularity in general.

    It's mostly bullshit advice to make a move based on future potential popularity. Here's the truth, no matter how you slice it. There will be ruby/rails jobs for the next 20+ years no matter what. All other languages included. So take popularity talks with a grain of salt. It's typically people justifying their choices.

    There isn't going to be a day where a languages available jobs literally just evaporate from the job market. If you enjoy what you're writing and reading. Go with that language/framework.

    1. 1

      Potential popularity has some merit - when it comes to API support and pre-built features. If Rails wasn't popular, it wouldn't have native support by big platforms that provide authentication, payments, and databases.

      But in general, yes. The popularity doesn't matter. I'd just make sure the platform you choose is treated as a first-class citizen on the critical integration your app needs.

      1. 1

        i.e. don't learn coldfusion

    2. 1

      Similar to looking at projects/code... I would suggest looking at the jobs you want, and seeing if they fall into a pattern for language/framework.

      I see tons of 'react/rails' jobs, but it might be job boards i'm looking at.

  2. 6

    I've had lots of folks ask me this at meetups. I've settled on:

    If prior_knowledge_of_php then laravel
    else rails

    Rails tends to be far more readable to me. And the community is still great after all these years.

    Highly, highly recommend going through this to learn the basics (it even gives you enough Ruby to be dangerous)... https://www.railstutorial.org/

  3. 2

    I'm a Ruby on Rails developer, and I absolutely love it. But I don't think it's necessarily the right answer. Ruby and Rails have been losing a lot of popularity over time, which could mean difficulty finding work with it in the future or difficulty finding developers for it if you started your own business.

    PHP is definitely more popular. It's easy to run PHP websites on just about any host, it powers a huge percentage of websites because of WordPress, which also means it's a great way to find small jobs remotely. On the other hand, I think there's a general impression that PHP developers are not as skilled or hack things together, maybe because it's such an accessible language or devs are generally building on existing app frameworks.

    If I were going to choose a new language right now, I'd be choosing between Python and JavaScript. Python because it has so many similarities to Rails while being more popular, and JS because you can learn one language and use it in the frontend and backend.

    1. 1

      Yea I was wondering if PHP popularity was heavily inflated due to wordpress. I'll check out JS too.

      1. 1

        You pretty much have to learn some JS, just like HTML and CSS if you're doing webapps. That said, there's no way I'd ever recommend using JS on the backend. I'd go with everyone else's suggestion and start with Ruby. Chris Pine's free book is great as is the free Rails Tutorial book.

        1. 1

          What's wrong with Node.js?

          1. 2

            https://www.youtube.com/watch?v=1e2_NXLxi-E

            tldw; No true concurrency, no great framework, mediocre execution speed, poor debugging experience and most important of all—slow development speed.

  4. 1

    I have some experience with both. Both are amazing and I think you will have a great time learning it.

    Ruby have an unbeatable readability.
    Laravel have a great ecosystem, and Jeffrey Way is the best teacher ever.

    1. 1

      I totally agree. I prefer the Ruby language but Jeffrey Way single-handedly makes Laravel much more appealing than it would be on its own.

  5. 1

    Yes most likely a coin flip. I am Rails dev and so I will recommend Rails as someone who did PHP before Ruby. But I never did Laravel and on paper it looks like a solid choice. Good luck!

  6. 1

    rails is a very matured web framework to build web applications. Laravel is also a very matured web framework to build web applications. Both have great documentation and communities. So it really comes down to personal opinions. My opinion is Laravel because of PHP's overall popularity over Ruby. Due to WordPress, the PHP community is huge and don't listen to PHP haters who say that it is dying.

    If you learn Laravel, you also have to learn PHP. That will open up tons of Remote opportunities in Laravel and perhaps in other PHP frameworks and of course WordPress (if you are interested).

    So essentially a coin flip but personally I recommend Laravel.

    1. 1

      Thanks. I think that's where I'll start, and try others after learning the basics.

      I wouldn't be against learning some wordpress for remote work, but it seems like people struggle to compete with the $3/hr bids on places like upwork. Maybe I'm looking in the wrong place though.

      1. 2

        PHP is probably the lowest paid server-side language for a junior to mid-level dev.

        Laravel is a great framework, probably as close to Rails as is possible given the language difference. If you're starting your own business and want to hire cheaper devs, I'd definitely pick Laravel.

      2. 1

        Yes for WordPress, don't compete on sites like Upwork. Build your own brand by writing about what you know and you will get good projects. There are sites like codeable that can also be useful but I am a big proponent of building your own brand which requires effort and time.

  7. 1

    Laravel is a good framework, doesn't take too long to get up to speed.

    I would also suggest at least looking at Python. You can use Python for everything from cli to web. There are a few frameworks there as well - Flask, Pyramid, Django... there are plenty more. If you do choose Python, do yourself a favor and go with at least version 3.6 as Python 2 is EOL in 2020.

    I am not as familiar with Ruby though I do know that it is also one of those languages that can be used for more than just web work as well.

  8. 1

    I have previously been working in C# (last 7 years) but recently have started using Laravel and found it fairly quick and easy to get working with and having some great features for what I have needed.

    The things I would look for is:
    How easy is the framework and core language?
    How good is the documentation?
    Does it have the things I am looking for out of the box? If not is this something I need to build from scratch or are existing solutions available?

    For employability I would also look at the job market for both jobs seeing all the pro's and con's that they have as well as seeing which one has more jobs that actually look like they interest me.

    The frameworks too choose should come after some basic knowledge so that you understand why things are behaving as they are and how to debug these when things go "off the rails" 😉 (Sorry had to say it) .

    1. 2

      Sounds like I should just pick one and learn the basics, then branch out as needed.

      1. 1

        Give FreeCodeCamp a shot. Emphasizes JS/node and has a great community.

  9. 0

    Node.js, JavaScript is the world most popular language and will probably become kind of universal programming language in the next 5 to 10 years. You won't regret ;)

  10. 0

    Personally, I think Laravel has the better community which makes it easier to learn. That being said, learn django.

    1. 1

      How do you define "has the better community"?

      1. 1

        Laracasts is incredible. As far as I know, RoR doesn't have any definitive resource that holds a candle to it.

        1. 1

          Do you actually notice that Laravel is basically a Rails clone and the idea behind Laracasts a Railscasts clone? There is also GoRails nowadays and unlimited resources to learn and talk about Rails.

  11. 1

    This comment was deleted 8 years ago

  12. 1

    This comment was deleted 7 years ago