Kata Level: 2
1° Focus: TDD
Time: 60 minutes
In a apprentice level kata today I observed something that showed the power of "T" shaped teammates and kata. Two team members one a close to journeyman developer "T" and the other an experienced apprentice analyst "T" who's been done about 12 katas with the team. I'm not sure at what requirement in the kata they were working on, but for that RED-GREEN-REFACTOR cycle they were at refactor and discussing what to do.
Developer asked, "What are our refactor opportunities?"
The Analyst pointed to the screen and commented on an "if" block and suggest something that I couldn't hear.
The Developer then said, "I'm not sure. Why would we want to do that?"
The Analyst then said, "We've got redundancy here and here. When we need to come back and extend this we'll have to change it in multiple places. It's also inefficient, because we're making multiple calls. We could simplify things a lot by extracting both of these into it's own method and it would result in simpler more concise and descriptive code."
I was across the pairing isle, hidden behind a monitor watching and hearing all this happen and I couldn't help but think about how much that Analyst has grown in the last 4 months (from never having programmed at all) and that she's an awesome asset to the team.