Pair programming has gained in popularity among companies as enabling developers to learn quickly and make fewer mistakes, but it's not as easy as it may seem. Pair programming can enable both partners to learn and grow if communication is open, friendly, and based on mutual trust and respect. Building relationships like this takes practice, so we've incorporated pair programming into Phase 0!
Pair Programming Considered Extremely Beneficial
As part of Phase 0, students are expected to pair program with a member of your cohort at least three or four times per unit.**
- It is up to you to arrange pairing sessions with your cohort mates at a time that suits both parties**
- You should set aside at least 45 minutes for each pairing session
- You should work on any of the challenges for the week except for the solo challenges.
- When you arrange your pairing sessions, you should decide the following:
- What challenge to work on
- Whether you will 1) attempt the challenge first or 2) decide to save the challenge for your pairing session and not work on it before the session
- What time you need to finish the session
**Note: You should select pairs from your unit accountability group. You can access each other's email addresses on the cohort page on Socrates. Click on the person's picture and it will let you access their profile.
Please keep in mind that all students are busy and working hard to balance work and Phase 0 requirements. If it turns out you can not make the session you've scheduled with your pair for any reason, please contact your pair as soon as possible. Try your best to work from a quiet place with a reliable internet connection.
You will be successful if you:
- Check in with your pair according to the [Pairing is Caring](http://vimeo.com/76662569) video.
- Decide which of you will be driver and navigator, discuss what each role requires, and stick with it.
- Ask your pair to switch roles so you each know your responsibilities
- Keep communication open and tell your pair when you need time to think
- Ask your pair for their opinions and ideas often
- Allow yourself to make mistakes
- Submit feedback to help your pair improve
- Use feedback you've received to become a better pair
- Alternate between driving and navigating. Aim to spend about 50% of your time in each role.
###Submit Feedback
You must complete feedback on Feedbackinator for every pairing session you complete to receive credit for it. If you do not submit feedback for your pair, we will not know you have done the pairing session, and you may be flagged for not meeting Phase 0 expectations.
Make sure you watch Engineering Empathy: EQ and Feedback prior to giving feedback.**
All feedback must be anonymous to protect privacy. Please, abstain from writing your pair's name anywhere in the free-form text to protect their privacy. Other students review each piece of feedback and rate it for kindness, actionability, and specificity and feedback will not reach a student if it is not rated high enough on each of these measures by other students. This means that all feedback is viewed by many students, and it's important not to bias anyone towards or against a student and make feedback feel safe.
Writing good feedback is challenging and time consuming. In the past, students have noted the feedback they received in unit one helped them, but feedback gradually became less specific and actionable. Be generous with your time and make sure to write feedback that will help your pair grow as a partner and as a programmer.
In order to make sure you and your pairs receive the feedback you've each submitted, all students are required to rate at least 20 pieces of feedback per unit. Unfortunately, there is no counter in Socrates for you to keep track of the amount you rate, so it is up to you to find a way to keep track of how many pieces you've rated. You will receive periodic updates with your unit progress with these figures.
TIP: Rate 5 pieces of feedback at a time until you submit at least 20 pieces.
**If you want another resource for help on writing good feedback, check out Seven Keys to Effective Feedback
Most students report that peer-pairing sessions are the most helpful and beneficial aspect of the Phase 0 program, but sometimes students report having bad sessions. Here are some tips for the common complaints we've heard.
Problem: "My pair isn't responding to my messages."
Tip: How did you contact them? A number of students have had issues contacting others via google. Try contacting your pair via email. If you still have difficulty, let your facilitator know and they can try to put you in contact with one another.
Problem: "My pair stood me up!"
Tip: Email your pair and present your side from your perspective. If you say something like, "I felt upset and disrespected by..." Let them know that there actions had consequences. Note: Please do not use feedbackinator to address this kind of issue.
Problem: "My pair drove AND navigated during the session."
Tips: If you didn't clarify who would drive and navigate from the outset, you can ask to clarify it anytime in the session. If you did identify who would drive and navigate, but you feel you aren't able to play your role, you can ask your pair to take a step back on your duties so you can fulfill them. Try asking questions about potential design choices and offer your own ideas. Finally, if nothing is working, you can tell your pair that you need a break from the session and say you can reschedule for later since you don't feel the session is beneficial at the moment.