100일 코딩 챌린지 첫째 날에 포기하는 사람은 극히 드뭅니다.
첫째 날은 가장 재미있는 단계니까요. 코드 몇 줄을 적어보고는 스스로 천재가 된 듯한 기분을 느끼며, SNS에 "#100DaysOfCode 1일 차 완료, 첫 함수를 작성했다!" 같은 글을 올리곤 합니다.
둘째 날도 기분이 좋습니다.
진짜 문제는 그 이후에 시작됩니다. 3주 차쯤 되면 처음의 설렘은 사라집니다. 지난주에 내가 짠 코드는 도무지 이해가 안 가고, 100일이라는 시간이 갑자기 아득하게 느껴지기 시작하죠.
아무도 그 '중간 과정'을 보여주지 않습니다. 인터넷에는 온통 화려한 하이라이트만 가득하죠. 연속 성공(streak) 캡처 화면, 신나는 다짐 글, 3달도 안 되어 취업에 성공했다는 이야기들뿐입니다. 누군가는 포기하고, 또 누군가는 계속 나아갈 원동력을 찾아내는 그 혼란스러운 중간 과정은 보이지 않습니다.
그러니 1일 차를 시작하기 전에, Coddy와 함께하는 100일 챌린지가 날짜별로, 감정 상태별로 어떻게 흘러가는지 미리 한번 살펴보겠습니다.

100일 코딩 챌린지란 무엇인가요?
말 그대로 100일 동안 하루도 빠짐없이 매일 코딩하는 것입니다! 그게 전부입니다. 건너뛰기란 없습니다.
이 챌린지가 인기를 얻은 이유는 실제적인 문제를 해결해 주기 때문입니다. 많은 사람들이 코딩 학습에 실패하는 이유는 내용이 너무 어려워서가 아니라, 꾸준히 참여하는 습관을 들이지 못해서입니다.
100일 챌린지는 적어도 초반에는 '연속 기록(streak)' 자체를 목표로 삼게 함으로써 이러한 습관을 길러줍니다.
보통 사람들이 따르는 몇 가지 기본 규칙은 다음과 같습니다.
- 단 10분이나 15분이라도 매일 일정 시간 동안 코딩하기 (5분만 해도 인정됩니다!)
- SNS, 블로그, 또는 개인 기록장 등 어딘가에 자신의 진행 상황을 기록하기
- 하나의 언어나 프로젝트를 선택해 변화가 보일 때까지 꾸준히 밀고 나가기
- 하루를 놓쳤다면, 참여 중인 챌린지 방식에 따라 1일 차부터 다시 시작하거나, 기록해 두고 계속 이어서 진행하기
이 규칙들 중 그 어디에도 하루에 얼마나 많이 배워야 하는지에 대한 언급이 없다는 점을 눈치채셨나요? 이는 의도된 것입니다. 이 챌린지는 100일 만에 특정 언어를 마스터하는 것이 목표가 아닙니다. 하기 싫은 날에도 스스로 '해낼 수 있다'는 것을 증명하는 과정입니다.
Coddy에서는 어떻게 진행되나요?
바로 이 부분에서 Coddy와 함께하는 장점이 드러납니다. 에디터를 설정하거나, 무언가를 설치하거나, 첫 줄을 어디에 적어야 할지 고민할 필요가 전혀 없습니다. Coddy를 열고 Challenges로 이동한 뒤, 딱 두 가지만 선택하면 됩니다.
첫째, 언어입니다. 현재 Python, JavaScript, C++, Java, C# 중에서 선택할 수 있습니다 (걱정 마세요, 곧 더 많은 언어가 추가될 예정입니다!). 어떤 것을 골라야 할지 모르겠다면? 가장 흥미로워 보이는 것부터 시작해 보세요. 나중에 언제든 바꿀 수 있으니까요.
둘째, 난이도입니다. 쉬움(easy), 보통(medium), 어려움(hard) 중에서 고를 수 있습니다. 1일 차에는 무언가를 증명하고 싶은 마음이 굴뚝같더라도 '쉬움'을 선택하는 것이 현명합니다.
![[2] Coddy와 함께하는 100일 코딩 챌린지.webp](https://storage.googleapis.com/coddy-15505.appspot.com/blog/images/1787047488333__2___100-Day_Coding_Challenge_with_Coddy.webp)
챌린지를 시작하기 위해 해야 할 일은 이게 전부입니다. 딱 두 번의 선택만으로 바로 코딩을 시작할 수 있죠. 100일 동안 달리는 과정에서 이는 생각보다 훨씬 중요합니다! 나와 오늘의 챌린지 사이에 불필요한 단계가 많아질수록 하루를 건너뛸 핑계도 늘어나고, 그렇게 건너뛴 하루하루가 모여 결국 연속 기록이 깨지게 되기 때문입니다.
진행 단계별 특징
챌린지를 완주했거나 시도해 본 사람들의 이야기를 들어보면 일정한 패턴이 나타납니다. 꾸준히 우상향하는 직선 형태의 발전은 거의 없습니다. 오히려 예측 가능한 하락 구간이 존재하는 롤러코스터에 가깝습니다.
1~10일 차: 허니문 단계
모든 것이 새롭고 흥미진진합니다. 문법을 배우고, 아주 작은 프로젝트를 만들어 보며, 사소한 성공 하나하나에 성취감을 느낍니다. 이 시기는 모든 것이 새롭다는 자극 덕분에 챌린지 전체에서 가장 쉬운 단계입니다.
11~30일 차: 현실 자각 단계
설렘이 조금씩 사그라듭니다. 개념은 점점 더 어려워집니다. 인터넷에서 나보다 더 빨리 진도를 나가고, 더 멋진 것을 만들고, 모든 것을 단번에 이해하는 듯한 사람들과 자신을 비교하기 시작합니다 (사실 그들도 그렇지 않을 확률이 높지만, 그렇게 보일 뿐입니다). 이 단계에서 많은 사람들이 포기합니다.
31~70일 차: 정체성 변화 단계
현실 자각 단계를 버텨내면 흥미로운 변화가 일어납니다. 코딩이 억지로 해야 하는 숙제처럼 느껴지지 않고, 그냥 일상의 당연한 일과처럼 느껴지기 시작합니다. 발전 속도는 여전히 느리게 느껴질 수 있지만, 매일 코딩하는 습관 자체가 더 이상 진 빠지는 일로 다가오지 않습니다.
71~100일 차: 자신감 구축 단계
이쯤 되면 1일 차에 작성했던 코드를 돌아보았을 때, 내가 쓴 게 맞나 싶을 정도로 낯설게 느껴집니다. 마지막 스퍼트 구간에서는 완전히 새로운 개념을 배우기보다는, 이미 알고 있는 지식을 더 큰 문제에 적용하는 연습을 주로 하게 됩니다. 보통 이 시기부터 튜토리얼을 따라 하는 수준을 벗어나 진짜 자신만의 프로젝트를 만들기 시작합니다.
평범한 하루의 모습
사람들은 100일 코딩 챌린지라고 하면 매일 몇 시간씩 고도의 집중력을 발휘해야 한다고 생각합니다. 하지만 실제로는 그렇게 하면 일주일이나 이주일 만에 번아웃이 오기 십상입니다.
대신 지속 가능한 일정은 어떤 모습인지 살펴보겠습니다.
- 어떤 날은: 10~15분 동안 작은 챌린지를 해결하거나 개념 복습하기
- 또 다른 날은: 45분에서 1시간 동안 조금 더 큰 프로젝트 만들기
- 휴식 같은 날: 새로운 코드를 작성하지 않고 공식 문서(documentation)를 읽거나, 짧은 영상을 보거나, 예전 코드 복습하기
그냥 읽는 문서보다 직접 실행해 볼 수 있는 문서가 훨씬 좋습니다. 공식 문서를 읽는 것은 훌륭한 휴식일 활동입니다. 하지만 예제를 직접 실행해 보고 값을 바꾸어 볼 때 개념을 훨씬 더 빠르게 이해할 수 있습니다. 이것이 바로 실행 가능한 문서(runnable documentation)가 지향하는 가치입니다.
마지막 항목이 특히 중요합니다. 매일 새로운 코드를 타이핑할 필요는 없습니다. 이미 배운 내용을 복습하거나, 예전 버그를 수정하거나, 다른 사람의 코드를 읽는 것 역시 챌린지에 참여한 것으로 인정됩니다! 이러한 작고 반복 가능한 행동들이야말로 더 나은 개발자로 성장하게 만드는 일상적인 습관입니다.
왜 사람들은 3주 차쯤에 포기할까요?
그저 매일 참여하기만 하면 되는 챌린지인데, 왜 이렇게 간단한 일 앞에서 많은 이들이 무너질까요?
그 이유는 보통 다음 중 하나에 해당합니다.
- 하루 목표치를 너무 높게 잡음 (매일 2시간씩 코딩하겠다는 계획은 바쁜 현실과 마주하는 순간 무너지기 쉽습니다)
- 단지 트렌드라는 이유로 본인이 진심으로 흥미를 느끼지 못하는 프로젝트나 언어를 선택함
- 진행 상황을 추적할 방법이 없어, 실제로 발전하고 있음에도 아무런 변화가 없는 것처럼 느껴짐
- 하루를 거르고 나니 실패했다는 좌절감에 휩싸여, 계속 이어 나가는 대신 아예 포기해 버림
이 중 머리가 나쁘거나 재능이 없어서 생기는 문제는 단 하나도 없습니다. 모두 '환경 설정'의 문제입니다. 이 챌린지가 어려운 이유는 코딩 자체가 어려워서가 아닙니다. 습관을 형성하는 것 자체가 어렵기 때문이며, 많은 이들이 의욕이 떨어지고 힘든 날을 대비한 계획 없이 시작하기 때문입니다.
Coddy는 매일 알림을 보내고 부담 없는 크기의 챌린지를 제공하여, 하루를 건너뛰는 것이 참여하는 것보다 더 어렵게 느껴지도록 돕습니다.
100일 차까지 완주하는 방법
완주 가능성을 높이고 싶다면, 단순한 의지력보다 몇 가지 작은 조정을 거치는 것이 훨씬 더 큰 효과를 발휘합니다.
1. 터무니없을 정도로 작은 최소 목표를 세우세요. 매일 1시간씩 하겠다고 다짐하는 대신, 딱 10분만 하겠다고 약속하세요. 컨디션이 좋은 날에는 더 많이 하게 될 것입니다. 힘든 날에도 10분만 채우면 성공이며, 이 작은 성공이 연속 기록을 이어가게 해 줍니다!
2. 조금이라도 흥미가 생기는 것을 선택하세요. 선택한 프로젝트가 마음에 들지 않는다면 30일 차쯤에는 지옥을 맛보게 될 것입니다. 피곤한 날에도 노트북을 열어보고 싶게 만드는, 호기심을 자극하는 언어나 프로젝트 아이디어를 고르세요.
3. 눈에 보이는 곳에 진행 상황을 기록하세요. 연속 기록 카운터, 달력에 직접 엑스표(X) 치기, 공개적인 SNS 포스팅 등 보이지 않는 성장을 시각적으로 확인할 수 있는 장치를 마련하세요.
4. 하루를 거르게 될 상황을 미리 대비하세요. 하루를 놓쳤을 때 어떻게 대처할지 지금 결정해 두세요. 처음부터 다시 시작할 건가요? 아니면 빠진 날을 기록해 두고 그냥 이어서 진행할 건가요? 미리 정해 두면 일상이 바빠지거나 꼬이더라도 좌절하여 아예 포기해 버리는 상황을 막을 수 있습니다 (살다 보면 분명 그런 날이 오기 마련이니까요).
5. 강제성을 부여할 장치를 찾으세요. 함께 챌린지를 진행할 친구, 온라인 커뮤니티, 혹은 내가 뜸해졌을 때 알림을 주는 앱 등이 좋은 예입니다. 누군가 혹은 무언가가 나를 지켜보고 있을 때 우리는 훨씬 더 꾸준해집니다.
100일 차가 되면 무엇이 달라질까요?
사람들은 100일 차가 되면 꽃가루가 날리는 화려한 결승선에 도달한 기분일 거라 기대합니다. 하지만 실제로는 그와는 조금 다르며, 오히려 더 기분 좋은 변화를 느끼게 됩니다.
100일 차에 접어든 많은 이들이 다음과 같은 변화를 경험합니다.
- 코드를 읽는 것이 외계어를 해독하는 느낌이 아니라, 자연스럽게 글을 읽는 것처럼 느껴집니다.
- 예전에는 패닉에 빠지게 만들었던 사소한 버그들이 이제는 흔히 마주하는, 해결 가능한 퍼즐처럼 다가옵니다.
- 끝마치지 못한 수십 개의 튜토리얼 대신, 실제로 완성한 2~3개의 작은 프로젝트를 갖게 됩니다.
- 매일 코딩한다는 생각이 더 이상 거창한 도전이 아니라, 당연한 일상으로 자리 잡습니다.
100일이라는 시간은 코드 그 자체를 위한 것이 아니었습니다. 아무리 적은 양이라도 꾸준히 하는 것이 한 번에 몰아서 하는 것보다 언제나 강력하다는 사실을 증명하는 과정이었습니다. 타인의 경험담이 아닌 스스로의 경험을 통해 이를 깨닫고 나면, 그 배움은 평생 여러분의 자산이 됩니다.
100일 동안 무엇을 만들어야 할까요?
챌린지 기간의 상당 부분 동안 제대로 된 프로젝트를 하나도 만들지 못할 수도 있으며, 이는 지극히 정상입니다. Coddy에서는 매일 주어지는 챌린지를 해결하는 것 자체가 훌륭한 훈련입니다. 언어를 고르고, 난이도를 선택한 뒤, 눈앞에 있는 문제를 해결해 나가며 초반 몇 주를 자연스럽게 흘려보내세요.
하지만 중간 지점 어디쯤에서 기본기가 탄탄해지기 시작하면, 많은 이들이 자신만의 무언가를 만들고 싶어 몸이 근질거리기 시작합니다.
그런 열정이 솟구칠 때는 프로젝트 아이디어를 찾느라 몇 시간 동안 스크롤만 내리지 말고, 더 좋은 질문을 스스로에게 던져보세요. '내가 일상에서 필요로 했던 아주 작은 도구는 무엇인가?', 혹은 '작동 원리가 조금이라도 궁금했던 기능은 무엇인가?'
100일의 여정 동안 시도해 보기 좋은 몇 가지 방향을 소개합니다.
- 가계부나 습관 기록기처럼 내 삶의 불편한 문제를 해결해 주는 아주 작은 도구
- 틱택토처럼 아주 단순한 게임 (게임은 논리와 규칙을 꼼꼼히 생각하도록 훈련하는 데 좋습니다)
- 이미 사용 중인 웹사이트나 앱의 일부분을 클론 코딩하며 내부적으로 어떻게 작동하는지 파악해 보기
- 초반부터 하나의 큰 프로젝트를 맡는 것이 부담스럽다면, 서로 무관한 여러 개의 미니 챌린지 연속으로 해결하기
전체 목록이 필요하다면, 선택한 언어에 맞춤화된 아이디어부터 시작해 보세요. 파이썬을 선택했다면 자신감을 키워줄 13가지 쉬운 파이썬 프로젝트를 살펴보세요. 자바스크립트를 선택했다면 첫날부터 바로 만들어 볼 수 있는 초보자용 자바스크립트 프로젝트가 준비되어 있습니다.
이 프로젝트들이 남들에게 거창해 보일 필요는 전혀 없습니다. 핵심은 빈 화면만 멍하니 바라보며 어디서부터 시작해야 할지 고민하지 않도록, 구체적인 대상을 정하는 것입니다. 도중에 프로젝트를 바꾸어도 괜찮습니다. 하나의 아이디어로 시작했다가 몇 주 뒤 실력이 늘어 시시해지면, 더 도전적인 프로젝트로 넘어가면 됩니다.
매일 새로운 것을 배워야 하나요?
아닙니다. 매일 새로운 것을 배워야 한다고 스스로를 압박하는 것은 번아웃으로 가는 지름길입니다.
어떤 날은 한 번도 접해보지 못한 완전히 새로운 개념을 배우게 될 것입니다. 또 어떤 날은 이미 알고 있는 내용을 몸이 기억할 때까지 반복해서 연습하게 될 것입니다.
두 가지 모두 가치 있는 과정입니다. 이미 익숙한 것을 다지느라 다소 지루하게 느껴지는 반복의 날들이, 모든 것이 새롭고 흥미진진한 날들보다 장기 기억 형성에는 훨씬 더 큰 도움이 됩니다. 요즘 같은 시대에는 이러한 반복 학습이 더욱 중요합니다. AI가 단 몇 초 만에 작동하는 코드를 만들어내는 세상에서, 직접 손으로 코딩하며 쌓은 연습만이 남의 답변을 온전히 내 실력으로 만들어 주기 때문입니다.
오늘 얼마나 많은 새로운 정보를 얻었는지 머릿속으로 계산하고 있다면, 그 생각을 완전히 내려놓으세요. 매일 스스로에게 던져야 할 유일한 질문은 이것뿐입니다. '오늘도 포기하지 않고 참여했는가?'
이 챌린지를 해야 할까요?
스스로에게 던져볼 또 다른 질문이 있습니다. '나에게 필요한 것은 100일 챌린지일까, 아니면 카운트다운의 압박 없이 매일 꾸준히 참여하게 만드는 시스템일까?'
둘 다 좋은 방법입니다. 어떤 이들은 정해진 챌린지의 구조와 공개적인 선언이 주는 책임감 속에서 시너지를 얻습니다. 반면, 결승선이 없는 지속적인 습관을 만들어 갈 때 더 잘 해내는 이들도 있습니다. 이들은 100일째가 지나고 일상으로 돌아갔을 때 찾아오는 허탈감이나 압박감을 느끼지 않아도 되니까요.
인터넷에 굳이 선언하지 않더라도 연속 기록, 매일의 알림, 그리고 짧은 챌린지를 활용하고 싶다면, 이 역시 동일한 습관을 기르는 훌륭한 방법입니다.
'100'이라는 숫자에 대단한 마법이 깃들어 있는 것은 아닙니다. 그저 습관을 들이기에 충분히 길면서도, 도전해 볼 만하다고 느껴질 만큼 적당히 짧은 직관적인 숫자일 뿐입니다!
요약하자면
100일 코딩 챌린지는 사실 코드에 관한 것이 아닙니다. 코딩 프로젝트의 탈을 쓴 '습관 형성 실험'에 가깝습니다.
그 과정에서 배우는 문법도 중요하지만, 진짜 값진 성과는 매일 포기하지 않고 해낼 수 있다는 것을 스스로에게 증명하는 것입니다.
20일 차쯤 찾아올 고비를 예상하세요. 중간 어디쯤에서 코딩이 의무처럼 느껴지지 않는 변화의 순간이 올 것을 기대하세요. 그리고 100일 차가 되었을 때, 그것이 끝이 아니라 이미 습관이 몸에 배어 더 이상 챌린지조차 필요 없음을 깨닫는 순간이 될 것임을 믿으세요.
그러니 시작을 고민하고 있다면, 완벽한 프로젝트 아이디어나 돌아오는 월요일을 기다리지 마세요. 아주 작은 것부터 선택해 오늘 바로 노트북을 열고 시작해 보세요.
Share this article
About the Author
Jana Simeonovska
Content Strategist & Writer
Frequently Asked Questions
챌린지 진행 상황을 온라인에 꼭 올려야 하나요?
아니요! 온라인에 기록을 올리는 것이 동기부여가 되는 사람도 있지만, 필수 규칙은 아닙니다. 개인 비공개 일지, 달력에 표시하기, 또는 Coddy의 내장 streak counter를 활용하는 것도 좋은 방법입니다. 꾸준히 참여하는 데 도움이 되는 방식을 자유롭게 선택하세요.
하루를 거르면 어떻게 되나요?
어떤 방식을 따르느냐에 따라 다릅니다. 어떤 사람들은 1일부터 다시 시작하기도 하고, 어떤 사람들은 건너뛴 날을 기록하고 계속 진행하기도 합니다. 둘 다 틀린 방법이 아닙니다. 중요한 것은 하루를 거르기 전에 미리 자신만의 규칙을 정해두는 것입니다. 그래야 하루 빠진 것이 포기로 이어지는 스노우볼 효과를 막을 수 있습니다.
어떤 프로그래밍 언어를 선택해야 하나요?
현재 Coddy에서는 Python, JavaScript, C++, Java, 또는 C#으로 시작할 수 있습니다. 잘 모르겠다면 가장 흥미로워 보이는 언어를 선택해 보세요! 나중에 언제든지 변경할 수 있으므로 첫 선택을 너무 고민하지 않으셔도 됩니다.
100일 코딩 챌린지는 완전 초보자에게도 적합한가요?
네, 맞습니다. 이 챌린지는 고급 개발자가 아닌, 꾸준히 실천하는 데 어려움을 겪는 분들을 위해 만들어졌습니다. 쉬운 모드로 시작해 하루 10분씩 투자하며 습관을 들여보세요. 기억하세요, 가장 중요한 목표는 매일 참여하는 것입니다!
매일 어느 정도의 시간이 필요한가요?
바쁜 날에는 하루 10~15분 정도만 투자해도 충분합니다. 무언가를 직접 만들 때는 더 오래 걸릴 수도 있고, 어떤 날은 간단한 챌린지 하나만 해결하고 마칠 수도 있습니다. 매일의 최소 목표치를 낮게 잡는 것이 streak을 유지하는 비결입니다.
시작하려면 무언가를 설치해야 하나요?
아니요. Coddy는 코드 에디터가 내장되어 있어 브라우저에서 바로 실행됩니다. Challenges page를 열고, 언어와 난이도를 선택한 다음 바로 코딩을 시작하시면 됩니다. 별도의 설정이나 다운로드가 필요 없습니다.
중간에 언어나 프로젝트를 변경해도 되나요?
네, 가능합니다. 많은 사람들이 하나의 아이디어로 시작했다가, 실력이 늘면서 더 큰 프로젝트로 넘어갑니다. 도중에 변경하는 것은 포기하는 것이 아닙니다. 꾸준히 참여하기만 한다면, 이는 오히려 여러분이 성장하고 있다는 증거입니다.



