5월 초에 첫 휴가를 다녀와서 격리가 풀리자마자 1일 1 커밋을 시작했다.
처음 시작한 취지는 의미 없이 허비하는 시간을 줄이고 공부하는 습관을 기르기 위함이었다.
『지속하는 힘 - 고바야시 다다아키』 에서 특정 행동을 66일간 반복하면 습관이 된다는 문장을 보고 딱 66일 동안만 하루도 빠짐없이 공부하고 기록해보자 라는 생각으로 시작했는데 100일 넘게 지속하게 되었다.
하루 종일 힘든 작업을 했든, 개인정비 시간에 근무가 있든, 어쨌든 매일 적어도 1시간은 공부할 시간이 있는 환경에서 근무하고 있기에 하고자 하는 의지만 있다면 1일 1 커밋은 어렵지 않은 도전이라고 생각했다.
115일간 400여 개의 커밋을 했는데 주로 알고리즘 공부와 소켓 통신 공부를 했다.
각각의 레파지토리에 대해 간단하게 정리하자면,
1. Block_Chain
블록체인이 어떤 것인지 기술적으로 알아보고 싶어서 관련 인프런 강의 몇 개 들으면서 solidity 언어 기반으로 간단한 dapp 예제를 따라 해 보았다. 깊이 있는 공부가 목적이 아니었기 때문에 궁금증을 해소할 수 있을 정도까지만 공부했다. 이 공부를 통해서 블록체인 기술이 무엇인지, 암호화폐는 어떤 상황에서 사용되는 것인지, 탈중앙화가 무엇인지 등과 같은 상식을 얻을 수 있었다. 이더리움에 대한 믿음이 생겼다.
2. my_chatting_program (진행 중)
제목 그대로 내가 사무실에서 직접 사용할 채팅 프로그램을 만들어 보았다. 초기 구상 당시에 생각했던 기능들은 모두 구현하였고 실제 환경에서 사용까지 성공했다. 앞으로 유용하게 쓰일 듯하다. 예외 처리와 피드백 반영 등 아직 유지보수가 많이 필요하다. 시간 날 때마다 계속 업데이트할 것이다.
프로젝트 기능 설명, 진행 과정 등에 대해서는 별도 게시물로 정리할 계획이다!
3. Algorithm Study (진행 중)
알고리즘 스터디 레파지토리에는 총 3개의 디렉터리가 있다.
- BOJ_PS
- 백준 온라인 저지(https://www.acmicpc.net/)에 있는 알고리즘 문제를 풀고 코드를 업로드한다.
- inflearn_lecture
- 인프런에 있는 알고리즘 강의(『it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩 테스트 대비』를 수강하며 배운 내용, 예제 코드를 업로드한다.
- mili_study
- 군대에서 알고리즘을 공부하는 사람들을 모아 매주 5~6문제를 선정하고 풀이 방법을 공유하고 피드백하는 스터디이다.
- 4주차 이후부터 스터디 활동 편의를 위해 github organization 활용했다!
4. TCP-IP_Socket_Programming
『윤성우의 열혈 TCP/IP 소켓 프로그래밍』 책을 정독하고 공부한 이론, 개념과 예제 코드를 정리하였다.
약 4달동안 위와 같이 공부를 진행하였으며 이제 115일간의 내 심경 변화에 대해서 정리하고자 한다.
먼저 초반 한 달 정도는 열정을 가지고 의식적으로 '공부해야 해!!'라는 생각으로 사지방에 갔다. (휴가 버프가 컸던 것 같다.) 굉장히 의욕 넘치고 재미있었던 한 달이었다. 평일에 4시간 반을 사지방에 있었던 날도 있었다.
두 달째가 되어가는 시점에서 고비가 왔다. 때마침 바쁜 시기가 되어 업무 강도도 빡세지고 평일 야근, 주말 출근도 자주 하게 되었다. 몸이 힘들다 보니 공부 의욕이 사그라들고 조금만 쉬자는 생각이 나를 침대로 이끌었다. 침대에 누워서 유튜브를 보던 중 현타가 왔다. 아직까지도 의지가 부족한 내 모습이 부끄러웠다. 그래서 바로 커피를 타서 사지방으로 갔다. 솔직히 전만큼 효율적인 공부를 하지는 못했지만 '이정도도 못 버티면 아무것도 할 수 없다.'는 생각으로 하루에 알고리즘 문제 하나라도 풀면서 두 달 동안 1일 1 커밋을 지속하였다.
두 달이 넘어갈 때쯤 되니까 '공부 해야해!' 가 아니라 '오늘은 어떤 문제 풀지?', '아 어제 못했던 거 마무리해야지'와 같은 생각이 들었다. 공부가 하루의 당연한 일과로 느껴졌다. 66일의 법칙이 사실이었던 것이다!! 이때부터는 그냥 늘 그랬듯이 무의식적으로 매일 사지방에 갔다. 그렇게 115일 차까지 계속했다.
그러다가 어제 커밋을 일부러 안 했다. 이유를 간단히 설명하자면, 기존에 계획했던 채팅 프로그램 제작, 알고리즘 문제집 풀이 계획 등이 9월 중순을 기점으로 거의 마무리가 되며 이제 그간의 학습을 정리하고 새로운 출발을 준비하는 시기가 되었다. (알고리즘 스터디도 잠깐 멈춰야 하는 상황이었다.) 즉, 의미 있는 커밋 거리가 없었다. 하지만 100일 넘게 커밋을 해왔으니 멈추면 안 된다는 강박관념에 부실한 커밋을 계속했다. 일주일 정도 그랬다. 그러다 보니 커밋을 하는 것이 내 공부를 기록하고 나중에 되돌아보기 위함이 아니라 지금까지 매일 했으니 오늘도 해야 하는 것으로 느껴졌고 부담감이 생겼다. 이는 나에게 좋은 점이 하나도 없다고 판단되어 일부러 커밋을 멈췄다. 처음엔 이래도 되나 싶었지만 막상 안 하고 나니 홀가분해졌다. '공부하는 습관 형성'이라는 기존 1일 1 커밋의 의도와 목표는 달성했으니 전혀 후회하지 않는다. 얼른 다시 의미 있는 커밋을 시작하고 싶다.
이렇게 내 인생 첫 1일 1커밋이 마무리되었다. 되돌아보면 꽤 성공적이었다고 생각한다. '시간을 허비하지 말고 열심히 살아야 한다'는 생각과 1일 1커밋이라는 공부 동기부여 요소가 잘 맞물려서 4달 여간 지속할 수 있었던 것 같다. 그리고 이번 도전을 통해 나에 대해서 확실하게 알게 된 점이 있다. 나는 매일 비슷하게 꾸준히 공부하는 것보다는 꾸준히 공부하되, 어느 정도 강약을 조절해가며 열심히 할 때는 엄청 열심히 하고 쉴 때는 쉬어가는 탄력적인 패턴이 지금의 나에게는 적합한 것 같다. 공부뿐만 아니라 운동, 업무 등 모든 것에 해당되는 듯하다.
그동안의 공부를 잘 정리하고 휴가 갔다 온 후 다음 목표를 향해 더 열심히 달리자!!
'Retrospect' 카테고리의 다른 글
100일 (1) | 2022.02.19 |
---|---|
2021년 회고 (0) | 2022.01.01 |
2021.08.16. 첫 게시글 (0) | 2021.08.16 |