Tame or remove the formatter
At the start of the project I got the question whether I wanted to have an automatic formatter in the project.
I was informed that we would have less discussions about trivial issues since the formatter would decide the code layout. I had no experience with these programs, but that sounded ok, so I agreed.
Now, after a few years, I am really fed up with it. It's not an improvement.
- We lost code layout options because the formatter doesn't understand them.
- We still have trivial discussions about code layout.
- It's not fixing it's own mess.
- Formatter output is not always an acceptable result, and we spend time in fixing, avoiding, and discussions.
- The formatter destroys some of my work. Intentional additional white space in comments is deleted or comment is reformatted, code lines deliberately split over multiple lines to get good groups of eg parameters get all squashed together.
More generally:
- We get stupid edge cases with a handful of characters that just don't fit at the line.
- Its wrapping behavior can and does make small code changes much larger if suddenly there is more room at a line. So you get the same behavior as when reformatting a block of text, big "this bunch of lines changed" diffs, where there is really just one word deleted and the other 10 text lines in the diff are just re-wrapping. It makes understanding the change needlessly more difficult.
In all, imho leaving code formatting to a computer is a bad idea. Let's ditch the thing.