전체 지도를 보며 목적지에 다다르는 길을 안내한다.
운전 과정 중에 의문이 드는 점이나 잘못 흘러가고 있는 상황을 대화로 바로 잡는다.
직접 운전대를 잡고 운전을 하는 역할
운전 중 현재 진행하는 것을 말로 표현하며 진행하며, 네비게이터와의 대화 역시 함께 진행한다.
🙅🏻♂️ 1. 한 사람이 다른 사람에게 '강의'를 하지 않는다.
짝 프로그래밍은 수평적인 관계로 진행하는게 중요하다!
드라이버가 어떻게 리드해야할지 모르겠다면, 네비게이터가 쳐야할 코드를 불러주기!!
⏱️ 2. 타이머를 이용해서 빈번하게 교환하기
한 사람이 오래 키보드를 오래 붙잡고 있으면 안됨!!
서로 왔다 갔다 하는 과정에서의 '발견'이 페어 프로그래밍에서 중요한 부분이다.
내비게이터와 드라이버가 일정 시간 (오늘은 2분의 제한시간)을 두고 서로 역할을 바꾸며 짝프로그래밍을 해보았다.
2분이라는 짧은 시간동안 계속 번갈아가기에 집중할 수 밖에 없는 구조였던것같다.
처음엔 막연함 두려움이 컸지만, 생각을 정리해보며 이건아닐까요 ?? 이건 어떨까요?? 하며 생각을 공유한다는것이 정말 많이 배울 수 있던것같다.
세가지로 정리해보자면??
1. 시간을 효율적으로 쓸 수 있었다!
2. 생각을 말로 표현하면서 더 정리해볼 수 있었다
3. 내 관점 외의 리팩토링을 생각해 볼 수 있어서 좋았다
특히, 알고리즘 문제를 풀 때 페어프로그래밍으로 접근한다면 너무 좋을 것 같다는 생각이 들었다.