I'm fatigued. I want to invest myself into a "boring" tech that's got at least another 3-5 years of a decent amount of usage in the industry... enough time for me to master it slowly and still get a pay-off.
What do I opt into - does Ruby on Rails sounds like a good idea?
@celia I use RoR at my day job and I enjoy it. It has some "quirks" like everything does but the tooling around it is pretty solid and stable. The ecosystem can be kind of intimidating but it's worth the learning curve. I have a few complaints but not enough to deter me away from +1-ing it's use.
@celia Stick to what you know already. Learning a new language that supposedly "lasts you longer" means you still have to learn it from scratch, which results in a lot of work.
Is there a Rails but for JS? Not just the principles/philosophy, but also the full stack all-in-one, with conventions.
Making an Express API is...*not* fun or fast. Same goes for frontend. React is too fast. It pays well, but I don't have the energy to constantly keep up. Which is what any employer I've had a chat with expects.
@garritfra They've hit v1!!! Sweet. I'll explore this too. I think I read a post about it on HN a whileeee back, and people were just generally upset about a few key points, and I think the ORM was one of them?
@celia but keep in mind: this is *yet another framework*! ;) It's great having an all-in-one solution, and it's probably worth a serious shot, but in the end it is not "boring". Keep me/us posted!
@garritfra I always rooted for Sails.js, but I'm just not sure about industry adoption. I see tonnes of Python/Rails related jobs if you start comparing it with Sails.js (I can't recall ever seeing *one*). Plus it still seems like it's only doing half the job, the backend side (which is not bad in itself, just a minus point while I'm debating options).
I might enjoy it, yes, but I also need some semblance of market adoption and a community too.
@garritfra That is true... it's another one. But I'd rather "find" some roots than keep fluttering (no pun intended) around not knowing a few tools I can market myself for.
@celia definitely RoR or Python/Django are still strong today, more or less depending on what you do, of course.
@celia Ruby on Rails doesn't scale well and is comparatively resource hungry, so it's slowly being displaced by other alternatives.
That said, Ruby is an excellent language, and there'll be a lot of Rails work, keeping existing systems up and running. It wouldn't be a terrible choice.
@urusan I see a lot of this "doesn't scale well" talk - but what are we really talking about? FAANG-level performance is not my goal. If it serves a small to mid sized business perfectly well, it's good enough for me. I'd argue even large sized ones which sit below the FAANG layer. :)
@celia Rails is generally fine for small to medium sized business needs.
However, a lot of the development that goes into improving a system for business needs is performed by these companies with huge scaling needs.
So, if it doesn't fit their needs, it won't get nearly as much development work.
If you're looking for boring and stable, the ideal is something large and growing. Ruby on Rails doesn't fit either of those criteria anymore.
However, much like Java, it pays the bills and isn't going anywhere.
@celia One more thing to consider is that if you're looking at getting jobs maintaining pre-existing Rails apps, you're in for a wild ride.
Ruby is so incredibly flexible that you can use it to create totally new languages. For instance, the default template language for Rails is just Ruby. Rails too is a distinct dialect of Ruby, adapted to its purpose
This is nice for system designers, but it leads to maintainers having to learn a bunch of sub-languages, and you might find an ad-hoc language
@celia I have been struggeling with the same question for a project of my own, I want to choose a boring, long-term solution that grows in a steady fashion. I have been considering Django, but have become more partial to Laravel. It's very flexible, but also built on the very boring foundation of PHP 😄
@rsolva Hey, PHP is pretty nice too. v7 looks very neat! :)
And it has a fair bit of pull in the industry too. Bonus points you can basically do WordPress more easily and that's a massive market.
@celia I do not have enough experience to recommend it, but it is the framework that is on the top of my list to use for my relatively small project.
Otherwise, it moves fast, but in a stable way (see the release cycle: https://laravel.com/docs/8.x/releases#support-policy) and upgrade guides are there to help.
4 years ago I almost couldn’t find any job offer with Laravel.
Today on LinkedIn, scoped to the European Union:
- Laravel: 5438 offers
- Django: 3287
- Ruby on Rails: 3749 offers
- Express.js: 1502 offers
- Symfony: 7532 offers
And it can only grow.
If your ultimate goal is to have some security in India in your career, then you have to dig a bit the market to narrow your pick.
If your goal is happiness as a developer and increase your chances of finding a job worldwide, I’d say go for either Laravel (happiness++) either something in Python.
My personal “next pick” as a new tech will probably be Rust.
@celia I’ve been doing Ruby (not so much Rails) for the past 8 years without any major changes. There are always new things to learn like with every other technology but the core concepts are still the same. During all these time I’ve also been recruiting and I never manage to find enough good candidates so I’d say it’s also a good choice for having a stable job
@celia first contact i had with programming was pascal and then delphi for windows forms apps. I never completly dave up on that. I mostly using PHP for now but started peeking after .NET platform (.NET Core, not it is .NET v5). What tend to me is: multiplatform and single file app. You can build linux app right on Visual studio on windows and vice versa. Its really cool to update application buy copying just one file (like to update gitea)
Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.