You’re never too smart for dumb questions
One of the main benefits of pair programming is the fact that you’ll probably encounter questions you’ve never thought of people. Especially if you pair with somebody that doesn’t have much knowledge of the programming language and you are trying to teach them. It’s refreshing to get questions from an inquiring mind that has just been recently exposed to something completely new.
I don’t consider myself an expert Python programmer, especially since I always get asked questions I can’t answer. I know how the language works, and it’s features, but I still learn a lot from getting asked very specific questions that I normally don’t think of. Usually the questions pertain to things within the programming language that I gloss over, or haven’t fully learned.
Being asked questions also forces you to reinforce your own understanding. I try my best to think of analogies as answers if possible, trying to connect something abstract to something more tangible. This is how I learned most of everything I was taugh in uni, taking abstract concepts and thinking of them in a way that makes them concrete.
For example, I was asked yesterday about Docker, and how Docker works within our development environment. Something that is difficult to do is finding the right balance between too much information, and too little information. To a beginner, eyes get glossy when you start delving into very technical jargon, so you have to find the right balance. I explained that Docker is like an Ikea instruction manual, very simple and no words; no matter what language you speak you can build the same final product.
That might’ve been a terrible analogy, but I never really thought about what Docker was before, only what it could do and how we could use it.
Moral of the story: Seek out mentoring/pairing opportunities because you will learn more, and it’s good fun.