개념 2026-09-08
개발 지식 지도
뉴스 키워드 봇을 만들며 8주 동안 배운 것을, 주제별로 묶어 보는 나무. 낱개 교훈이 어느 큰 갈래에 붙는지만 봅니다.
지도 활용법
- 이 지도는 주차별 사례글(1주차 … 8주차)과 회고에 흩어져 있던 “만들며 배운 것”을 한자리에 모아 갈래로 묶은 것입니다.
- 각 갈래 제목을 누르면 그 주제만 모은 노트로 이동해요. 구체적인 상황·코드·프롬프트는 거기에 있습니다.
- 뼈대는 버전관리 → 배포 → 자동화(n8n) → 자동화 속 AI → 정보구조 → 디버깅 태도 → AI 협업 순서예요.
- 한 주를 꿰는 실은 7주차 회고에 적어둔 이 한 줄입니다 — “봇이 자동으로 채우는 건 흐름이고, 그걸 읽히게 만드는 건 사람 손이다.”
마인드맵
- ① 버전관리 — Git·배포
- 포크 → 커밋 → 배포가 한 흐름 (계정·비밀번호만 직접, 나머지는 AI가 대신 실행)
.git/index.lock·HEAD.lock — 비정상 종료가 남긴 찌꺼기 잠금
- GUI(GitHub Desktop)와 터미널을 한 저장소에 동시에 쓰지 않기
- “저장했다”를 믿지 말고
git status로 눈으로 확인
- 봇이 커밋하는 저장소는 편집 전에
git pull
- 짧은 간격 연속 커밋 → Vercel이 중간 빌드 취소(빨간 X), 오류 아님
- ② 자동화 도구 — n8n·스케줄링·호스팅
- n8n = 노드를 선으로 이어 만드는 노코드 자동화
- “저장” ≠ “Publish” — 자동 트리거는 Publish해야 작동
- Expression 모드에서만
{{ }}가 값으로 바뀐다
- GitHub API는 읽기(GET) → 수정 → 쓰기(PUT),
sha 필수
- 동시 요청 409 충돌 → Batching으로 하나씩
- 노드를 지우거나 추가한 뒤엔 배선을 눈으로 다시 본다
- Windows 작업 스케줄러 체크리스트 / “영구 무료”도 조건이 조용히 바뀐다
- ③ 자동화 속 AI — 자동화에서 LLM 다루기
- 출력 필드를 늘릴 땐 프롬프트 + Structured Output Parser 스키마를 세트로
- LLM에게 시키면 안 되는 일: 긴 목록에서 짧은 ID·URL 옮겨 적기
- AI는 번호만 고르고, 값은 프로그램이 원본에서 조회
- “없으면 없다고 해” 같은 도피로를 주지 않는다
- AI는 같은 대상을 매번 다르게 표기한다 → 매칭 전 정규화
- ④ 정보구조 — 정보구조와 화면 설계
- 자동화의 완성은 “돌아간다”가 아니라 “읽힌다”까지
- 이름이 곧 정보구조 (
기타 → 용어 사전)
- 성격이 다른 건 한 칸에 안 섞는다
- 판정 규칙을 새로 만들지 말고 파일명 접두사로 한 단계만 쪼갠다
- 계획서는 덮어쓰지 말고 “바뀐 것” 표로 남긴다
- ⑤ 디버깅 태도 — 조용히 틀리는 버그 잡기
- 초록불은 “실행됐다”지 “맞다”가 아니다
- 검증은 표본이 아니라 전수
- 오류율을 유형별로 쪼개면 원인이 보인다
- 에러가 불친절하면 코드가 스스로 말하게 만든다
- 추측으로 채운 자리는 공식 자료로 못 박는다
- ⑥ AI 협업 — AI와 함께 일하는 법
- 코딩 몰라도 “네가 대신 실행해줘”로 시킨다
- 만들기 전에 이미 있는 것(오픈소스·템플릿·내장 노드)부터 확인
- 초안은 AI, 판정은 나 — “이거 왜 여기지?” 5분이 공부다
- 자동화에 사람 손은 “매번”이 아니라 “주간 배치”로
- 작업 성격에 맞는 모델·사고량을 고른다 (낮춰 시작, 부족하면 올림)
분류 메모
- “배포”를 Git과 한 노트에 둔 이유: 포크→커밋→배포가 끊기지 않는 한 흐름이고, Vercel 자동 재배포도 결국 “커밋하면 일어나는 일”이라서.
- 스케줄링·호스팅을 n8n 노트에 붙인 이유: Windows 작업 스케줄러도, 클라우드로 옮긴 것도 전부 “이 봇을 사람 없이 계속 돌리기” 한 가지 목표의 곁가지라서. 도구가 아니라 목표로 묶었다.
- 정보구조와 디버깅 태도를 나눈 이유: 앞은 “결과물을 어떻게 배치하나”(설계), 뒤는 “안 보이는 잘못을 어떻게 찾나”(운영). 겹치는 교훈(“읽힌다까지가 완성”)은 양쪽에 링크로 걸어뒀다.