Building my son a Minecraft phonics game with AI

Alex O'Callaghan

AI로 아들을 위한 마인크래프트 파닉스 게임을 만들었다

원문은 Alex O'Callaghan님이 에 게재했습니다. 이 블로그 구독하기

아들은 지금 읽기와 쓰기를 배우는 중이고 곧 파닉스 시험을 앞두고 있다. 다른 아이들과 마찬가지로 아들에게도 파닉스 연습은 그다지 좋아하는 일이 아니다. 어렵고 힘든 일이라 동기가 필요하기 때문이다. 반면 마인크래프트에 대한 애정은 프로페셔널하다는 말로밖에 설명할 수 없을 정도다.

그래서 Claude AI와 단 한 번의 대화로 아들을 위한 마인크래프트 파닉스 게임을 만들었다.

제작 과정

Claude와 대화를 열고 원하는 것을 설명했다. 아이가 파닉스를 연습할 수 있는 간단한 브라우저 게임, 마인크래프트 테마에 두 가지 모드가 있는 게임이면 좋겠다고 했다. 하나는 그림을 보고 글자 타일로 단어를 완성하는 모드, 다른 하나는 단어를 읽고 네 가지 보기 중 맞는 그림을 고르는 모드였다. 단어는 영국 교육과정 Key Stage 1 수준의 아이에게 적합해야 한다고도 설명했다.

한 번의 답변으로 돌아온 것은 마인크래프트처럼 스타일링된, 두 가지 모드를 바로 플레이할 수 있는 React 컴포넌트였다.

다듬는 과정

엔지니어는 뭔가를 그냥 두기가 어려워서 여기서 더 손보기로 했다. Claude Code를 이용해 파일을 제대로 된 프로젝트로 옮겼다. Vite를 설정하고 Vitest를 추가했으며 TypeScript로 전환했다. 실제 마인크래프트 아이템 에셋이 담긴 npm 패키지를 찾아 이모지 임시 아이콘을 게임 속 실제 스프라이트로 교체했다. 실력이 늘면 단어 풀이 함께 확장되도록 난이도 단계도 추가했다.

TypeScript 덕분에 데이터 구조가 명확해졌고, 테스트가 있으니 뭔가 망가질까 걱정하지 않고도 기능을 추가할 수 있다. 실제 에셋을 쓰니 아이콘도 훨씬 알아보기 쉬워졌다. 이모지로 썼던 것 중에는 어색한 것도 있었기 때문이다.

물론 이런 개선이 도움이 되긴 했지만 꼭 필요한 과정은 아니었다. 첫 번째 버전만으로도 플레이가 가능했고, 마인크래프트 테마이면서 필요한 파닉스 내용을 담고 있었다. 엔지니어링 배경이 없는 부모라면 Claude UI 안에서 플레이 가능한 버전을 그대로 사용해도 충분했을 것이다. 내가 한 수정조차도 Claude Code에 프롬프트 몇 번으로 끝난 일이었다.

아이의 반응

아들에게 게임을 설명하자마자 바로 신이 났다. 하교 후 가장 먼저 한 말이 게임을 해도 되냐는 것이었고, 그 뒤로도 매일같이 해달라고 조른다.

예상하지 못한 건 공동 제작이었다. 아들은 거의 즉시 피드백을 주기 시작했다. 가장 강한 방어구를 만들 수 있고 철자도 까다로우니 네더라이트는 꼭 넣어야 한다는 것이었다. 아들은 게임에 애착을 갖게 되었고, 파닉스 연습은 자신이 원하고 주인의식을 느끼는 활동 속에서 자연스럽게 이루어졌다.

생각지 못했던 부수 효과도 있었다. 아들은 컴퓨터 마우스를 써본 경험이 거의 없었는데, 게임을 조작하면서 터치스크린 앱으로는 얻지 못할 소근육 발달과 마우스 익숙해지기 연습이 자연스럽게 이뤄졌다.

이것이 의미하는 것

에듀테크 제품은 평균적인 아이를 위해 만들어진다. 소프트웨어 경제상 가능한 한 많은 사용자에게 도달해야 하기 때문에 그럴 수밖에 없다. 하지만 내 아들은 평균적인 아이가 아니다. 특정 게임을 열렬히 좋아하고, 특정 시험을 앞두고 있으며, 학습의 특정 순간에 있는 구체적인 아이다. 어떤 상용 파닉스 앱도 그런 조건에 맞춰 최적화되어 있지 않았을 것이고, 오직 를 위해 만든 것만큼 몰입감을 주지도 못했을 것이다.

AI가 바꾼 것은 맞춤형 무언가를 만드는 비용이 극적으로 낮아졌다는 점이다. 이는 부모가 아이를 위해 게임을 만드는 일을 넘어선 함의를 갖는다. 과외 선생님은 학생의 특정 관심사에 맞춘 연습 문제를 만들 수 있고, 선생님은 교육과정이 아니라 학급에 맞춰 자료를 변형할 수 있다. 지금까지의 제약은 상상력이 아니라 시간과 기술적 접근성이었는데, AI로 인해 그 부분이 달라지고 있다.

초기 게임의 코드는 Claude에서의 단 한 번의 대화에서 나왔다. 최종 버전 코드는 GitHub에서 확인할 수 있고 여기에서 플레이할 수 있다.

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.

댓글