Sustainable productivity: Rails vs OOP
updated over 5 years ago; latest suggestion over 5 years ago
There is an ongoing debate in the Rails community as to whether properly applying certain well-known OO principles and techniques can improve the maintainability of our Rails applications as they grow.
However, often these practices differ from the traditional Rails way which, after all, claims to be “optimised for programmer happiness and sustainable productivity”.
In this talk, we'll explore the different views of the community on this subject keeping the drama and the rhetoric out of the debate. We'll discuss about SOLID principles, cohesion, ceremony vs essence, data vs behaviour, indirection, testability, the framework as a detail and other related topics.
Hopefully, this talk will help you make better decisions when choosing solutions to improve the maintainability of your Rails codebase.
I agree with Tim, this one sounds like the nice entry point of the three talks.
It may be good to run with this one, bringing in some choice parts of the others where they can provide good examples.
All three talks sounds very strong - this sounds like the one to go with as it's a nice overview. The ActiveRecord management could be a great concrete case study to illustrate this talk.
I think it doesn't go against the anonymous policy to say that I'm the author of these three proposals (which are variations on the same subject):
- Sustainable productivity: Rails vs OOP
- Keep your ActiveRecord models manageable the Rails way
- Patterns to deal with big ActiveRecord models
During the last six months I've been researching about the big-models issue in Rails. There's a fair amount of buzz in the community about how to deal with this problem and I thought it would be interesting to study in depth each different view.
James: Although I have my own opinions, the point of this talk would be to present the debate and the different ideas without taking a strong position in them.
This talk, compared to my other two proposals, would be more about design decisions and its trade-offs than about particular patterns (although I'd good illustrate the ideas with code).
It's not clear from the proposal as it stands whether or not you have a particular position (pro OO/SOLID or pro-Rails-golden-path, for want of a more sophisticated distinction). Are you going to be providing a recommendation, or a detached survey?
+1. I'd really like to see this talk at the conference.