I went to hear Kent Beck speak on Tuesday and he asked: “when was the last time you were comfortable in your skin as a programmer?” …and when did you last have that feeling at work?
My answer was: last week. It hasn’t always been that way for me, and sometimes there’ll be months in a row where it doesn’t happen at all (of course, lately I blame that on being swept into management, but that’s a topic for a different post).
Kent Beck surprised me by talking about what he called the “genius-shithead rollercoaster,” where one day you are the a wizard, all-powerful, master-of-the-universe because you wrote some magnificent piece of code or found and fixed some harrowing bug, but two or ten days later you are an incompetent idiot who can’t solve the basic problems that confront you. I used to describe this as the “manic-depressive product development cycle.”
The odd thing is that I thought this was a gender issue. Here I was amidst a group of bright, young men who often showed their genius in their code (or at least thought they did). I never saw that they had any dark moments of the soul when they questioned their competence or wondered if they belonged in this profession. I thought it was just me, being female. I worked very hard to overcome these bleak periods of doubt. I found the ability to laugh at myself when I felt like a superhero. And now, most of the time, I can find deep moments of joy in the process of solving problems and writing code whether I’m successful at this moment or struggling with a not-yet-solved issue.
I listened to Kent, as he described in detail what he meant by finding “ease” at work: not freedom from difficult, not freedom from constraints, not taking it easy, but a state of comfort, freedom from worry, pain or agitation, freedom from embarrassment. It’s a good way to look at it that “maintaining illusions is a waste of energy” and that “awareness offers choices.”
Kent talked about responsible development:
– My code works
– My code matters
– Accountability
– Public commitment
– Appropriately valuing feedback
– Acknowledge my contributions
I took notes and I thought: right on! While at the same time, I thought: “oh my god! poor Kent — he’s going to become known as the Stewart Smalley of Agile Development” (my code’s good enough, and gosh darn it people like me). Is this roomful of men really going to buy this? And after the talk, listening to the questions, it appears that they did. What he was saying resonated with them. They asked insightful questions. I kept trying to form my shocked observations into a question, but I couldn’t quite turn it around.
Upon reflection, there have been a number of guys, more recently, who have mentioned this pattern. I was just so wed to my own gender bias that I assumed they were the exception. I’m not quite sure what to learn from this, except I’m glad Kent’s talking about it. I’ll end with my favorite quote of the day:
“Programming so that you’ll feel like a hero is quite different from programming so that you have a program.”
What do you think?