* Joe likes 4-space tabs, I like 2-space tabs, and Jane is old-school with 8-space tabs.
* All goes well until someone aligns something visually, like so:
[tab]void someNiceMethod(int myParamA,
[tab][tab][tab][tab][space][space]int myParamB...);
(What you should do--if you're going to visually align at all--of course, is [tab]void someNiceMethod(int myParamA,
[tab] int myParamB...);
... but humans are humans and IDEs aren't created equal, so this doesn't happen consistently.)* Now it aligns perfectly on my machine, looks mostly ok on Joe's machine, and is ON MARS on Jane's machine.
Thus one-or-more of three futures happens:
* Someone implements a code re-formatter into version control
* Someone re-aligns the code, starting the process over again.
* Someone calls a meeting and demands we all switch to spaces AND IDEs that let you treat spaces like tabs.
[1]: This came up last week (https://news.ycombinator.com/item?id=14560042) and this comment is shamelessly copied from that discussion (https://news.ycombinator.com/item?id=14561223).