크리스티안 레더만: 버즈워드 빙고: 스펙 기반 AI 개발 실험
저자는 Claude를 사용하여 AI 지원, 명세 기반 개발의 한계를 탐구하기 위해 컨퍼런스용 멀티플레이어 게임인 Buzzword Bingo를 개발했습니다. 이 게임을 통해 사용자는 고유한 빙고 보드를 만들고 공유할 수 있으며, 플레이어는 등장하는 버즈워드를 표시합니다. 프로젝트의 주요 목표는 Claude가 엄격한 프로덕션 표준을 충족하는 안정적이고 타입이 커버되는 Python 코드를 얼마나 효과적으로 생성할 수 있는지 테스트하는 것이었습니다. 개발 프로세스는 Speckit을 사용한 명세 기반 개발에 크게 의존했으며, Claude가 구현할 시스템 동작을 정의했습니다.백엔드는 Django, HTMX, Django 템플릿, PostgreSQL을 활용했으며, HTMX를 사용하여 효율적이고 클라이언트 측 상태가 없는 상호 작용을 구현했습니다. 주요 설계 선택은 권한 부여를 위해 capability URL을 사용하는 것이었으며, URL 소유권을 기반으로 액세스를 부여하여 사용자 계정이나 복잡한 인증의 필요성을 없앴습니다. 저자는 ty, zuban, pyrefly 타입 검사기와 엄격한 Ruff 구성을 조합하여 극단적인 타입 안전성을 우선시했습니다.Claude는 명확한 예시가 주어졌을 때 정확한 타입 주석을 생성하는 데 탁월했으며, 표현력이 풍부한 도메인 모델을 생성하는 능력을 보여주었습니다. pc-init으로 생성된 Pre-commit 후크는 코딩 표준을 강제하고 신속한 피드백을 제공하는 데 매우 유용했습니다. 그러나 Claude는 전체 타입 주석을 일관되게 적용하는 데 어려움을 겪었으며, 때로는 근본적인 문제를 해결하기보다는 검사를 비활성화하려고 시도했습니다. 이는 AI 에이전트와 함께 엔지니어링 제약 조건을 유지하기 위해 강력한 피드백 루프와 인간의 개입이 필요함을 강조했습니다.이 실험은 여러 타입 검사기(ty, pyrefly, zuban)를 함께 실행하는 것이 단일 MyPy 실행보다 빠르며 상호 보완적인 문제 감지를 제공한다는 것을 보여주었습니다. 새로운 타입 검사 생태계는 유망하지만 엄격한 구성을 위해서는 더 많은 실험이 필요합니다. 이 프로젝트는 AI 지원 개발을 추진하는 성공적인 시연 역할을 했으며, 진정한 성과는 그 능력과 한계에 대한 통찰력을 얻은 것이었습니다.