[Python 100일 챌린지] Day 100 - 100개의 글을 마치며
Day 100. 드디어 여기까지 왔습니다. 100번째 글을 쓰고 있다는 게 솔직히 실감이 안 납니다. 오늘은 코드 대신, 이 챌린지의 활용법과 솔직한 후기, 그리고 앞으로의 계획을 이야기합니다.
(15분 완독 ⭐⭐⭐⭐⭐)
📋 전체 커리큘럼 한눈에 보기
먼저 이 100일 챌린지가 어떻게 구성되어 있는지 한 장의 표로 정리합니다.
| Phase | Day | 주제 | 핵심 내용 | 난이도 |
|---|---|---|---|---|
| Phase 1 | 1~10 | Python 기초 | 설치, 변수, 자료형, 문자열, 리스트, 튜플, 딕셔너리 | ⭐ |
| Phase 2 | 11~20 | 자료형 심화 | 집합, 형변환, 문자열 메서드, 포맷팅, 리스트 컴프리헨션, 종합 프로젝트 | ⭐⭐ |
| Phase 3 | 21~30 | 제어문과 함수 | if/for/while, 함수, 재귀, 람다, 데코레이터, 예외 처리 | ⭐⭐ |
| Phase 4 | 31~40 | 파일 처리 | 파일 읽기/쓰기, CSV, JSON, 정규표현식, 할 일 관리 앱 | ⭐⭐ |
| Phase 5 | 41~50 | 객체지향 기초 | 클래스, 상속, 다형성, 추상 클래스, 은행 계좌 시스템 | ⭐⭐⭐ |
| Phase 6 | 51~60 | 모듈과 패키지 | 모듈, 패키지, pip, 가상환경, API 호출, 날씨 알리미 | ⭐⭐⭐ |
| Phase 7 | 61~70 | 데이터 분석 | Pandas, NumPy, Matplotlib, 데이터 시각화, 매출 분석 | ⭐⭐⭐ |
| Phase 8 | 71~80 | 웹 크롤링 | requests, BeautifulSoup, Selenium, 뉴스 크롤러 | ⭐⭐⭐ |
| Phase 9 | 81~90 | 웹 개발 | Flask, 템플릿, 폼, DB, REST API, 인증, 배포, 블로그 시스템 | ⭐⭐⭐⭐ |
| Phase 10 | 91~100 | AI/ML 입문 | scikit-learn, 전처리, 회귀, 분류, ChatGPT API, 프로젝트 | ⭐⭐⭐⭐ |
🎯 목적별 활용 가이드
이 100개의 글을 처음부터 끝까지 다 볼 필요는 없습니다. 여러분의 목표에 따라 어디까지 보면 되는지 안내합니다.
“Python 기초만 빠르게 배우고 싶어요”
Phase 1~2 (Day 1~20) 까지만 보세요.
변수, 자료형, 리스트, 딕셔너리 등 Python의 기본 문법을 익히는 데 충분합니다. 다른 언어 경험이 있다면 이 정도로 Python 문법에 적응할 수 있습니다.
“함수, 예외 처리까지 제대로 배우고 싶어요”
Phase 1~4 (Day 1~40) 까지 보세요.
제어문, 함수, 파일 처리, JSON까지 다루면 간단한 스크립트나 자동화 도구를 만들 수 있는 수준이 됩니다. 코딩 테스트 준비의 기초로도 좋습니다.
“객체지향까지 제대로 이해하고 싶어요”
Phase 1~6 (Day 1~60) 까지 보세요.
클래스, 상속, 모듈, 패키지, 가상환경까지 배우면 “Python을 할 줄 안다”고 자신있게 말할 수 있는 수준입니다. 대부분의 Python 입문서가 다루는 범위가 여기까지입니다.
“데이터 분석이나 크롤링을 하고 싶어요”
Phase 1~8 (Day 1~80) 까지 보세요.
Pandas로 데이터 분석, Matplotlib으로 시각화, BeautifulSoup으로 웹 크롤링까지. 업무 자동화나 데이터 수집이 목적이라면 이 범위가 가장 실용적입니다.
“웹 개발까지 해보고 싶어요”
Phase 1~9 (Day 1~90) 까지 보세요.
Flask로 웹 앱을 만들고, 데이터베이스 연동, REST API, 사용자 인증, 배포까지 경험합니다. 간단한 웹 서비스를 만들어서 실제로 배포할 수 있는 수준입니다.
“AI/머신러닝까지 맛보고 싶어요”
전체 (Day 1~100) 를 보세요.
scikit-learn으로 머신러닝 파이프라인을 경험하고, ChatGPT API로 AI 서비스를 만들어봅니다. “AI를 활용한 개발”의 첫 발을 딛는 데 좋은 출발점입니다.
한눈에 보는 목적별 가이드
graph LR
A[Phase 1~2<br/>Python 기초] --> B[Phase 3~4<br/>함수와 파일]
B --> C[Phase 5~6<br/>객체지향]
C --> D[Phase 7~8<br/>데이터/크롤링]
D --> E[Phase 9<br/>웹 개발]
E --> F[Phase 10<br/>AI/ML]
style A fill:#4CAF50,color:#fff
style B fill:#2196F3,color:#fff
style C fill:#FF9800,color:#fff
style D fill:#9C27B0,color:#fff
style E fill:#F44336,color:#fff
style F fill:#607D8B,color:#fff
| 목표 | 추천 범위 | 예상 소요 |
|---|---|---|
| Python 문법 입문 | Phase 1~2 | 2~3주 |
| 스크립트/자동화 | Phase 1~4 | 4~6주 |
| Python 기본기 완성 | Phase 1~6 | 6~8주 |
| 데이터 분석/크롤링 | Phase 1~8 | 8~10주 |
| 웹 개발 | Phase 1~9 | 10~12주 |
| AI/ML 포함 전체 | Phase 1~10 | 12~15주 |
팁: 반드시 하루에 하나씩 볼 필요 없습니다. 자기 페이스에 맞게, 이해가 될 때까지 한 Day를 며칠에 걸쳐 봐도 됩니다. 속도보다 이해가 중요합니다.
💬 솔직한 후기
때려치고 싶었던 순간들
솔직하게 말하면, 이 100개의 글을 쓰면서 때려치고 싶었던 날이 하루이틀이 아니었습니다.
“오늘은 진짜 못 쓰겠다”, “이걸 누가 보긴 하나”, “내용이 너무 어설픈 거 아닌가” - 이런 생각이 수시로 들었습니다. 특히 Phase 5 객체지향이나 Phase 9 웹 개발 쪽은 설명하기가 정말 어려웠습니다. 쉽게 쓰려고 할수록 오히려 더 어렵더라고요.
100일 연속에는 실패했습니다
부끄럽지만 고백하자면, 100일 연속 작성에는 실패했습니다.
중간중간 하루 이틀 빠진 날이 있었고, 몰아서 쓴 날도 있었습니다. “100일 챌린지”라는 이름이 무색하게 실제로는 100일보다 더 오래 걸렸습니다.
100개 글 작성 + 100일 연속을 달성하신 분들이 계시다면, 진심으로 대단하다고 생각합니다. 100개를 만드는 것도 힘든데 그걸 매일 빠짐없이 한다는 건 정말 다른 차원의 끈기입니다.
그래도 100개를 채운 이유
그런데도 100개를 채운 건, “내가 아니면 누가 이걸 정리하나” 라는 생각 때문이었습니다.
Python 튜토리얼은 세상에 넘쳐나지만, 한국어로 Day 1부터 Day 100까지 하나의 흐름으로 정리한 자료는 의외로 많지 않았습니다. 그리고 무엇보다 “이제와서 시작하는” 이라는 이 블로그의 컨셉 — 늦었다고 생각할 때가 가장 빠른 때라는 메시지를 직접 증명하고 싶었습니다.
완벽하지 않아도 괜찮습니다. 중간에 쉬어도 괜찮습니다. 끝까지 가는 게 중요합니다.
🔄 앞으로의 계획
이 100개의 글은 계속 진화합니다
이 글들은 한 번 쓰고 끝이 아닙니다. 주기적으로 내용을 개선하고 보완해 나갈 계획입니다.
구체적으로:
- 이미지 추가 - 개념 설명에 다이어그램과 그림을 추가해서 시각적으로 이해하기 쉽게
- 영상 자료 - 주요 개념이나 프로젝트 진행 과정을 영상으로 제작
- 코드 업데이트 - Python 버전 업데이트, 라이브러리 변경 사항 반영
- 독자 피드백 반영 - 댓글이나 문의로 받은 질문을 FAQ에 추가
- 실습 환경 - Google Colab이나 Jupyter Notebook 링크 제공 검토
혹시 “이 부분이 이해가 안 된다”, “여기 설명이 부족하다” 같은 피드백이 있으시면 언제든 알려주세요. 반영하겠습니다.
다음 100일 챌린지?
사실 GitHub 100일 챌린지도 병행하고 있습니다. Python과 GitHub, 두 가지를 동시에 진행하면서 느낀 건 — 100일 챌린지는 한 번이면 족하다는 것입니다(농담 반 진심 반). 하지만 이걸 끝내고 나면 또 하고 싶어지는 게 챌린지의 묘한 매력입니다.
🚀 다음 단계 로드맵
100일 챌린지를 마치고 “다음에 뭘 공부하지?”라는 분들을 위해 로드맵을 정리합니다.
단기 (1~3개월)
| 방향 | 추천 학습 | 이유 |
|---|---|---|
| 웹 개발 | Django + PostgreSQL | Flask 경험이 있으니 Django로 확장 |
| 데이터 분석 | SQL + 고급 Pandas | 실무 데이터 분석의 필수 스킬 |
| 자동화 | Selenium 심화 + 스케줄링 | 업무 자동화로 바로 활용 가능 |
중기 (3~6개월)
| 방향 | 추천 학습 | 이유 |
|---|---|---|
| AI/ML 심화 | TensorFlow 또는 PyTorch | scikit-learn 다음 단계 |
| 클라우드 | AWS (EC2, S3, Lambda) | 배포/인프라 경험 |
| 협업 | Git 고급 + Docker | 실무 필수 도구 |
추천 자료
- 책: Effective Python, 파이썬 알고리즘 인터뷰, 밑바닥부터 시작하는 딥러닝
- 온라인: Real Python, Coursera ML by Andrew Ng
- 코딩 테스트: 백준, LeetCode
💡 실전 팁 & 주의사항
1. 속도보다 이해
1
2
3
4
5
6
7
8
9
10
# 이렇게 하지 마세요
for day in range(1, 101):
skim_quickly(day) # 대충 훑기
# 이렇게 하세요
for day in range(1, 101):
read_carefully(day) # 천천히 읽고
try_code_yourself(day) # 직접 코드 쳐보고
if not understood(day):
repeat(day) # 이해 안 되면 다시
2. 반드시 직접 코드를 쳐보세요
복붙해서 실행하는 것과 직접 타이핑하는 것은 완전히 다른 경험입니다. 오타도 내보고, 에러도 만나보고, 직접 고쳐보는 과정이 진짜 학습입니다.
3. 완벽하지 않아도 됩니다
1
2
완벽한 이해 후 다음 단계 ❌
대략 70% 이해하면 다음으로 ✅
모든 것을 100% 이해하고 넘어가려고 하면 Phase 3 쯤에서 지칩니다. 70% 정도 이해했다면 다음으로 넘어가세요. 나중에 다시 보면 그때는 이해가 됩니다.
📝 오늘 배운 내용 정리
- 전체 커리큘럼: Phase 1~10의 구성과 각 Phase에서 배우는 내용
- 목적별 활용법: 자신의 목표에 맞는 학습 범위 선택
- 다음 단계: 100일 이후의 학습 로드맵
🔗 관련 자료
📚 이전 학습
Day 99: 종합 프로젝트 2: AI 챗봇 만들기 ⭐⭐⭐⭐
어제는 ChatGPT API를 활용한 AI 챗봇을 만들었습니다!
“늦었다고 생각할 때가 가장 빠른 때입니다. 그리고 여러분은 이미 시작했고, 여기까지 왔습니다.” 🚀
Day 100/100 Phase 10: AI/ML 입문 #100DaysOfPython ✅
