From the ruby-talk mailing list. Quoting removed, I think it's readable out of context.
How can a (coding) convention be *wrong*, instead of just less useful, less practical?
The same argument applies to other conventions. Why is Sati *wrong*, instead of just a less useful, less pleasant way to live?
Ideas have broad consequences that can't be arbitrarily restricted: they reach out to other fields. The full answer to the Sati case should include whether anything is wrong at all, and whether practical considerations have moral consequences. Those issues are important to the question about coding.
We can even take a dialog about Sati, and then use some of the ideas to argue about coding. Most of them will work just as well about either topic.
Jim: "Sure, Sati sounds horrible to us, but they are accustomed to it, and would be unhappy to live another way. It has practical consequences, like reducing how many women are available to knit, but wealth is only a convenience."Chloe: "Medical textbooks are a kind of wealth, and medicine matters. With less knitting, they won't be able to buy as high quality medical books."
So, back to coding. This medical textbook argument will work great. Some programmers write tools for doing page layouts, and for making diagrams. Those tools help us make better medical textbooks. The more convenient and practical the coding conventions of the programmers, the sooner we will have higher quality medical textbooks.
The idea that medical textbook production is a *practical* issue with *moral* consequences can be transplanted just fine between the two cases: it has reach.
This isn't conclusive, of course. Maybe you don't see the moral value in medicine. But I think it's getting somewhere, to tie those things together. Most of us are probably persuaded by now. And if we were to continue on, about Sati, or coding conventions, we'd continue on in exactly the same way -- discussing medicine -- because it's all tied to the same issue now.