Bad commit messages? If I commit locally to switch to another branch and for no other reason I should write a novella?
You left out the big one
0) deliberately write illegible code.
My code looks more like a table than anything else; most people write jagged, cluttered garbage.
And "reinventing the wheel," I hope not many do this. What I see far more often is the same operations written in many places, often with small unintended differences, instad of breaking it out to a function.