brunch

You can make anything
by writing

C.S.Lewis

by 마뮤즈 Mar 02. 2021

비전공자, 기획과 개발로 첫 해커톤을 준비하다 (1)

멋쟁이 사자처럼 직장인 5기, 코딩 공부법과 커리큘럼 그리고 느낀 점

2020년 8월, 우연히 보게 된 광고에 간단한 포폴로 신청한 서울 멋직 5기에 합격했다!

멋쟁이 사자처럼(이하 멋사)은 원래 비전공자를 대상으로 코딩 교육을 하는 대학 연합 동아리이다. 멋사는 후기도 꽤 있는 편이다. 하지만 멋쟁이 사자처럼 '직장인'(이하 멋직) 클래스에 대해선 정보가 많이 없었어서 나 또한 지원을 고려했었기 때문에, 간략하게나마 적어본다.



01. '멋쟁이 사자처럼'이 뭐길래


"Hack your life"

2013년, 서울대학교에서 이두희 대표가 1기를 시작으로 '기술적 장벽 때문에 자신의 뜻을 펼치지 못하는 비전공자 분들을 도와주고 싶었다'라는 모토로 시작된 멋사는 앞서 말했듯, 대학 연합 동아리이다. 

2020년 기준, 48개의 대학에서 교육활동이 진행되고 있으며 특히, 4기 스폰서로는 구글 코리아가 메인 스폰서로 장소를 제공해주기도 했고, 아마존 웹 서비스 등의 큼직한 스폰서를 받았다고 한다. 멋사 출신 서비스로는 '자소설 닷컴', '비프로일레븐', '탈잉', '눈누', '마스크 알리미' 등이 있다.

(위키백과, 나무위키 등 참고)


멋쟁이 사자처럼 직장인

멋직은 말 그대로 '직장인들도 웹 서비스를 만들 수 있다'라고 정리할 수 있는 것 같다. 5기 기준, 매주 화/토 혹은 수/토, 2시간 정도의 수업시간을 통해 웹 서비스를 만들기 위한 개발을 공부한다.



02. 멋직 신청, 왜 하게 되었나!


나는 개발과는 거리가 먼 비전공자였다. 실용음악을 전공했고, 현재 회사에서는 웹 기획과 콘텐츠 기획 등을 담당하고 있고, 콘텐츠 디자인 외주를 간간히 하는.. 아무튼 프로그래밍과는 거리가 멀었다. 컴퓨터 화면에 alert창(이것도 공부하고 나서야 알았지만)이 뜨면 컴퓨터를 잘 아는 친구에게 연락해서 여기서 OK를 눌러야 하는지, cancel을 눌러야 하는지 묻는 정도였다.


'개발', 하면 까만 화면에 알 수 없는 영어들을 가득 채우고, 컴퓨터에 cmd를 켜서 그 영어들을 살펴보는 그런 장면‥ 이 상상의 전부였을 정도의 특급 문외한이었다. 하지만 나는 웹 서비스를 기획하고 또 만들어나가고 싶은 입장으로써 다행히도(?) '개발자의 언어를 이해하지 못해 소통이 힘든 것만큼 고통스러운 게 없을 것'이라는 정도는 알고 있었다. 그래서 수강료는 비쌌지만 덜컥 멋직 5기에 신청을 했고, 합격을 했다.


결과 발표날엔 꽤 긴장(?)하긴 했다.


03 커리큘럼, 공부법과 느낀 점


< 강의 커리큘럼 >

간단히 정리하자면, 아래와 같다.

Web basic

HTML & CSS 

Python

Django

Git & Github

API, Crawling

Deploy


1) Web basic, HTML & CSS, Python 기초와 코드 라이언 (온라인 수업)

여기서 HTML & CSS과 Python 초반은 코드라이언 강의를 통해서 온라인으로 학습했다. 이두희 대표님이 직접 강의 녹화하신 것이었는데, 강의 중간에 내가 직접 코딩해볼 수 있는 비디팅(video editing) 기술은 좋은 수업 방식이라고 생각했다. 하지만 듣다 보니 정말 개발 초보를 위한 강의인 것이 느껴졌다. 그래서 그런지 개인적으로는 강의 속도 조절이 불가능했던 것, 강사님의 같은 말 반복으로 건너뛰기를 열심히 했던 것, 러프한 수업 진행 등의 단점이 느껴졌다.


그리고 사실 HTML & CSS는 지나고 나니 강의보단 일단 직접 서비스를 만들기 시작하면서 직접 원하는 기능을 찾아 적용하면서 훨씬 실력이 늘었다. 그래도 아예 개념조차 모르는 상태에서는 간단한 개요 수업은 필요하다고 생각한다. (+ 코드라이언 수업으로만은 부족을 느껴서 개인 공부로 CODECADAMY로 학습을 병행했다. )


마지막으로 덧붙이자면, HTML과 CSS를 배울 때, 이건 별거 아니구나 싶었었던 그 시점에서.. Javascript 공부를 시작했어야 했다. 디자인뿐만 아니라, 웹의 동적 기능 개발에 있어서 JS는 필수였다. 왜 가르쳐주지 않는가.. 에 대한 질문엔 '12주로는 모두 하기 부족하다'라는 답변이 있었다. 물론 인정하는 부분이지만, 개발자가 목표라면 절대 기본은 꼭 알아야 하는 그것은 바로 JS ..



2) Python 그리고 예/복습

본격적인 Python 교육은 매주 수/토요일 삼성중앙역 근처 코드라이언 강의실에서 이루어졌다. 그리고 Notion을 통한 공지와 Slack을 통한 QnA 등 소통 방식은 요새의 서비스 다운 좋은 방식이라고 생각했다.


Python 까지는 개인적으로 예/복습을 꾸준히 했었다. 퇴근길 지하철에서 보충 강의 영상을 들으면서 갔고, 노션에 수업시간에 필기한 것들 + 복습할 때 자료 보충까지 더해 정리하면서 공부했다. (나중이 되니 공부 자료를 적어둔 건 정말 다행..) 하지만 Python의 A to Z를 배우지는 못할 터, 복습하면서 보충하고 싶은 부분들은 TCP School유튜버 조코딩님의 Python 기초 강의들을 보면서 공부했다. 사실 멋직에서 기초를 배운건 확실하지만, 파이썬 강의는 조코딩님의 강의가 나한텐 더 잘 맞았다. 


이 기간 동안 내 공부법(?)을 다시 정리하자면

1) 예습 : 멋직의 보충자료 강의 영상 보기

      

* 오프라인에서 해주시는 강의를 온라인으로도 제공해줬다. 생각보다 예습으로 인한 이해도 차이는 컸다.


2) 수업 : 수업 자료 꼼꼼히 보면서 수업 듣고, 내용은 주석 활용 & 노션에 필기 


내 코딩공부 노션 페이지!

      

* 개인적으로 웬만하면 처음엔 다 받아 적고, 복습할 때 한 번 더 정리하는 편이다. 뭐가 중요한 지 모른 상태에서 중요도를 생각하면서 적는 건, 꽤 어렵다고 생각하기 때문.. 그리고 실습 중 빠르게 지나가는 내용들은 그냥 주석 처리해서 파일마다 적어뒀다. 주석으로 정리한 건 웬만해선 다시 보게 되지는 않는다는 단점이 있다.


3) 복습 : 수업시간 정리한 내용 + TCP School로 필기 내용 정리 -> 조코딩 python 기초 강좌로 수업 내용 부분 복습 -> 멋직 실습 예제 풀기

왼쪽 > 조코딩님 강의는 진짜 하나도 안빼놓고 다봤다! / 오른쪽 > 노션에 TCH School 자료를 보충해가며 정리한 내용

      

* 뭐든 복습이 8할이다.


확실히 예/복습을 잘해갔을 땐, 수업시간 집중도 더 잘됐고 중간중간 강사님의 질문에 대답도 술술 나왔다. 하지만 시간이 없어서 공부를 미리 못해간 날이면 자신도 없고, 내용이 머릿속에 잘 들어오지 않았다. 



3) Django

이번 기수는 장고를 사용한다고 들었다. Python이 프로그래밍 언어였다면, Django는 Python으로 만들어진 오픈 소스 웹 프레임워크다! 처음엔 왜 다른 프레임워크가 아닌 Django일까!라는 생각이었지만 한참 배우다 깨달았던 건, Django는 나 같은 초보도 좀 더 수월하게 웹 서비스를 만들 수 있도록 미리 준비해놓은 게 많달까..? 아무튼 뭐든 그렇듯 장단점이 있는 것 같다.

 

가장 중요한 장고 수업 첫날은 멘붕이었다. 장고를 처음 배울 때쯤, 내가 입에 달고 살았던 말은 '모르는 게 뭔지 모르겠는데 어떻게 하나요..'였다. 모르면 질문을 하라는 데, 정말이지 내가 뭘 모르는지 모르겠었다. 파이썬 공부할 때처럼 공부를 하려 해도 이건 그런 방법이 통하지 않았다. 


나는 이해가 되지 않으면 다음 단계로 넘어가는 게 어려웠다. 그래서 장고 초반 수업 때는 머릿속이 엉망진창이었던 것 같다. 처음 Django 프로젝트를 실행하는 과정을 이해하고 외우는 데만 꽤 오랜 시간이 걸렸다.


그래서 난 그동안 해왔던 복습 방법을 아예 바꿨다. 나한테 도움이 가장 많이 되었던 복습 방법은, 반복이었다. 



앞서 말한 것처럼 수업시간에 나는 모든 과정을 나의 노션 페이지에 꽤 디테일하게 기록했다. 


예를 들어 강의 자료에는 A : B다 라고 나와있지만, 내 노션에는 A:B를 언제 해야 하는지에 대한 순서와 그 이유까지 적었다.



-> 강사님이 'vs code에게 우리가 가진 파이썬으로 사용해 줘!'라고 부탁해야 한다고 말씀하셨을 때, 한 번에 이해가 되어서 그 멘트 그대로 적었다.









이런 식으로 정리한 노트를 보고 프로젝트 실행하는 것까지만 몇 번을 반복했는지 모른다. 2시간, 1시간, 몇 십분.. 반복할 때마다 문제는 어김없이 생겼지만 시간은 줄었다. 해당 과정은 나중에 서비스 개발을 시작했을 때 앞부분을 다시 공부해야 했을 수도 있는 불상사를 미리 막아주었다. 


이 외엔 예습과 수업 집중에 두었다. 조코딩님의 Django 강의가 없기도 했지만, 이제는 '보충 강의나 자료 < 수업' 일 수밖에 없는 내용들이었기 때문이다. 아무튼 기나긴 Django 수업에서 여전히 가장 어려운 부분은 Model이다. 이해는 되지만 이해되지 않는 것들의 투성이?.. 아니 어쩌면 이해하고 싶지 않은 부분인 것 같기도 하다. Model을 공부하면서 나는 백엔드와 맞지 않는 것 같아 라는 생각을 참 많이 했다. 



4) Git & Github

왜 이렇게 뒷부분에 알려주는 건가 싶었던 부분이지만, 다 지나고 나니 처음 알려줬으면 이해하는데 더 오랜 시간이 걸렸겠다- 싶기도 한 Git과 Github.. 개발자에게는 떼어놓을 수 없는 필수 툴(?)인 것은 확실하다.

하지만 여전히 나는 git commit과 push를 할 때마다 떨린다. 덕분에 git status - git add - git commit은 습관이 되었고, 이제는 그래도 팀원의 branch를 가져와 merge 하는 게 꽤 흥미롭다. 어쩌면 git이 있어서 좀 더 신중하게 순서를 생각하면서 개발하고, 팀원을 생각하면서 정리하는 것 같다


Git& Github 수업 이후 어느 날엔 팀원들과 다 같이 메인 강사님의 퇴근길을 붙잡고, 보충 강의를 들었다. 그만큼 걱정하면서 배웠던 부분이지만 우리 팀은 그래도 퇴근길 우리를 불쌍히 여겨주셨던 메인 강사님과 멋진 보조강사님, 그리고 그 모든 과정을 가장 깊게 공부했던 든든한 팀원 덕분에 Git과 Github의 험난한 길목에서 무사할 수 있었다.


5) API & Crawling & Deploy

사실 API와 Crawling은 우리의 웹서비스에서는 사용할 일이 없겠다 싶기도 했고, 한창 서비스 개발에 몰두하고 있을 때라 수업에 크게 집중하지 못했던 것 같다. 하지만 수업이 끝나고 얼마 안 돼서.. 생각지도 못하게 서비스에 API를 써야 하는 상황이 왔고, 나는 그 하나의 기능을 붙들고 이틀을 싸웠다.


그리고 Deploy.. 온 강의를 통틀어서 가장 어렵고, 많은 내용의 강의였지 싶다.

처음으로 '저건 글자고, 나는 일단 따라 한다..'였고, 수업마다 진이 빠져서 너무 힘들었다. 'AWS에 내 서버를 구축하고 직접 구매한 도메인을 연결한다'라는 게 정말 말이 쉬운 거였다. 사실 지금은 강의 내용이 거의 기억이 안 난다. 하지만 정말 알찬 강의였음은 분명하다. 다른 강의들은 다른 곳에서 배울 수 있다 해도, Deploy에 대한 강의는 메인 강사님이셨던 희햄님이 최고일 것 같다.. 그저 내가 서비스 개발에 더 몰두해있느라 집중하지 못한 게 잘못이라고 본다.




[2편] 비전공자, 기획과 개발로 첫 해커톤을 준비하다 (2) 

Copyright 2021. 임지은 All pictures cannot be copied without permission.

매거진의 이전글 SQL, 데이터 분석 공부 시작
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari