위코드에 들어와 3개월이라는 시간이 흘러 수료를 하게되었습니다.
성인이 되어 한 분야에 하루 12시간 이상씩 투자하며 몰입하고, 서로의 생각을 공유하고, 함께 무언가를 만들어가는 일
이런일을 서로 존중하는 문화속에서 생활한다는것은 정말 행복한 일이였습니다.
군대를 전역한 사람이 군대얘기만 하듯이 위코드 기간에는 어느자리에서든 개발에 대한 얘기뿐이였습니다.
어제한것도 개발이고 3시간전에 한것도 개발이고 내일 할것도 개발이기 때문이죠
위코드에 들어오기전 제가 정말 원하는것은 다른 개발자는 어떻게 할까?! 에 대한 해소였습니다.
정답이 아니라 나는 이렇게 했는데 다른 방법이 있나? 다른접근법이 있나?
혹은 나는 이툴을 사용하는데 다른사람들은 어떤 툴을 사용할까? 이러한것들 이죠
정말 변수이름하나 아니면 에러처리 방식, 에러 메세지 등 많은것을 공유하며 얻을 수 있어 정말 행복했습니다.
위코드 커리큘럼
위코드는 3달을 3등분으로 나누어서 커리큘럼을 진행합니다
- 1달차 : 파이썬 & Django를 배우며 프로젝트를 준비합니다
- 2달차 : 2주 단위 프로젝트를 2번에 걸쳐 진행합니다
- 3달차 : 기업협업에 나갑니다
첫 주차의 충격과 노력
저는 위코드에 들어오기전에 예비기간동안 HTML & CSS 그리고 파이썬에 대한 공부만 진행 하였습니다.
파이썬 코딩도장으로 공부하면서 하루에 한과목씩 블로그까지 작성하며 공부했는데 몇가지 어려운것들이 있었습니다.
- 클래스
- 데코레이터
- 제너레이터
- 리스트 표현식
- parameter와 arguments (패킹,언패킹)
이런 부분들은 개념만 조금 이해하고 넘어갔습니다.
하지만 위코드에 와서 나온 과제들은 이런 처음에 잘 이해하지 못했던것들을 블로깅 하는것이였습니다.
이중에 파라미터를 공부하는데 정말... 처음보는 개념들과 나름 이중에선 공부를한것이였는데 하나도 모르니 정말 어지러웠습니다.
"/" 요것과 "*" 요것을 마주했을때... 정말 처음본것이여서 (특히 슬래쉬는...) 옆에 동기와 함께 멘붕왔던걸 기억합니다.
구글링을 해봐도 다 똑같은얘기 조금더 딥하게 궁금한점은 다루지않는 글들을 보며 공식문서로 향했습니다..
번역본을 보는데 또 말이 이상해서 파파고도 돌려보고 하며 옆자리 동기와 함께 3일에 걸쳐 하나의 포스팅을 작성했습니다.
https://dingwan0331.tistory.com/76?category=1012381
function parameter 순서 (with arguments 처리 순서)
이 글을 보기 전에 봐주세요! syntax error : 함수 선언 단계에서 parameter의 순서가 잘못되면 나오는 error type error : 선언시 parameter가 잘못 되어도 error가 발생하지 않을 수 있다. 이경우 함수사용시 ty.
dingwan0331.tistory.com
- 파파고의 결과물.....
Django와 첫만남
우선 저는 교통이 굉장히 좋은편이라 1달차에는 매일 11시정도에 위코드에서 나와 집을 향했습니다.
백엔드는 2~3주차때 장고를 다루는데 공식문서를 보고 다루는 일이였습니다.
그때당시 ORM이 뭔지.... API가 뭔지도 잘 모르던시절이라 장고공식문서의 튜토리얼을따라 진행하는 과정이였습니다.
과정을 진행하던중 제성격상 속이 너무 답답했습니다...
아무것도 모르고 "이거 이렇게 해서 이렇게 쓰면 그냥 돼" 하는게 제성격에는 너무 맞지 않았습니다.
정말 "남들보다 뒤쳐지더라도 이건 쫌 확실히 알고 가야겠다"라고 생각하여 장고 공식문서를 번역하게 되었습니다.
너무 많고 처음엔 뭐가 뭔지 몰라 가장 처음에하는 Models의 종류를 번역해야겠다고 생각했습니다.
https://docs.djangoproject.com/en/4.1/ref/models/fields/
Model field reference | Django documentation | Django
Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate
docs.djangoproject.com
그렇게 이 페이지를 번역하기 시작했습니다.
백엔드 동기들은 블로그 하루에 3~4개 씩쓰는데 저는 가장 늦게까지 남아서 하루는 커녕 2~3일에 하나를 완성했습니다.
그렇게 해서 얻어낸 포스팅이....
https://dingwan0331.tistory.com/91?category=1028670
[Models] type of Field (ForeignKey not in)
**여기서 나오는 위젯이란 단어는 HTML 위젯을 의미함 숫자형필드 AutoField SQL에서 auto-increment 속성을 지니는 필드입니다. 직접 사용해서 지정할일이 거의 없습니다. 왜냐하면, Django 는 테이블 생성
dingwan0331.tistory.com
이런거였습니다 자세히 들여다 보면
이런 보잘것 없는 포스팅이였습니다.
"큰 텍스트 필드" 저건 공식문서 안봐도 알거 같습니다...
심지어 조금 후에 알게된 사실이지만 Django에서 지원하는 많은 필드들의 많은 기능들은 MVT의 Template 부분에서 작용하는 기능이였습니다. UrlField의 validator 같은것 말이죠...
이것말고도 ORM이나 Field look_up같은 몇가지 번역 포스팅이 있습니다.
정말 이 블로그 작성하고 너무 초라하고 허탈하고 너무 힘들었습니다.
하지만 실제 프로젝트 시작하며 ORM사용할때 많은것들이 제게 돌아왔습니다.
공식문서를 두려워하지 않는다던가 전체적인 ORM구조에대한 이해라던가 하는것들 말이죠
저는 동기분들에게 설명해드릴때 위의 포스팅을 키고 설명해드립니다.
위 블로그는 꾀나 정확하기때문이죠 정보가 없는 필드는 있어도 잘못된 정보가있는 필드는 별로 없습니다.
위코드 기간에 정말 저의 큰 자산이 되었습니다.
코드 보여주세요
제 성격은 굉장히 투머치한 성격이였습니다.
이런 성격때문에 정말 코드한줄 칠때마다 에러핸들링 코드도 하나씩 늘어났습니다.
처음 작성한 코드는 Errorr 클래스코드가 소스코드보다 길었습니다.
그래서 궁금했습니다. 다른사람들은 어떻게 코드를 작성했을까?
정말 코드를 보면서 다른사람의 사고방식을 습득하고 내 사고방식과 비교하며 배우는것들이 저에겐 너무 큰 즐거움 이였습니다.
"아?? 저렇게 하면 에러가 여기서 어차피 다잡히네??"하고
저보다 한참 짧은 코드를 보면서 "엥?? 이게 왜 코드가 잘 돌아가??" 라는 생각이 들며 충격에 빠지기도 했습니다.
변수 이름 짓는거 까지도 배울점이 정말 많았습니다.
프로젝트기간의 하루일과
오전일과
- daily scrum meeting
- 프론트 요구사항 분석
오후일과
- 질문사항 이 있을시 최대한 그 질문과 관련된 코드로 결과값을 만들어 내고 질문하기
- 프로젝트 코드 작성하기
- 돌아다니기
집에들어온 새벽
- 프로젝트 코드 작성하기
위코드에서 1달간 지내보니 남들이 어떤 사고방식을 일으키는지 그리고 코드에서 어떤 에러가 발생할 수 있는지에 대해 관심을 많이 가지게 되었습니다.
사람한명이 일으킬 수 있는 에러는 한정적이기에 일과시간에는 돌아다니면서 다른팀들은 혹은 다른동기들은 어떤 에러가 났다 찾아서 돌아다니게 되었습니다.
에러가 발생하면 조용히... 지켜보면서 어떻게 해결하나 관찰 하였습니다.
내가 해결할 줄 알아도 이사람의 배움의 기회를 뺏을순 없어 기다리다가 도움을 청하면 해결해주기는게 저의 오후 일과였습니다.
그러면서 배우는것이 몇가지 있었습니다.
요청이 들어와서 응답이 전해지기까지 요청의 흐름을 찾아다니며 print()를 찍어보기가 공부에 엄청난 도움이 되고
Django의 에러메세지는 상당히 친절하며(뭐가 잘못됐고 거기에 어떤형태의 값이 들어가야되는지까지 알려줍니다..)
오타 혹은 "," 가 가장 잡기 힘든 에러라는걸 배우게 되었습니다.
2차프로젝트때 카카오API로 소셜로그인을 진행할때는 구글링없이 request 모듈과 에러메세지로만 구현하기도 했습니다.
저희기수 백엔드의 많은 에러들을 해결하면서 한것은 print()찍기가 전부였습니다.
이제 이렇게 돌아다녔으니 집에와서는 새벽3~4시까지 필요한 코드를 작성했습니다.
이런시간에 강의를 들으며 공부하는것보단 코드를 작성하는게 효율이 더 좋아서 그런이유도 있습니다.
정말 너무 많이 아쉬운점
위코드 기간에 너무 아쉬운점은 프로젝트시작하면서 블로그와 개인공부가 거의 멈췄다는 점 입니다.
저희기수는 백엔드 9명 프론트 25명으로 백엔드가 비율이 정~~말 적은편이였습니다.
그러다보니 제가 구현하는 기능의 갯수가 곧 프로젝트의 규모가되었고 그러다보니 너무 욕심이 나서 공부할 시간에 코드를 짜기도 했습니다.
그러다보니 cs지식 공부나 자료구조 공부를 전혀 하지 못해서 너무 아쉬웠습니다.
나름 해보려고 하루에 백준문제 한문제씩풀기도 해보고 자료구조 책도 사봤지만 프로젝트를 시작하며 와르르르 무너졌습니다.
3개월 중에 유일한 아쉬움이 남는점이였습니다.
병렬적인 공부법을 시행하려고 요즘 노력중입니다.
'개발자 정진관 > 개발자 이야기' 카테고리의 다른 글
당신은 왜 노력을 하나요? (0) | 2023.01.12 |
---|---|
치킨이 먹고싶어서 만든 python 랜덤함수.. (0) | 2022.10.02 |
[고민]비전공 개발자는 어떻게 공부 해야할까? (0) | 2022.07.24 |
[Wecode] 개발자 회식 정총무의 정산이야기 (0) | 2022.07.03 |