"Rails is all about conventions. Broken by default is not a good convention."
Too true. The issue ping-pongs back and forth, but the core idea here is visibility of mechanisms and application behavior. Hiding implementation details can be too much of a good thing, when people really need to know about the behavioral consequences of their actions.