4 ms·
I tried picking up Ruby some time ago, when RoR was at its popularity peak and seemingly everyone couldn't shut up about how “elegant" and fun Ruby was. After t
by agubelu 3y ago
I tried picking up Ruby some time ago, when RoR was at its popularity peak and seemingly everyone couldn't shut up about how “elegant" and fun Ruby was. After trying it... I can say that it's for sure someone's idea of elegant code, and I can see why many people like it, but it just didn't resonate with me at all. Too many syntax quirks that didn't look particularly nice to read IMO.
- nyjah 3y agoIt’s funny because I think overtime this is the same sentiment that seeped into the Ruby community. It used to be with pride when something worked with ‘magic’, but Ruby and even rails have both gotten away from that mentality, and I think for the better.
- pdntspa 3y agoRuby's weird for me in the sense that it is the language that most directly maps to my thought processes. Ruby's syntax feels extremely natural, but I first learned Java and C like a lot of my other cohort. Maybe it's because the first programming language I was truly good at was Perl
- stouset 3y agoRuby has the highest ceiling for clean, elegant, and expressive solutions to problems in any language I’ve ever seen. For small teams of (one or two) highly-experienced programmers with compatible vision, you can produce truly incredible programs. It also has the lowest floor. With the usual makeup of teams of frequently-rotating mostly-junior engineers who don’t have the experience, understanding, and restraint to use Ruby’s more… let’s call them idiosyncratic features, the sheer volume of completely inscrutable crap that can be put out in a given amount of time is truly breathtaking.
- Lammy 3y agoI feel the same way and I'm so happy I gave the language another chance after getting turned away by the behavior/attitudes of the Rails community back in "The Day". Ruby made me love programming again :)
- poidos 3y agoThis is how I feel with Clojure -- it fits into the way my brain thinks about how to solve problems computationally better than anything else.
- rezonant 3y agoYes there are definitely some weird syntax quirks, but it all depends on your perspective. Coming from something like Java, C# or Typescript, the syntax indeed feels strange, but from other languages with similar idioms (like Python), it's a lot less weird. Some examples of Ruby's quirks: `elsif`, singular `include?` instead of `includes?`. But the benefit of RoR is not really Ruby, its Rails. When you embrace the convention-based approach of Rails, you can move very quickly. A lot of the evolution of Rails over the years has been making it possible to have that cake and eat it too; being able to override the conventions when needed while the conventions keep the boilerplate you must write to a minimal level. And ActiveRecord is by far the best ORM I have ever used. That being said, some of Ruby's design considerations are important to why I still enjoy Rails development: being able to control your system manually in a fine-grained way from the Rails Console by interacting directly with models is really lovely, and the power of that isn't really matched by any other language+framework combination that I'm aware of. This ability to call directly into your model layer really requires a global namespacing arrangement (unlike for example JS) which is not too deeply organized (like in Java), with syntax that makes calls into the model layer not too onerous (ie omitting parenthesis for method calls, because every single `.` call on an object is a method call in ruby). I wouldn't necessarily pick RoR/Ruby for new projects myself, as Typescript's IDE-time erasable static typing is the number one thing that I wish Ruby had (there are several initiatives to bring over these benefits but they are still nascent), but I have no problem collaborating in teams working on Rails projects as it is indeed a very enjoyable, very mature platform for building APIs, backend systems, and even customer-facing frontend systems.
- deleted 3y ago[deleted]