| This is depressingly similar to what I was aiming for when I recently began work on: https://github.com/lean-framework/lean (I feel like this happens to me a lot.) Rails controllers are hard to test because actions aren't designed to be testable objects. ActiveRecord models become monolithic because there's no separation of instantiation, validation, persistence, or retrieval. I originally experimented with building a Rails app that forgoes ActiveRecord to a large extent; using plain Ruby classes + Virtus gem to separate the aforementioned concerns depending on context. I was pretty satisfied with the number of design headaches I was able to avoid, which is when I started to create a framework around the aforementioned paradigms. Not sure if I just lost my motivation or not, but I'm glad I'm not alone. |
In graduate school, many a moon ago, my advisor would say that this is validation of the idea, so one should be happy to be on the right track.