슈뢰딩거의 프로그래밍 (Schrödinger's Programming)
요약
비전공자가 Gemini CLI를 활용해 복잡한 UI 스크립트를 작성하며 겪은 시행착오와 성공 사례를 다룹니다. 전문 용어 정리와 보충 프롬프트(Supplementary Prompt) 전략을 통해 문제 해결 시간을 획기적으로 단축하는 방법을 제시합니다.
핵심 포인트
- 전문 용어(Terminology)를 명확히 정의하여 프롬프트에 제공하는 것이 중요함
- 보충 프롬프트를 통해 AI의 이해도를 먼저 확인하는 단계가 필요함
- Gemini Flash 및 Flash Lite 모델도 적절한 지침 하에 높은 성능을 발휘함
- 컨텍스트 길이와 추론 능력이 AI 코딩의 주요 병목 현상임
저는 프로그래밍을 모릅니다. 그래서 다른 앱의 프런트엔드(frontend)로 사용될 HTML 및 CSS 기반의 책 같은 UI 스크립트를 작성하고 있었습니다. 노트북에서는 콘텐츠를 두 페이지에 걸쳐 렌더링하고, 모바일 및 태블릿 기기에서는 단일 페이지로 보여주는 것과 같이 약간 복잡한 조건들이 포함되어 있었으며, 테이블, 이미지, 텍스트, 헤딩(headings)이 모두 마크다운(markdown) 형식으로 포함되어 있었습니다. 저는 Gemini CLI를 실행하여 2일 동안(하루 67시간씩) 작업했지만 제대로 작동시키지 못했습니다. 거의 90%까지 도달했지만 기대치에는 미치지 못했습니다. 저는 모든 코드를 수동으로 읽어보았고(HTML은 읽기 쉽습니다), 제가 일반적인 용어를 사용하는 동안 코드가 사용하고 있는 전문 용어(terminologies)들을 깨달았습니다. 저는 그 모든 것을 기록한 뒤, 전체 코드베이스를 삭제하고, 윈도우(Windows) 사용자 디렉토리에서 Gemini 캐시를 삭제한 후 다시 시작했습니다. 그리고 제가 기록해둔 어휘(vocabularies)를 바탕으로 지침을 주었습니다. 매번 수동으로 코드 백업을 하면서 1015번의 시도를 거쳤습니다(버전 관리(versioning)가 어떻게 작동하는지 아직 몰라서, 나중에 참고하기 위해 매번 새로운 별도 폴더에 새로운 README 파일을 만들어 새 코드를 복사하여 붙여넣었습니다). 그리고 2시간 만에 제가 정확히 필요로 했던 스크립트를 얻었습니다. CLI에서 최종 통계를 확인해보니, 요청의 70%는 Gemini Flash Lite였고 30%는 Gemini Flash였습니다. 만약 Flash와 Flash Lite가 전문 용어에 대한 기본적인 이해만 갖추어 DeepSeek이나 Claude가 할 수 있는 일을 해줄 수 있다면 어떨지 상상해 보세요. 저는 우리가 일반적인 프로그래밍 언어에서는 정체기(plateau)에 도달했을지도 모른다고 생각하지만, 병목 현상(bottleneck)은 아마도 컨텍스트 길이(context length)와 정말 정말 강력한 추론(reasoning) 능력일 것입니다. 세 번째 시도에서, 저는 모든 요청에 메인 프롬프트(main prompt)와 함께 보충 프롬프트(supplementary prompt)를 추가했습니다: "내가 말하려는 것이 무엇인지 설명하고, 당신의 이해도를 설명하며, 나의 핵심 요구사항이 무엇인지, 현재 코드가 내가 필요한 기능에서 어떻게 부족하거나 벗어나 있는지 설명하세요. 의문 사항이 있다면 질문하고, 내가 확인하기 전까지는 코드를 작성하지 마세요." 이 설정을 통해, 저는 14~15시간 동안 달성하지 못했던 목표를 2시간 만에 달성했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기