Bellware's claim, provable via static-analysis of distance-from-the-main-sequence: 'fat model, skinny controller' is one of the most fundamental mistakes in Rails design. Model objects are highly afferent (everything calls into them), so piling controller-specific business code onto them lands in one of the absurd quadrants — highly afferent + highly special — and maximises the blast radius of changes. The historical root cause: Rails controllers couldn't be tested, so code that belonged on controllers drifted onto models. If TDD had actually been applied, controllers would have been designed to be trivially instantiable and testable.