Sometimes I wish I was programming during the RoR hay days. It just seems like a damn fine framework and it's got a real cult (in a good way) following.
Sometimes I wish I was programming during the RoR hay days. It just seems like a damn fine framework and it's got a real cult (in a good way) following.
It was a whole new world for me. I had done BASIC, HyperCard, and C up to that point, and the whole idea of a web framework opened up my eyes. JavaScript, with prototype.js, was fascinating.
We didn’t even have database migrations yet, you just wrote your schema as a SQL file.
I moved to Sinatra a few years later, because at the time the “rails way” was really slow for a lot of things. I still use Sinatra to this day. Ruby is by far my favorite language, and sometimes I think it might be a time to get back into rails and see how far things have come.
I don't miss it one bit. Yes, you can build things quickly, "rails g scaffold" was quite a tool.
But the level of discipline required to keep a large Rails codebase from turning into spaghetti is not to be underestimated. Plus, because of Ruby's flexibility, a bunch of functionality is sort of "magic pudding" and happens via extension and meta-method sort of things.
This makes things like Ctrl+Click being the source of truth and being able to generate some sort of ERD-diagram in your IDE of everything that touches another thing difficult to implement.
I also don't miss dynamic types in the slightest.
Nowadays, I would rather look at Laravel with Livewire and Alpine.js if you want something Rails-esque. PHP is godawful though.
ctrl+click works great
can write simple Python code and not do anything crazy, works alright. up to around 30k lines I'd probably consider past the "prototype" phase though and would prefer a compiled language.
I have a rant about it: https://bower.sh/on-autoloading
And don't get me started on the footgun that is ActiveRecord callbacks: https://guides.rubyonrails.org/active_record_callbacks.html
Why wouldn't you look at Phoenix LiveView, which inspired Laravel's Livewire, then? Elixir also gives you some other advantages you likely haven't encountered before if you haven't worked with Erlang or Akka.
On the other hand, I'd say Elixir/Phoenix gives you exactly what you want these days and especially with the gradual type system, non-magic database ecto layer etc.
Who cares if you can save 10 minutes coding a page if it takes you an hour to figure out what's happening on with that code.