-이번주의 주간 회고는 section1 회고로 대체한다-
section1 근데 이제 기수이동을 곁들인
두 번째였다. 기수이동을 했기 때문이다. 변수부터, 가장 쉽지만 작명하려면 가장 골치 아프기도한 그 변수부터 다시 시작.
다시는 기수이동이라는 "변수"가 없었으면 하는 마음으로, 코플릿 한 문제를 풀어도 여러 방식으로 다시 풀었고, 쉬운 문제도 복잡하게 꼬아 풀었다. (리듀스 들이대기) 스프린트? 무조건 nightmare까지 시도했다. 못 풀어도 일단 고. 왜냐? 남는 건 결국 내가 고민하고 삽질하며 애쓴 시간이라는 걸 지난 HA탈락으로 뼈저리게 깨달았기 때문이다.
완벽주의가 있었는데 없어졌습니다
처음에 어려웠던 부분은 두 번째에도 어려웠다. 물론 덜 어렵긴 했지만. 그 "덜"은 아마 익숙함의 영역일텐데, 그렇다면 익숙해지는 것이 곧 현 단계의 목표라는 생각이 들었다. 깊은 이해는 그 익숙함이 전제되었을 때 시도할 일이다. 코딩은 정말 디깅하자면 끝도 없기 때문이다. 자바스크립트 배우기도 벅찬데 자바스크립트를 누가 어떻게 왜 이렇게 만들었는지, 메모리와 효율성과 어쩌구저쩌구를 한 번에 다 이해하고 뿌리부터 시작하겠다는 욕심은 말도 안 되는 일이었다는 걸... 알게 됐다. (물론 알면 좋지만 시간의 제약과 취업이라는 현실적인 목표를 생각해봤을 때 그렇다는 이야기다).
혼자 공부할 땐 산으로 가는 일이 정말 많았다. 한 페어분이 책에서 읽으신 바로는 그건 '토끼굴에 빠지는 일'이라고 한다. 정말 공감됐다. 그 습관이 부트캠프에 들어오고도 쉬이 빠지지 않아 한 달을 내 방식대로 이 굴 저 굴 들여다보며 지냈다. 하지만 HA에 떡하니 탈락하고나서는, 내 학습 방법이 잘못됐음을 인정할 수밖에 없었다. 부트캠프는... 완벽주의 치료제다.
반복의 힘 - 앎의 상태를 연장하기
"앎"이라는 것도 일종의 "상태"일 뿐이다. 한 번 알았다고 해서 안 것이 아니다. 그 순간에 알았을 뿐이다. 안다고 말할 수 있는 시간을 늘리려면 결국은, 지겹게 당연한 이야기지만, 반복과 반복의 변주뿐이다.
그래서 나는 학습 방법을 바꿨다.
매일 하던 배운 내용 요약 형식의 블로깅을 과감히 접었다. 지속가능한 블로깅을 위해 접어야만 했다. 내 경우엔 시간이 너무 많이 걸렸기 때문이다. 더 부지런한 분들은 학습 내용 블로깅과 예습 복습 다 하실 수 있을지도 모르지만, 나는 배운 내용을 요약하기 보다는 그걸 활용해 뭔가를 만들거나 어떤 문제를 풂으로써 빠르게 습득한다고 느꼈다. 그래서 조금 시간적 여유가 있었던 첫 2주간은 작은 미니웹 프로젝트를 했고, 마의 구간 DOM-클로저-고차함수 부분부터는 스프린트와 코플릿을 이리저리 고치고 다듬고 뿌시고 씹고 뜯고 맛보고 즐기는(?) 시간을 보냈다.
블로그엔 학습 내용을 요약하는 대신 키워드와 소감 위주의 TIL을 적기 시작했다. 처음엔 배운 내용도 조금씩 요약했지만 지금은 그냥... 매일 푸념만 한다^^ 또한 토끼굴에 빠지지 않기 위해 내가 세운 원칙은, 정규 시간엔 다른 레퍼런스도 보고 이론적으로 디깅을 하더라도 이후의 개인학습 시간엔 무조건 코딩만 하는 거였다. 알고리즘 풀거나, 스프린트 고치거나, 뭔가 만들거나. 가끔 아고라스테이츠에 들러 답변을 달아보기도 했다. 참 도움이 많이 됐다.
나는 똑같은 걸 계속 푸는 데 쉽게 질리는 타입이라서, 똑같은 스프린트를 다시 풀거나 같은 코플릿을 같은 방식으로 다시 푼 적은 많지 않았다. 후기공유회에서 들은 바로는 어떤 분은 리액트 twittler 스프린트를 6번이나(!) 다시 푸셨다고 한다. 정말 좋은 학습법이라고 생각한다. 나는 그저 다른 문제를 풀거나 다른 결과물을 만드는 게 재밌고 좋았다. 이건 단순히 취향 차이라고 생각한다. 배운 걸 반복적으로 적용할 수 있는 목표라면 무엇이든 좋다고 생각한다. 현재까지 두 달 남짓한 시간동안 부트캠프에서 방대하고 밀도있는 학습량을 소화하면서 내가 알게 된 가장 좋은 방법이자 어쩌면 유일한 방법은, 이런저런 모양으로 반복하는 것뿐이다.
역지사지 - 페어프로그래밍을 대하는 자세
첫 section1에서 만났던 페어분에게 "와 저도 드디어 빨대꽂을 수 있는 사람 만나서 행복해요~!"라고 농담했던 기억이 난다. 그분은 컴퓨터공학 전공자셨다. 그전까진 나와 수준이 비슷하거나 노베인 분들을 주로 만났었기 때문에 나도 드디어 전공자 만나서 한 수 배우겠구나~! 싶어서 신이 났던 게 사실이다. 스프린트에서 막히는 부분이 있을 때마다 주저하지 않고 질문했고, 그분은 스무스~하게 오류를 찾아주셨다. 정말 훌륭한 페어셨다.
하지만 결과는? 그분은 HA 통과 나는 탈락이었다 ㅠ_ㅠ HA 끝나고 디스코드에서 하나 둘 기수명이 바뀔 때 느꼈던 이 잔인한.... 갈림길의 운명.
그때 내가 생각한 많은 것들 중 하나는, 질문하지 않는 것도 문제지만, 고민없는 질문도 독이라는 거였다.
코드스테이츠에서는 20분을 가이드라인으로 주지만, 사실 어떤 문제이냐에 따라 그 시간은 유동적이다. 30분이든 2시간이든 내가 생각하기에 충분히 고민해봤다! 싶을 정도의 시간은 투자해야 한다고 생각한다. (20분은 사실 미니멈이라고 생각한다. 물론... 맥시멈도 있으면 좋겠지만, 사실 그건 스스로 만들어야 한다.)
기수이동을 하고보니, 자연스레 페어프로그래밍에서 내가 상대적으로 더 잘 아는 쪽이 되는 일이 잦았다. 나는 의욕이 앞서서 이것저것 가르쳐주기보다는 상대가 충분히 고민해보고 시도해본 뒤에 알려주기로 마음 먹었다. 그러니까 꾸준한 질문을 하고 우회적인 힌트를 주되 답을 유도만하고 알려주어서는 안 되는, 고도의 커뮤니케이션 스킬이 필요했다. 이 밸런스를 맞추는 게 생각보단 쉽지 않았다. 그래서 때론 좀 엄한 선생님 같다는(?) 피드백을 받기도 했다(ㅠㅠ). 아마 내가 긴장해서 상대방을 편하게 해주지 못해서 그랬던 것 같다.
도움을 받았던 입장에서 도움을 주는 입장으로 역할이 전환될 때, 얼마나 상대의 입장을 충분히 헤아릴 줄 아느냐가 정말 중요한 것 같다. 상대는 나에게 질문하기보다 혼자 충분히 고민해서 해결하고 싶을 수도 있고, 혹은 반대로 내가 그랬던 것처럼 즉각적으로 궁금증을 해소하고 싶을 수도 있다. 그때그때 유연하게 대처할 줄 아는 것이 바로 협업능력이겠다. 과하게 목표지향적이 되면 상대에게 너무 빠르게 혹은 너무 많이 설명하게 될 수 있다. 페어프로그래밍의 목적은 서로의 이해 수준이 같아지는 것이 아니라, 협업하는 방법과 자세를 배우는 것임을 잊지 말고, 다음 섹션에서는 더 좋은 페어로 성장하고 싶다.
section2가 그렇게 불지옥맛이라던데..
부지런한 우리의 코드스테이츠. section1은 날짜 딱 맞춰서 열어주더니, section2는 벌써 오픈해두셨다. 주말에 예습하라는 깊은 뜻인 줄로 알고 예습해야겠다.
section1은 두 번 들었지만, section2는 한 번만 듣고 싶다. 시간이 돈이니까. 다시 모든 것이 낯설고 새로울 수밖에 없을 터. 이전처럼 허겁지겁 멱살잡혀 끌려다니는 학습을 하지 않기 위해서, 그간의 학습 방법을 기반으로 효율을 좀 더 극대화해보고 싶다.
그러기 위해선 운동과 명상, 주말에 친구 만나서 수다떨기..를 적절히 병행해주어야 한다. 공부는 결국 몸으로 하는 것이니까.
아고라스테이츠에 들러서 동기들에게 작은 도움을 주고 나도 개념을 잘 다지는 기회를 더 자주 가지면 좋겠고, 좋은 질문을 하는 법도 연습해보고 싶다.
기술블로그는 한 달에 1~2개 쓰는 게 목표다.
무엇보다, 좌절금지다. 뚝배기는 깨지는 게 정상이고 고통 없인 성장 없다. 실패를 그저 받아들이고, 꾸준히 시도하면서 배우자. 용기 잃지 말자.
'회고' 카테고리의 다른 글
코드스테이츠 8주차 회고 (0) | 2021.08.07 |
---|---|
코드스테이츠 7주차 회고 (0) | 2021.07.30 |
코드스테이츠 4주차 회고 (0) | 2021.07.10 |
코드스테이츠 3주차 회고 (0) | 2021.07.03 |
코드스테이츠 2주차 회고 (0) | 2021.06.26 |