Ruby is a powerful language, but power is dangerous and can be harmful. Good teams develop explicit constraints to control that power; habits like 'no callbacks, no concerns, fat model / skinny controller' are implicit, discipline-heavy versions of those constraints that burn mental energy. A system relying on discipline is like a job-project-style contraption that needs constant coordination — better to make constraints structural.