1일 1커밋 1년을 달성하다.

작년 12월 시작.

1년간 연속으로 성공하다.


1일 1커밋 그리고 1년

  • 작년 12월부터 시작한 1일 1커밋이, 오늘 날짜로 365일차를 채웠네요.

  • 사실 오늘이 1년차 인지도 모르고 있다가 확인해보니, 깃허브의 모든 잔디밭을 다 채우고 있는걸 보고서야 1년차에 성공했다는 것을 알게 되었어요.


왜 시작했나?

존경 스러운 사람을 모방하자

  • 시작하게 된 계기는 사실 별거 없습니다.
    • 사실 계기가 거창했으면, 오히려 1년을 못했을것 같아요.

우아한 형제들의 이동욱 개발자님

  • 제가 1일 1커밋을 접하게 된것은 유튜브에서 배달의 민족 이동욱 개발자 님의 영상 을 보고 접하게 되었습니다.

  • 영상 업로드 날짜를 보면 2019년 12월 3일, 영상을 본지가 거의 딱 1년이 됐네요.
  • 영상을 처음볼때 든 생각은
    • 이런분들도 있구나, 정말 대단하다. 저걸 어떻게 하지? 라는 생각이 들었던것 같아요.
  • 그리고 한편으로는
    • 나도 할 수 있을까? 한번 해볼까? 라는 생각이 동시에 들었었어요.


라인의 굳긷 개발자님

  • 실천하게 된것은 굳긷님의 1일 1커밋 을 보고 시작하게 되었습니다.
    • 작년 12월, 졸업을 앞두고 있던 4학년의 저는 많은 실패를 맛보고 힘들어하던 시절이었고, 그때 굳긷님이 저에게 말씀을 걸어주셨던게 굉장히 힘이되었던 기억이 나네요.

    • 그래서 당시 제 기준에서는 성공한 존경스러운 개발자들을 한번 모방해보자 라는 생각으로 시작 했습니다.

    • 저 사람들과 똑같아 지지 못하더라도, 저 사람들의 습관을 따라하게 된다면, 조금이나마 가까운 존재가 될 수 있지 않을까 해서요.


무엇을 커밋했나?

알고리즘 문제풀이, 블로그, TIL, 프로젝트 등등..

  • 사실 커밋한것들의 내용 자체는 제 기준에서 볼때 정말 아무것도 아닌것들 입니다.

  • 하지만 거창한 계기가 아닌 사소한 계기로 시작한것처럼, 거창한것을 계속해서 커밋해오려고 했으면 1년을 채우지 못했을 것이라고 저는 확신할 수 있어요.

  • 무엇을 커밋 했는가 보다는, 꾸준히 커밋 했는가에 저는 의의를 뒀습니다.
    • 하지만 무의미한 커밋을 하려고 하진 않았어요.
    • 여기서 이야기하는 무의미한 커밋이란
      • 변수명만 바꿔서 커밋 등 이 있습니다.
  • 365일 개발하긴 힘들잖아?
    • 맞습니다.
    • 정말 시간이 안나는 경우에는, 그날 배운것을 마크다운으로 문서화해서 커밋하곤 했어요.
      • 사실 아무것도 배우지 않은 하루는 없다고 생각 하거든요.
      • 정말 허무하게 지나간 하루라도 자기전에 하루를 곱씹어보면, 분명히 배운것은 존재하고, 그것을 문서화해서 정리해서 커밋 했어요.
  • 365일 종지부를 찍는 마지막 커밋을 한것도 TIL 이네요
    • 자바에서 static final 로 선언한 컬렉션을 정말 변경 불가능한 상수 형태로 만드는법.
    • 자바에서 ArrayList 객체를 만들때, ArrayList가 아닌 List에 넣는 이유.
    • 이 두가지에 대해서 공부하고, 저 나름대로 문서화해서 정리한것이 종지부를 찍었어요.
    • TIL 에 정리한 문서들은 보통 다시 재정리해서 블로그에 글을 올리곤 해요.

어떻게 지속 해왔나?

왕도는 없다.

  • 그냥 하는겁니다.
  • 저는 지하철에서도 코딩을 한적이 있고, 집가는 택시안에서도 노트북으로 알고리즘 문제를 푼적이 있어요.

  • 만약 다음날 아주 바쁠꺼 같다.
    • 전날에 대기하다가 12시 넘은 기점에 커밋을 하는겁니다.
  • 나 오늘 정말 시간이 없어.
    • 저는 위에서 배운것을 문서화 해서 커밋했다고 했어요.
    • 진짜 너무 바쁜날에도 핸드폰 들여다볼 시간은 조금씩은 있잖아요?
      • 이때 개발 관련 글을 조금씩이나마 찾아서 봤습니다.
      • 참고로 저는 인스타그램 페이스북 과 같은 SNS를 전혀 하지 않습니다.
  • 면접을 망쳐서, 최종 면접 불합격 메일을 받고 우울해서 아무것도 하기 싫어요.
    • 그래도 커밋을 했어요.
    • 왜 면접을 망쳤을까, 왜 불합격 했을까에 대해서 회고하고 그 부분을 문서화해서 커밋을 했습니다.

저도 불가능할줄 알았는데 그냥 하니까 되더라구요.


앞으로 어떻게 할래?

일단 할수 있는데까지 해보려고 합니다.

  • 사실 1년을 채워야 겠다 라는 생각은 처음에 한적이 없어요.
    • 그냥 하다보니까 자연스레 1년을 채우게 된것 같아요.
  • 그리고 재미있게도, 지금 저는 우아한 테크코스 과정을 진행하고 있어요.
    • 만약 교육에 최종합격하고, 수료를 한뒤, 혹시나 내년에 우아한 형제들에 입사하게 된다면 이동욱 님을 만나뵐 수 있는 기회를 얻을 수 있게 되겠죠.
    • 이동욱님을 한번 만나서 이러저러한 이야기를 나누어 보고 싶어요.
      • 굳긷님은 만나 뵌적이 있습니다.

글을 맺으며

Distinguish between difficult and troublesome.
(어려운것과 귀찮은것을 구별하자.)

  • 제 좌우명 입니다.
  • 1일 1커밋 아무것도 아닙니다.
  • 조금만 귀찮음을 견뎌내면 누구나 할 수 있는것이라고 생각합니다.
  • 저도 제가 아주 대단한 업적을 이뤄 냈다고 생각하지 않아요.
    • 하지만 기분은 좋았어요. 그리고 용기를 좀 얻을 수 있었던거 같아요.
      • 나도 우아한 형제들의 일원이 될 수 있다!, 라이너가 될 수 있다!
  • 변화는 사소한것에서부터 시작한다고 생각합니다.
    • 사소한 1일 1커밋으로 시작했지만, 이 1일 1커밋을 진행하는 1년간 저는 많이 성장했다고 생각해요.
    • 오늘의 저는 어제보다 성장했고, 내일의 저는 오늘의 저보다 성장해 있을것입니다.