노마드 웹기초 스터디 10기를 수료했습니다. 사실 시작은 기대하지 않았습니다. 기초적인 HTML, CSS, Javascript는 많이 사용해보기도 했고, 어느정도 이해하고 있기 때문에 이 스터디가 나에게 도움이 될까? 싶었습니다. 물론 기대감에 비해 금액도 결코 가볍게 들을 만한 액수가 아니기 때문에 시작도 전에 고민을 많이 했습니다.
하지만 스터디 기간동안 고민했던 과정이 우습게 느껴질 만큼 정말 재미있었습니다. (얼마나 재밌었으면 우수 졸업했습니다!) 글을 시작하기 전에 추천의 여부를 말해보자면, 저는 적극 추천합니다. 이 활동을 통해서 얻은 게 많았고 지금도 해당 커뮤니티에서 공부를 이어가고 있기 때문이죠.
이 글은 다음 번에 노마드 코더 스터디를 입문하시는 입문자 분들을 위한 저의 개인적인 소감을 작성해 보고자 합니다.
노마드 스터디를 선택한 이유
때는 2023년 3월 저는 군대를 갓 전역하고 휴학을 하는 백수가 되었습니다. 군대는 매우심심하고,군대에서 어느 정도 짬이 찬 남자라면 자신의 어리석음을 깨닫고 미래를 위해 생각을 많이하게 됩니다. 저도 그랬기 때문에 전역 후 어떤 방식으로 공부하면 좋을지 생각하던 도중 평소 즐겨보던 노마드 코더 유튜브와 인스타에 올라온 10주 스터디 공고문을 보게 되었습니다.
하지만 저는 “기초”에는 관심이 없었습니다. 일단 기초는 너무 쉽지않을까 자만하기도 했고 해보고 싶은건 React스터디 였지만, 언제 다음 기수를 시작할지도 잘 모르고 저는 뭔가 의무적인 무엇이 이끌어줘야 공부 능률이 올라가는 스타일이기 때문에 지금 당장 모집을 하는 웹기초밖에 선택지가 없었습니다.
저는 그래서 네트워킹을 목적으로 지원을 하게 되었습니다. 시작하기 전부터 환불할까 싶은 마음도 들고, 다른 부트캠프가 더 좋지 않을까 싶었지만, 이왕 하는거 다시 기초를 보는 것도 나쁘지 않겠다고 생각이 들어 진행하게 되었습니다. (니코쌤의 개인적인 팬이기도 하구요 ㅎㅎ)
이거 너무 맛있는 데?
제가 한 걱정을 비웃기라도하듯 노마드 스터디의 활동은 저에게 정말 많은 도움이 되었습니다. 생각보다 강의의 구성도 괜찮고 참여하시는 분들의 의지는 제가 참여했었던 다른활동들에 비할게 못될 정도로 의지가 뛰어났고, 추가적인 부분들도 전부 맘에 들었습니다.
생각보다 알찬 강의 구성
일단 강의는 3개의 파트로 구성되어 있습니다. HTML + CSS 기초, Javascript 기초, Express 서버를 이용한 유튜브 웹 풀스택 조금 구식 방식이지만, 웹 생태계에 전반적인 부분을 맛보기에 부족함이 없는 수준이었고, 강의가 제가 공부하는 방식으로 되어있어서 잘맞았던거 같습니다.
미리 듣고자 하시는 분들에게 주의드리자면, 노마드 코더는 이론을 A 부터 Z까지 알려주는 강의가 아닙니다. 이 코드는 어떠한 문법이다 보다는 코드 전체가 동작하는 원리와 노가다하는 방법부터 훨씬 이상적인 코드를 작성하는 과정을 보여줍니다. 또한 각 라이브러리를 사용하는 이유와 라이브러리끼리의 동작 과정을 보여주는 강의이기 때문에 큰 틀을 보기에 좋습니다. 물론 0부터 시작해서 모든걸 차근차근 알려주는걸 좋아하시는 분들은 안 맞을 수도 있습니다.
코코아톡 클론
HTML + CSS 강의에서는 태그의 종류와 CSS의 작성방법을 알려주십니다. 제가 이 파트에서 맘에 들었던 것은 각태그들의 쓰임과 저에겐 부족했던 CSS의 FlexBox를 사용하는 방법과 연습을 시켜주고 에니메이션도 약간 다루기 때문에 기초적인 웹디자인의 흐름을 알기에는 좋았던거 같습니다. 에니메이션에 심화과정을 더 듣고 싶다면, css 심화 강의도 있답니다.
전 코코아톡 강의에서 아이폰 모양으로 클론해보았습니다. 이 강의를 접하기 전에 css는 코드를 이해하지 않고 긁어 사용했었는데, 강의 이후에는 다른 css 코드를 보기에 부족함 없는 수준이 된거 같습니다. 저는 css를 이해하는 데에는 이 강의만으로 충분 했습니다.
JS크롬앱 만들기
JS모맨텀 앱클론 강의는 이제 프론트엔드에서 사용하는 기초적인 JS강의를 시작합니다. 크롬 익스탠션인 모맨텀 앱을 직접 클론해 보면서 WEB API인 fetch와 Geolocation API를 사용해보고, 날씨 open API를 통해 웹 어플리케이션을 만들어 보게 됩니다.
JS모맨텀 강의는 무료에다가 정말 기초적인 강의라 JS의 이론적인 내용이 빈약하다고 느낄 수 있습니다. JS의 이론적인 부분은 노마드코더에서 듣기는 적합하지 않다고 생각하고 요즘엔 유튜브나 이론적인 강의가 많으니 따로 공부해보시고, 모맨텀 앱을 만들면서 다른 open API들을 이용해서 부가적인 기능을 만들어 보세요. 저는 웹에서 제공하는 알림 API를 이용한 타이머 푸쉬 알림과 CSS를 이용한 다크모드를 구현해봤는데, 흥미로운 경험이였습니다.
제가 만든 모맨텀이 궁금하시다면 아래의 링크로 들어가보세요.
https://github.com/ATeals/momentum_clone
위튜브 클론
대망의 위튜브 클론입니다. node.js의 프레임워크인 express를 이용한 백엔드 웹서버와 프론트엔드 번들러인 webpack, 뷰엔진 pug를 이용한 풀스택 강의입니다. 조금 구식 방법이라면 구식방법이지만, 전반적인 웹의 내용을 담고 있고 프론트 + 서버 + DB를 전부 다루기 때문에 가장 만족스러운 강의입니다.
위튜브 클론에서 가장 만족스러웠던 부분은 직접 webpack 번들 config파일을 작성해보면서 동작과정을 생각해보는 점 이였습니다. 사실 react를 사용하기위해 CRA, VITE, NEXT등을 사용하면 번들러를 프레임워크나, 개발자도구가 설정을 해주기 때문에 생각해볼 수 없는 부분을 config파일을 작성하고 빌드할 때, 동작하는 방식을 보면서 번들러의 이해도가 이전보다 늘은거 같습니다.
또한 문서기반의 디비인 몽고디비를 사용해 video, user CRUD를 구현해보고 세션을 이용한 인증, 깃허브 Oauth를 이용해 깃허브 유저 데이터를 내 유저 데이터와 연동하기는 웹 어플리케이션에서 기본적으로 구현해보고 싶었던 내용들이라 정말 만족했습니다. 물론 express를 이용해 db모델, 컨트롤러,라우터를 분리하는 폴더 구조도 한번 살펴볼 수 있었죠.
https://github.com/ATeals/nomadecoder-youtube-clone
열정적인 스터디원들
이건 좀 사바사일 수도 있지만, 전반적인 스터디의 분위기는 다같이 열심히 하자는 분위기이고, 현업을 가진 TA분들과, 일반 유저 분들에게 스터디중 궁금한점, 더 나아가 개발자라는 생태계에서 궁금한 점을 가볍게 물어볼 수 있는 환경이 좋았습니다.
저는 지금까지, 멋쟁이 사자처럼, 구글 GDSC, 대학내 코딩동아리등 꽤 스터디 활동을 해보았지만, 가장 참여도가 높다고 느껴졌습니다. (이건 정말 개인적인 생각입니다) 일일 스프린트, 주간회고를 통해 회고를 하면서 다른 사람의 코드나 생각을 들어 볼 수도 있고, 팀별 활동으로 다른사람과 코드에 대한 이야기도 할 수 있기 때문이죠.
심지어 제가 활동하던 분들과는 추가적으로 많은 스터디를 진행했습니다. JS의 추가적인 공부를 위해서 모딥다 스터디를 진행하기도하고, 알고리즘을 위한 알고리즘 면접스터디, 글쓰기를 위한 글쓰기 모임, 오프라인 모각코도 있구요. 운영진 분들도 이런 스터디내부 사이드 프로젝트를 우호적으로 봐주시는 분위기이다보니 정말 좋았습니다. 그렇다고 너무 딱딱하는 공부 분위기도 너무 친목만 우선시 하지 않고 놀땐 놀고 할땐 하는 분위기가 잡혀있는 스터디라고 생각합니다.
단점이 없는 것은 아닙니다. 열정적인분 들만 있다면 좋겠지만, 그럴수는 없겠죠. 실제로 제가 활동하던 당시 다른 조는 팀장님을 제외하고 전원 탈주하는 참사도 있었습니다… 그럼에도 다른조원 분들과 유연하게 활동할 수 있고, 결국 졸업하면 모두 함께 활동하기 때문에 아예 아무것도 못하진 않은거 같아요. 실제로 해당 조장님은 저와 함께 아직도 사이드 스터디를 하고 계십니다.
그래서….
노마드 스터디는 개발공부를 혼자보다는 여러사람들과 하고 싶고 전반적인 웹의 흐름을 깊지 않게 한번 보고 싶은 분들에게 추천합니다. 물론 웹기초는 지금 현업에서 사용하는 기술은 아니기때문에 진부한 느낌이 들 수도 있어요. 그런분들은 보다 최신 기술인 React 스터디나 플러터 스터디를 추천드립니다.