At my workplace, before code could be submitted
to the repository, it has to be reviewed by another
engineer. Moreover, it has to get a "+2" consent
which can only come from an experienced colleague.
The +2-issuing power creates some sort of pecking
order, which, like other such artificial hierachies,
software engineers often find seriously engaging.
I was called by P often these days for slab
allocator-related questions and felt it would be
expedient to ask him to review the code I was
trying to check in. It was a general software tool
which I found useful and ignored by most. I was
taken aback after reviewing he said no. I listed
the usage cases but he insisted that I keep it to
myself instead of making it available to other
programmers. I could not imagine he fail to see
the value of the tool but realized he was not
capable of changing his mind no matter how I
explained. This reminded me of something said
about book critics who found fault with a work
because they secretly hoped they could have
written it themselves.
I didn't sleep well the night before and this
little run-in had some negative impact on how I
felt. I expected people to be supportive and
honest, not what Marcus Aurelius would have done.
He said almost 2000 years ago:
“When you wake up in the morning, tell
yourself: the people I deal with today
will be meddling, ungrateful, arrogant,
dishonest, jealous and surly. ... To
obstruct each other is unnatural. To feel
anger at someone, to turn your back on
him: these are unnatural.”
So I attributed P's rejection to the poor performance
of his stock investment ;-) and continuted to help
him with the slab allocator. Meanwhile, I quietly
turned to another colleague for code review. He
warmed up to the idea right away.