At work, we have this arcane practice called a stand-up meeting. The purpose of the meeting is to talk about what you are doing and what is preventing you from doing it.
Until today, I have been violating the spirit of that meeting. I have been working on the things that are not blocked and saying that I am not blocked because I am able to do things. But if I were working on things in priority order then the truth would be that I am blocked.
Today I will confess. For the last week and for every week that will come in the future, I will not write code nor will I submitting any stories against the main code base because I cannot trust that I can get a timely code review. My purpose is not to blame the people who have volunteered to review my pull requests. My purpose is to acknowledge a fact.
It shouldn't be hard to acknowledge a fact except for the idea that perhaps we expect overreaction of some sort. We do not wish to place blame. We do not wish to make our peers feel attacked. We do not wish them to delay our reviews further because of being named a blocker.
Well, delay seems to be the end result in either case. So perhaps it is better to acknowledge the fact than to let it go on unsaid. Perhaps I can trust that people will not take it personally for me to say that:
Our pool of trusted reviewers is too small.
We have no clear process or criteria for incorporating new reviewers. I am rarely called upon to perform a code review for anyone else. I am not in the general pool as a trusted reviewer. Maybe this is as it should be or maybe it is indicative of the problem.
So, without blame and with a bit too much bitterness, I must resolve each day to say that there are things I would work on but I do not because I cannot be sure that they will see the light of day.
We are failing and we need to change the way we are doing things.
Perhaps I should also start an effort today to enumerate the principles to which we adhere in our main code base. If these are written out, would that be sufficient to allow for more reviewers?