“Ward Cunningham didn't let me touch the keyboard for a while”.
@KentBeck, industry veteran and creator of XP & TDD, on learning to code with a master programmer:
“Ward was always a much better programmer than I was in terms of low level technique. He also had a gift for design at a higher level and a gift, as you see in the wiki, of picking powerful top level goals and then making something that does that.
But I was this 24-year-old punk with attitude and he didn't let me touch the keyboard for a while.
I could watch him. Eventually I was like, those parentheses don't balance. You need a period here. And I was actually being useful to him. I was absorbing watching a master programmer at work, but I wasn't really driving stuff.
I started understanding the low level patterns and then building up to the next level and the next, and then I would say, well, why is this called this and not that? We'd pull out a thesaurus and look it up and find just the right word for things and then continue.
And I started making suggestions that he wouldn't understand right away. So I would take the keyboard for a little while, say, lay something like this. He’d say, ‘Oh, I get it. I get it’. And then he'd take the keyboard back.
Over the course of a few months, we developed both a programming style where the keyboard was going back and forth where we were talking at multiple levels.”