So I've become a reasonably proficient Rails developer, and I'm finding that my bottleneck is now my lack of understanding of more complex Ruby constructs. I'm trying to build some plugins, and looking at some complex ones out there, their OOP wizardry is Greek to me. (I never had much formal OOP training so that's part of the problem.)
I want to better understand:
- Sending methods from one place to another (include, extend, etc...)
- Metaprogramming & overriding methods (super)
- Class inheritance, modules, etc
Serious Ruby tomes seem like too much. Is there a pragmatic way to learn this stuff that will extend my powers without overwhelming me in the inner workings of the language?