I read the book a while ago, It was quite an eye opener.
The one thing I haven't been able to go through was the last chapter, building a "metacircular evaluator. I saved it for a time when I understood compilers/interpreters better.
Diving into codebases, like the octave and supercollider interpreters recently. might be quite interesting to re-read it.
I know what you mean, but it's not as clear cut as you think it is.
You don't operate in a vacuum when you work on projects. What if you think someone is wrong? Being direct might be a risk, because then the community might not be seen as "welcoming to newcomers" anymore.
I mean, ideas don't come out of nowhere for projects, and people who care about things, will be passionate about them. What if someone comes in the way of you building things? What then?
With the CoC in most projects, that's changing.
See also: the Python Mailing list, where threads are locked and people are being banned for CoC violations.