ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 항해99 4주차(2021.3.22 - 3.28) WIL - 리액트 유격반에서 지옥도 보고 희망도 보고
    항해99_WIL 이따금씩 TIL 2021. 3. 28. 18:26

    지난주에는 리액트 학습량이 너무 많기도 하고 처음이라 헤매기도 하고 과제 생각이 급해 공부에 시간 투자를 많이 하느라 WIL을 많이 쓰지 못했는데 이번주는 후일담이 있으니 지난주보다 조금이라도 더 쓰겠다.

    두뇌 풀가동으로도 모자랐던 알고리즘 주차는 끝나고 드디어 맞이한 주특기 1주차.

    하지만 백준 선생님은 순한맛 선생님이었고 파이썬 그는 좋은 언어였읍니다...

    리액트는 어느 분야든 기본이 부족한 상태로 뭔가에 뛰어들면 지옥을 맛볼 수 있다는 평범한 진리를 뼈저리게 느끼게 해주었다. 그리고 그 극한경험 속에서도 성장할 수 있다는 점도 알려줬다.

    리액트 공부의 어려움

    리액트 1주차는 리액트 기본 강의를 듣고, 과제를 기한내에(2021년 3월 25일에서 26일로 넘어가는 자정까지) 제출하는 것이었다. 그런데 이건 거의 극한체험인데, 왜냐면 5주차까지 있는 강의를 주차가 시작한 금요일부터 주말까지 3일에 걸쳐서 다 몰아서 듣고 거기서 배운 지식으로 과제를 해결하는 것이기 때문이다. 튜터님도 5주 강의를 3-4일만에 몰아치니 못하는게 당연하다고 하실 정도다. 처음에는 호기롭게 시작했지만, 강의를 듣는것이 이해가 안되는 부분이 많다보니 진도가 나가지 않아서 정말 큰일이었다. 자바스크립트 언어 문법도 모르는게 많아서 자바스크립트가 이해가 되지 않아서 애를 많이 먹었다. 다행이 그나마 파이썬을 배워둬서 망정이지, 파이썬으로 비슷한 문법은 때려 맞추는 식으로 이해를 하면서 진행했다. 지금 생각해보면 항해99 사전 준비 기간에 스파르타코딩클럽에서 제공한 웹개발 종합반 수업만 믿은게 실책이었다. 거기엔 html 문법이랑 파이썬만 썼기 때문에 자바스크립트가 이렇게 중요할지는 미처 생각하지 못한게 천추의 한이 되었다. 항해99를 운영하는 스파르타클럽측도 사전 준비기간에 자바스크립트를 공부하라고 권장을 했어야 한다. 나중에 항해99를 끝내고 운영진측에 건의사항을 쓴다면 자바스크립트의 중요성을 사전에 고지해야 한다고 생각을 하는데, 운영진측도 이거 지원하는 사람이라면 자바스크립트의 중요성 정도는 다 알고 온다고 안일하게 생각한게 아닌가 싶다. 물론 나 자신이 그 중요성을 진작에 알았어야 해서 미리 준비를 했어야 한다. 역시 무식하면 큰일이 나게 되어 있는 법이란걸 몸소 체험하고 있다.

    과제 진행 - 지옥 체험

    과제는 여러 기능이 있는 달력 웹서비스를 리액트로 구현해서 배포하는 것이었다. 처음으로 하는 실전 과제이지만, 나는 자바스크립트 지식도 많이 부족하고 리액트는 강의를 들으면서 필요한 뼈대가 뭔지 알기는 했지만 더 모르는게 많았다. 그래서 이번 과제에 임하는 컨셉을 작곡가 '용감한형제'가 작곡을 배운 방법을 쓰기로 했다. 음악 지식은 전무했던 용감한형제는 음악기기를 사서 연습을 하면서 노래를 카피하면서 성장했다고 한다. 처음에는 똑같이 만들어내는 '카피'(항해99 과정에 있는 클론코딩이 그런 컨셉이다)에서 내 색깔을 조금 입히는 '표절'을 거쳐서 자신만의 고유한 노래를 만드는 수준으로 올라가는 과정이었다고 한다. 나도 그처럼 남들이 해놓은 것을 카피하면서 감을 잡는 식으로 해내려고 했다. 그래서 블로그도 뒤지고 git도 뒤져봤지만, 다른 사람들이 과제가 요구하는 필수 기준으로 해낸 결과물은 도통 찾을 수 없었다. 그러면서 조원님이 알려준 기본 달력생성 소스를 보고 내 힘으로 스스로 해보려고 했지만, 내 실력으로는 절대 해낼 수 없었음을 절감했다. 왜냐면 자바스크립트 실력도 모자라서 요구 사항대로 만들 능력이 되지 않았기 때문이다. 과제 요구 수준은 초보가 하기엔 너무 매운맛이었으니까. 조원님도 나랑 비슷했는지 자기 수준에서는 절대 해낼 수 없다고 판단하고 예전에 같은 조였던 능력자님의 git을 참고 하면서 하고 있다고 해서 나도 조원님이 참고한다는 git를 보고 그렇게 하기로 했다. 스스로 하고 싶기도 했지만, 지금 당장 해낼 수 없는 능력이 많이 없는 상태에서는 그런 고집을 피우는 게 오히려 어리석은 일이었다.  그래서 그분의 git을 보고 따라하고 내가 할 수 있는 부분은 내가 하면서 과제를 힘겹게, 그러나 하나하나 배우면서 결국은 부족하게 나마 해냈다.  중간중간에 막히는 부분은 튜터님이 직접 강림하셔서 같이 보면서 되게 하기도 했는데, 거기서 부족한것을 알아내면서 되게 하는 기쁨이 있어서 희망을 갖고 해낼 수 있었다.

    과제 결과물 

    먼저 흠잡을 데 없는 훌륭한 결과물부터 보자.

    훌륭한 결과물의 예)

    알고리즘 첫주차 같은 조원이셨던 분의 멋진 작품. 금손이시다

    알고리즘 첫주차에 같은 조원이셨던 분이 해낸 결과물인데, 같은 주특기 하는 사람중에서는 가장 먼저 끝낸 분이다. 자바스크립트를 공부하고 있다고 했는데, 역시 기본이 되어 있다 보니 쉽고 빠르게 훌륭하게 해낸 모양이다. 나도 많이 많이 성장해서 저 정도 결과물을 낼 수 있어야 취업시장에서 경쟁력이 있겠다, 세상 사람들의 문제를 해결해 줄 수 있겠다는 생각이 들게 해준 작품이었다.

    부족한 사람의 예)

    css 실력의 부족함을 많이 느낀 작품. 살려주신 분의 git에 감사인사라도 드리고 싶다.

    이 정도 해낸 것도 참 용하다. 다른 분들의 결과를 참고하고 내가 할 수 있는 부분은 스스로 해보려고도 했고, 안 되는 부분은 조원과 같이 고민도 하고  튜터님께 요청해서 같이 들여다 보면서 해결하고 그러면서 배우고, 내가 모자란게 뭔지 뼈저리게 느끼기도 하고. 결국 혼자서 크게 성장하기는 어렵고 같이 해야 성장할 수 있음을 느끼기도 했다. 1주 정도 배운 사람에게 너무 과한 것을 요구하는 것이 아닌가 싶어 운영진이 원망스럽기도 했지만, 멘탈 선생님하신 말씀인 오직 실전에서만 성장하고 배울 수 있다는 말을 상기하면서 이건 운영진의 큰 그림일 것이다고 생각하면서 내 멘탈을 잡았다. 다른 사람들이 너무 잘해서 주눅이 들지 않았다면 거짓말이지만, 그러는 것도 한순간만 하고 내가 성장하는 것에만 집중해야 한다. 모자란 내 머릿속 작업기억 용량을 그런 생각으로 채우지 않고 내 성장에만 신경쓰는 것에 내 작업기억 용량을 써야하기 때문이다.

    나아갈 방향(follow up) - 자바스크립트와 css를 틈틈히 하겠다. 

    이번 과제를 하면서 뼈저리게 부족함을 많이 느낀 것이 자바스크립트 언어와 css다. 진작에 좀 해둘걸 하는 후회가 밀려오지만, 지금은 후회할 시간도 사치스럽다. 하루에 조금이라도 연습을 거듭하는 것에 집중해야 한다. 지금 내 목표는 운영진이 쫓아내면 나가는 거지 내 발로 스스로 항해99를 나가는 일은 없도록 존버하면서 결과를 낼 수 있도록 성장하는 것이므로, 할 수 있는 최선을 다할 작정이다. 

    • css 연습 : 이전에 구매해 놓고 보지 않은 웹개발 강좌의 css편을 하루에 2편씩 시청하고 하거나, 인터넷에서 찾은 블로그들의 css 소개를 보면서 연습을 하고 있다. 

    • 드림코딩엘리의 자바스크립트 강의(유튜브) 보기

    드림코딩엘리의 자바스크립트 강의는 바빠도 하루에 1강은 들으려고 한다. 특히 오늘 일요일에 들은 콜백함수 강의는 정말 신세계였다. 리액트 코드를 보면서 왜 저렇게 하는지 몰랐던 부분의 상당 부분이 콜백함수였다는 걸 알게 되니 리액트 강의 듣는게 이전 보다 좀 쉬워졌다. 어려운 건 몰라서 어려운 법이니 역시 알아서 쉽게 하고 반복하는 것이 성장하는 유일한 방법이다.

    드림코딩엘리의 자바스크립트 기초 강의 - 콜백함수편 https://www.youtube.com/watch?v=-cAPq25P-68

    더 쓰고 싶지만 이번주도 리액트 심화반 수업을 3-4일만에 몰아치기 해야 하는 어이없지만 해야만 하는 상황이니 이만 줄이고 강의를 들으러가야 겠다. 인터스텔라의 도킹씬처럼, 불가능해보여도(It's not possible) 해야만 하는(No, it's necessary!)일도 있는 법이니까. 다음주는 조금 여유가 있어서  WIL을 많이 쓰면 좋겠다. 

    댓글

금손이 프론트엔드 개발자가 되고자 오늘도 존버중