-Assholes who don't know what it is like to work with mature code bases.
-Assholes who don't know what it is like to work with mature code bases.
"Our code is self-documenting. If you need documentation then the code isn't written well enough"
-Assholes who don't know what it is like to work with mature code bases.
- People who don't know how to write clean codeRecent example: when you authenticate to OpenSSH running on macOS 10.13 or 10.14, make sure to never attempt keyboard-interactive auth after password auth, or the server will stop responding.
Somewhere you need to write this fact down, so that the next person who comes across your auth code doesn't change the order of authentication methods.
You need to document things like that.
If you have a mature code base, you'll have dozens, or hundreds of these workarounds for all kinds of issues. If you look at the code, it'll seem inefficient. If you don't document why the code looks like it does, then someone will come along (possibly you) a few years in the future and "optimise" that line.
Sure, you could have a unit test that checks whether the workaround is in place. But then you STILL need to document why that unit test is there, or someone will come and consider it pointless and remove it.
Management thinks he’s brilliant. Everybody else thinks he’s an insane asshole.
Just because you know people who can say this with sincerity and gravitas doesn’t mean there aren’t assholes.
There are always assholes.
"Our code is self-documenting. If you need documentation then the code isn't written well enough"
-Assholes who don't know what it is like to work with mature code bases.
- People who don't know how to write clean code
- People who think that not only they figured out what 'clean code' even means, but that everyone else will agree, thus single-handedly ending some 50+ years of heated industry-wide debate, numerous billion-dollar attempts by some of the most talented people in the world, and troves of 8-dimensional mental gymnastics about design patterns by way of a $21 ebook, a code review and some blog posts