What I like from Ruby and Rails
Ruby is lean. There’s an interpreter in your system that you pass your code to. Bundler ensures that the directories of your dependencies are loadable and that’s it. No Babel, Webpack, Typescript…. It simply works. That’s what you want at the end of the day, not spending time figuring out issues or how to configure underlying tools.
Going back to Ruby and Rails, what do I like about it?:
- I only need the interpreter and the dependency manager to run a project.
- I can write tests in plain Ruby classes and using the language’s standard library.
- Bundler’s approach to structure dependencies is more sensible and prevents the “delete node_modules” issues.
- There’s less library fatigue. There are fewer options that are better tested, and that makes deciding for a dependency easier.
- Being able to open a Rails console in a remote server with ActiveRecord models loaded is damn amazing.
- Thanks to its dynamism, you can build plugin systems that otherwise wouldn’t be possible with statically compiled languages like Swift.
- Companies like Shopify are using it at scale, and IT WORKS. Some internal tooling to support the scale leverages the dynamism of the language.
This is my preferred stack when building software these days:
- Static websites: GatsbyJS with Typescript
- CLI tools: Swift if it’s for macOS environments, and Ruby otherwise.
- Apps for Apple platforms: Swift (I’m planning to learn SwiftUI at some point).
- Web APIs: Ruby on Rails.
And you? What language/technology do you like the most and why? Let me know on Twitter Twitter.