I am three weeks into my coding bootcamp and I was taught about pair programming on day one.
As per Wikipedia, pair programming is
an agile software development technique in which two programmers work together at one workstation. One, the driver, writes code while the other, the observer or navigator, reviews each line of code as it is typed in. The two programmers switch roles frequently,
but I think it is much more: it's a learning tool.
It is no surprise if I say that you learn from partners who are better than you. But you can also learn a huge amount from partners who are maybe a bit less confident.
You learn about the person.
There's something quite intimate in this, you practically learn how the other person's brain works. It is fascinating to see someone else's brain in action and to compare all the different approaches they would take to the same challenge.
You learn to express yourself.
You get better with your tech words, which is really important, instead of pointing and calling things thingies like I used to. "You need to move that thingy over there."
Expressions like declaring variables and passing arguments and invoking functions and it's out of its scope etc. come naturally after only a little while.
You learn to listen and to explain. You learn patience.
You learn about different personalities and how to work with them. You learn to be humble but also to be adamant dependent on what you need to be.
You learn about yourself.
What is your experience in pair programming?