코드를 쓸 수 없어요. 그래도 만들었어요.
Source: Dev.to
Overview

솔직히 말하자면, 나는 코드에 완전히 낯선 사람은 아니다. 대학에서 프로그래밍을 조금 배웠고, 코드를 읽고 그 동작을 이해할 수 있다. 하지만 기억만으로 코드를 쓰는 건? 처음부터 무언가를 만드는 건? 전혀 못한다.
함수를 한 줄도 타이핑할 수 없고, 문법도 기억이 안 난다. Promise와 콜백의 차이를 찾아보지 않고는 말할 수 없다.
지난 몇 주 동안 나는 다음을 만들었다:
- 15개 이상의 테이블을 가진 SQLite 데이터베이스
- 실시간 스트리밍을 지원하는 FastAPI 백엔드 (WebSocket)
- 여러 뷰를 가진 React 대시보드
- 4개의 AI 페르소나가 협업하는 멀티‑에이전트 조정 시스템
- 자동화된 테스트 스위트
- macOS, Linux, Windows용 크로스‑플랫폼 설치 프로그램
모두 AI에게 지시해서 만든 결과다.
The Problem
나는 매일 Claude Code를 사용한다. 강력하지만, 매 세션이 처음부터 시작된다. 뭔가를 디버깅하는 데 한 시간을 쓰고, 결국 고치고, 터미널을 닫는다… 그리고 다음 주에 Claude는 같은 실수를 다시 할 수도 있다. 기억이 전혀 없다. 프로젝트의 특이점들을 계속해서 다시 설명해야 한다.
Claude가 어떤 것이 작동했고 어떤 것이 안 됐는지를 기억한다면 어떨까? 그래서 나는 그것을 만들기로 했다.
What I Built
ELF (Emergent Learning Framework) – Claude Code를 위한 영구 메모리.
실패와 성공을 로컬 데이터베이스에 기록하고, 각 작업 전에 관련 히스토리를 Claude의 컨텍스트에 주입한다. 계속해서 효과가 입증되는 패턴은 신뢰도가 올라가 결국 Claude가 항상 따르는 “골든 룰”이 된다.
AI 마법은 아니다. 자동 검색이 가능한 구조화된 노트 테이킹이다.
How It Actually Works
전형적인 세션은 다음과 같다:
Me: 대시보드에 신뢰도 점수를 가진 휴리스틱을 표시해야 해.
Claude: 코드 작성
Me: 신뢰도를 숫자가 아니라 진행 바 형태로 보여줘. 가장 높은 순으로 정렬하고.
Claude: 코드 업데이트
Me: 그게 다른 탭을 깨뜨렸어. 고쳐줘.
Claude: 디버깅하고 수정
몇 주에 걸쳐 수백 번의 교환이 이 과정을 만든다. 바로 그 과정이다.
나는 실제로 코드를 작성할 수는 없었지만 할 수 있었던 일은:
- 뭔가가 잘못 보였을 때 알아차리기
- “완료”가 어떤 모습이어야 하는지 판단하기
- 수정이 다른 부분을 깨뜨렸는지 포착하기
- 다음에 무엇을 만들지 결정하기
What Skills You Actually Need
- 코드 읽기 – 작성은 아니고, 흐름을 따라가고 명백한 문제를 찾을 수 있을 정도.
- “완료”를 아는 것 – AI는 당신의 기준을 모른다; 무언가가 맞는지 스스로 판단해야 한다.
- 프로덕트 사고 – 무엇을 만들고, 무엇을 건너뛰며, 어떤 순서로 할지.
- 끈기 – 계속해서 깨지는 것이 일상이니 포기하지 않아야 한다.
- 감각 – 과도하게 설계되었거나 너무 해킹된 부분을 구분할 수 있는 눈.
The Hard Parts
- 컨텍스트 제한은 현실이다. 긴 세션은 일관성을 잃고, Claude는 두 시간 전 만든 것을 잊는다. 나는 작업을 집중된 청크로 나누는 법을 배웠다.
- 이해 없이 디버깅하기. 무언가가 깨지고 스스로 코드를 추적할 수 없을 때, AI가 해결해 주길 기대한다. 때때로 AI는 원을 그리며 돌기도 한다.
- 완전 검증이 불가능하다. 테스트와 동작을 믿고, 탐색적인 질문을 해야 한다. 코드를 읽을 수는 있지만 좋은 코드인지 항상 평가할 수는 없다.
- 아마도 더 빠르지는 않을 것이다. 숙련된 개발자는 더 빨리 만들 수 있었겠지만, 숙련된 개발자가 만든 것이 아니라 내가 만든 것이다.
The Meta Twist
내가 만든 시스템은 바로 내가 구현하면서 계속 마주친 문제를 해결한다. Claude가 우리가 만든 것을 잊을 때마다 “이게 바로 내가 이걸 만들고 있는 이유다”라고 생각했다. 결국 프레임워크는 자체 개발 과정을 기록하게 되었고, Claude는 히스토리를 활용해 더 잘 동작했다.
The Project
ELF (Emergent Learning Framework)
- Claude Code 세션 간 영구 메모리
- 신뢰도 점수와 함께 패턴 추적
- 학습된 내용을 시각화하는 React 대시보드
- 복잡한 작업을 위한 멀티‑에이전트 협업
오픈 소스. MIT 라이선스.
GitHub:
Who This Is For
코드를 읽을 수 있지만 쓰지는 못한다면, 생각보다 더 가까이에서 무언가를 만들 수 있다. “프로그래밍을 이해한다”와 “소프트웨어를 만든다” 사이의 격차가 완전히 사라진 것은 아니지만, 확실히 좁혀졌다.
나는 개발자는 아니지만 실제로 동작하는 무언가를 배포했다. Claude Code로 만들었다. 모든 라인을 읽을 수는 있지만, 직접 작성할 수는 없었다.