클론 코딩 100% + a 활용하기

Yeshin Lee
3 min readMay 22, 2022

--

저는 (그 당시에도 유명했지만) 지금은 더욱 유명해진 노마드코더로 웹에 입문하게 되었습니다. 노마드코더 강의는 (챌린지를 제외하고) 클론 코딩으로 진행되고 있는데, 공부해나가면서 들은 생각은 ‘정말 이것만 배우면 되는건가?’ 였습니다. 후에 챌린지를 시작했을 때는 하루하루 꾸역꾸역 해 나간 기억이 있습니다. 지금 생각해보면, 당연히 힘들 수밖에 없었다고 생각합니다.

  1. 빠르게 흐름을 파악한다고 진도를 빼는 데 목적을 두었습니다. 이 과정에서 프로젝트 기한을 두지 않았었기 때문에, 느슨하게 생각했던 것도 한몫했습니다.
  2. 그 당시 구글링에 익숙하지 않았기 때문에 에러를 확실하게 해결하지 못하고 강사의 코드에만 집중했었습니다.
  3. 공부한 것들을 제대로 정리하지 않았다. 분명 어딘가에 정리했는데, 지금까지도 못 찾은 것을 보아하니 하지 않은 것과 다름없다고 생각합니다.

그래서 어느 순간부터 강의를 완료하고 챌린지를 완료해도 별로 뿌듯하지 않았습니다. 그 당시의 제가 생각한 클론 코딩은 개발 입문용으로는 좋지만, 어느 정도 한계가 있다고 생각했습니다. 혹은 제 스타일과 안 맞는 방식이거나 요. 그런 일이 있고, 2년 후에 다시 마주할 일이 생겼습니다.

Vue.js를 이용하여 To-Do List를 만들 기회가 있었습니다. 이전에 Javascript로 To-Do List를 만들어보았지만, Vue.js는 처음 접해보는 프레임워크였습니다. 더욱이 Javascript는 2년 전에 LifeOn42를 위해 사용해본 것이 전부이고, 그마저도 async 개념에 막혀 내려놓은 상태였습니다. 지난 경험을 떠올려 이번에는 다르게 접근해보아야겠다고 생각했습니다.

  1. 흐름을 빠르게 파악하기 위해 ‘1시간 만에 ~’ 영상을 보았습니다.
  2. 클론 코딩 영상을 보면서 그대로 따라 했습니다. 똑같이 타이핑하는 만큼, 코드를 설명해줄 때마다 전부 주석을 달아 흐름을 최대한 이해하려고 했습니다. 후에 이 코드의 동작에 대해 이해했다고 생각이 들면, 주석을 지웠습니다.
  3. 강의에서 설명하지 않은 부분(script 태그 안의 name은 무엇인지 등)을 직접 찾아보면서 최대한 자세하게 뜯어보았습니다.
  4. 추가하고 싶은 기능 리스트를 만들고 하나씩 추가했습니다. 처음에는 Vue.js의 공식문서를 빠르게 훑어보려고 했으나, 5일이라는 짧은 시간 내에 완성해야 했기 때문에, 기능들을 추가하면서 그때마다 알아보는 방향으로 틀었습니다.
  5. 그날 공부한 내용은 notion에 적되 프로젝트 마감 후, GitHub Wiki에 옮겨 적었습니다. Wiki 의 본 목적(개발 문서)이기도 하고, 해당 프로젝트에서 가장 접근성이 좋으므로 선택했습니다.

사실 계획했던 모든 기능을 다 넣지 못했습니다. 하지만, 강의만 들었을 때 이해하지 못했던 부분들을 알아가면서 머릿속에 좀 더 남았습니다. 또한, 그동안 백엔드를 주로 공부했었는데, 프론트엔드를 공부하면서 데이터가 화면에 출력되는 과정을 좀 더 세부적으로 알 수 있었습니다. 확실히 과거의 저에 비해 한 단계 성장했다는 것을 느껴 뿌듯했습니다.

클론코딩은 프로그래밍 언어를 배우는 하나의 도구입니다. 도구라는 것은 어떻게 활용하느냐에 따라 도움이 될 수도 안될 수도 있기 때문에, 나에 맞게 사용하는 것이 중요할 것 같습니다.

--

--

Yeshin Lee
Yeshin Lee

No responses yet