3 ms·
I see nothing at all wrong with Rails - I find it to be a perfectly valid choice in 2019, if that's what you want to use. That said, I'm not a huge fan of Ruby
by LyndsySimon 8y ago
I see nothing at all wrong with Rails - I find it to be a perfectly valid choice in 2019, if that's what you want to use.
That said, I'm not a huge fan of Ruby in general. I'm a Pythonist, and don't see that changing in the near future. Python seems more straight-forward and "shallower" than Ruby to me, and there's less "magic". I'll even contend that Ruby is a more powerful language than Python - but with the caveat that this in fact is its greatest weakness.
The example that comes to mind for me is when I needed to flash multiple alerts to the user using Rails; I re-opened the class Rails used to implement the behavior and modified it to keep an iterable of messages instead of only one. It was easy, sure... but what happens when the Rails class changes in the next version? My changes not only weren't guaranteed to be compatible, they weren't encapsulated from the parent class, and didn't define and verify its behavior. I can totally see a circumstance where my class would appear to work without error, but the underlying implementation might have changed in subtle and unknown ways.
With Python, I'd have subclassed the parent implementation and wired my subclass up to the application. RoR doesn't make this approach easy, and even if it did, it's not idiomatic for that language.
- temuze 8y agoI agree 100%. Ruby follows Perl's philosophy of "there is more than one way to do it." That sounds terrible! When you scale an organization, do you really want everyone doing everything in their own unique way? Python has a more practical philosophy: > There should be one-- and preferably only one --obvious way to do it. While this sounds a little fascist, it enforces consistency. It means that a senior Python programmer will see code from another senior Python programmer and say to themselves "yup, I'd make it exactly this way if I wrote it myself."