DEV Community

Cover image for On Ruby on Rails: My love–hate relationship with a mature framework.
Nards Paragas
Nards Paragas

Posted on

On Ruby on Rails: My love–hate relationship with a mature framework.

One's personal opinions and encounters as an "immigrant" in a foreign domain.

Rails is not as prominent as it was in its glory days. Especially here in the Philippines, after doing a quick research out of curiosity and browsing through PHRUG's Facebook Group (Philippines - Ruby Users Group), it seems like everybody's sunsetting Ruby as their first choice for web development or just uses it for happy path apps and MVPs then leaves it off for something more "scalable".

And, as someone who came in late to the party (2019), I felt so alienated and it was a scary thing to feel when you're in the fast moving world of tech. While there's a lot of fresh hotness coming out almost everyday, I'm now stuck learning an old not-talk-of-the-town programming language which could define my career in the coming years.

When I first touched Rails, I wasn't amazed or even surprised because out of all of the things it offers, Laravel has already shown me or did better. That said, I couldn't shake the constant resistance I'm having while writing code in this framework. I was even annoyed by the idea of autoloading since I was used to importing classes and packages explicitly. Maybe it was also one of the main reasons why I had a hard time transitioning from PHP to Ruby, I just can't stop comparing the two. Rubyists might call me out for this but if you came from PHP and Laravel like me, you won't be able to deny that Taylor Otwell and his community of contributors move fast. They release new and amazing features or even products related to Laravel almost every quarter per year. Although there's this stigma against PHP that people can't seem to forget, their team's persistence is paying off.

BUT, I never felt like I'm composing a song with any other language than Ruby. It lives up to its label, it really is elegant. It has all the right recipes to please a developer. I've written in one of the most hated languages (PHP) and I learned that it's not that bad and now I met Ruby which is just outright beautiful to the eyes at first take. Yes, it does have some quirks but we all know by now that not everything, even in tech, is perfect. It's just that, to me, Ruby is the closest thing to perfection for developer experience. Then you wrap it around an easy to grasp structure that is Rails and voilà! — Now you have a solid and reliable tool at your disposal.

And so, I dug deeper, looked for resources similar to phptherightway or videos like Christoph Rumpel's Laravel Core Adventures which helped me understand how a backend web framework works under the hood. Of course I'm aware that I'm going to have some sort of a hard time looking for resources for something old and mature but I insisted because I thought that if I'm going to learn Rails then I don't want to wing it but do it lovingly.

At first, I found books and video tutorials but they're badly outdated so I continued my search. Then, I learned about none other than the creator of Rails himself, DHH. Which resulted to me falling into a rabbit hole of Basecamp wonderland. One short read lead to another, next thing I know I found myself watching DHH's On Writing Software Well which inspired me to look for more fun stuff. Another series of Google searches happened and suddenly I found myself having fun watching Sandi Metz talk, checking out 99 bottles, visiting refactoring.guru, getting to know about the gang of four and restarting my Ruby journey with poignant.guide.

I'm still finding new stuff but I'm focusing on them one at a time. Now, this made me realize that I might've just fallen in love really. Maybe people left Rails because of its magic and simplicity but few might've remained because it's just comfortable to work with. With all that, here I am, starting again; doing a Ruby refresher and building small web apps using Rails. Treading unknown waters but with enough courage to do so.

Top comments (2)

Collapse
 
0x7466 profile image
Tobias

Please, please check out meta programming! pragprog.com/titles/ppmetr2/metapr...

After reading this book I was annoyed with most other programing languages because it's so elegant. Also it takes out the magic of Rails into understandable concepts.

Collapse
 
nards_paragas profile image
Nards Paragas

Hi Tobias! Thanks for the recommendation. I'll be sure to keep this in my list!