-
In my last job I encountered my first Rails codebase ever (mostly REST APIs but a few server-rendered views as well). After the initial chaotic impression of the codebase (it was a startup after all) with all the Rails magic on top, I really fell in love with the framework after a more experienced Rails dev introduced a few key conventions and helpful libraries to the codebase.
Out of those, I’d at least add the RuboCop [1] linter and the BetterSpecs [2] guidelines to this list. Both helped tremendously in eliminating bikeshedding in the team and freeing up brainpower to solve actual problems. The first one helped me learn intricacies of Ruby bit by bit right in my IDE and the latter guided us to write tests in a style that’s easy to maintain and trust.
[1] https://github.com/rubocop/rubocop
[2] https://www.betterspecs.org/
-
Scout Monitoring
Performance metrics and, now, Logs Management Monitoring with Scout Monitoring. Get early access to Scout Monitoring's NEW Ruby logging feature [beta] by signing up now. Start for free and enable logs to get better insights into your Rails apps.
-
I went all in many years ago and then moved on several years ago (to different parts of the stack that I found more interesting), but here's my 2c FWIW.
The Rails Guides [1] are quite good. The "Getting Started" guide, in particular, was my first intro to Rails, and it's what convinced me to go all in — I built my entire prototype by just following along the guide, seeing what they were doing with their toy app, and then trying to whatever similar thing I needed in my prototype.
Coming from Python, the magic was distasteful to me, too. Rails adds a ton more magic on top — so, eventually, when I set aside Rails and just spent time with Ruby (writing scripts or what not), I realized I loved Ruby the language much more than Rails the framework (and all its baggage).
Stripping Rails down to its API-only mode (though it was a bit rough around the edges last I tried) got me closer to the lovable-Ruby of it all. Sinatra turned out to be a delightful little framework (though sadly I never got a chance to use it much). And, even though I've now moved on from Rails, I still like Ruby as a go-to scripting language — it's delightfully easy to throw together a quick shell script or some data analysis, and it's very friendly to a functional programming style.
I guess what I'm saying is: You're not alone. Many people in the Rails community agree that there's a ton of hidden magic, sometimes too much [2]. But underneath it all is a delightful programming language.
[1]: https://guides.rubyonrails.org/
[2]: The documentation for the Rails routing layer, Journey, is my favorite example of this: https://github.com/rails/journey#label-SYNOPSIS-3A
-
I'm not sure why you are getting downvoted. The fastest Rails entry in the Techempower benchmarks achieves 1.6% the throughput of the fastest option. https://www.techempower.com/benchmarks/#section=data-r21
Related posts
-
Show HN: High-performance Location tracking server built with PHP, Swoole
-
13 Years of Building Infrastructure Control Planes in Ruby
-
Spring-rs is a microservice framework in Rust inspired by Java's spring-boot
-
JavaScript Web Frameworks Benchmark 2024: An In-Depth Analysis
-
Popular Backend Frameworks Performance Benchmark