4 ms·
Your last point really stood out to me. Reading through the commentary, it's difficult to see what is so magical about Rails after spending a lot of time using
by jwdunne 11y ago
Your last point really stood out to me. Reading through the commentary, it's difficult to see what is so magical about Rails after spending a lot of time using and especially abusing vanilla Ruby.
Sure, I can concede that code that tries to do too much for you to the point where you didn't actually want it is annoying. It's just that, in the context of what Ruby CAN look like, Rails isn't that arcane.
For example, entirely for fun (it was a lot like a game - I couldn't stop seeing how far I could push it), I gradually built up a small library (less than 100 lines of code) that eventually yet radically transformed Ruby into what looked like a badly designed yet different (functional) language. Functions could be conveniently composed, partially applied, juxtaposed, etc by monkey-patching the symbol class with overloaded operators. I also had fun getting all this working for instance method calls so they could be treated the same way (few caveats with that though).
Not to say that this is a production-worthy effort, it's simply not. It's just the experience that has ultimately taught me the extent of Ruby's (perhaps dangerous) power and that Rails doesn't actually call upon that much of it in the grand scheme of things.
Truly knowing Ruby for Ruby and what it's features can really do, you only need to look at the so-called magic that Rails demos to understand intuitively how it does what it does.
- steveklabnik 11y agoFor an example of this, see the "interactive fiction" heading of http://weblog.jamisbuck.org/2015/10/17/dynamic-def.html http://weblog.jamisbuck.org/2015/10/17/dynamic-def.html