초5 아들에게 프롬프트 대신 루프를 가르쳤다

8월 3일 오후에 노트북을 아들에게 넘겼다. 초5다. 만들고 싶은 걸 AI랑 대화해서 끌어내보라고만 했다.

이렇게 시킨 건 회사에서 몇 달째 보고 있는 것 때문이었다. 같은 도구를 받은 사람들의 결과물이 갈리는데, 갈리는 지점이 도구 숙련도가 아니었다. 단축키를 더 아는 쪽이 이기는 게 아니고, 뭘 시킬지 알고 시킨 다음 돌아온 걸 자기 요구와 맞춰보는 쪽이 이겼다. 그 격차를 보면서 아들 생각을 했다. 이 아이가 사회에 나올 때 AI는 골라서 쓰는 도구가 아닐 것이다.

그날 오후에 게임이 브라우저에서 돌아갔다. 대화에서 정한 것과 나온 결과는 같지 않았고, 아들은 신나서 그걸 맞춰보지 않았다.

돌아간 게임은 여기 있다. code-blade-hospital.pages.dev

밝은 식탁에 노트북 한 대가 놓여 있고 아이 의자와 어른 의자가 마주 놓인 장면

갈리는 지점을 회사에서 먼저 봤다

내가 이걸 아들에게 먼저 붙이려고 하는 건 교육관이 있어서가 아니다. 회사에서 벌어지는 일을 매일 보기 때문이다.

기업이 AI를 업무에 넣으면서 사람에게 요구하는 게 바뀌고 있다. 예전엔 만들 수 있느냐를 봤다. 지금은 만드는 건 도구가 상당 부분 해주고, 대신 뭘 만들어야 하는지 말로 정확히 내놓을 수 있느냐를 본다. 그리고 돌아온 결과가 자기가 말한 것과 같은지 맞춰볼 수 있느냐를 본다. 다르면 처음부터 다시 시키지 않고 어긋난 한 곳만 짚어서 고치게 할 수 있느냐를 본다.

이건 시장 전망이 아니라 내 옆자리에서 일어나는 일이다. 같은 계정, 같은 모델, 같은 입력창을 받고 한 사람은 두 시간 뒤에 쓸 만한 걸 갖고 있고 한 사람은 세 번 다시 시키고 있다. 차이를 뜯어보면 두 번째 사람이 실력이 없는 게 아니었다. AI가 내놓은 첫 결과를 답이라고 받아들이는 속도가 빨랐다.

갈리는 형태는 대체로 비슷하다. 한쪽은 받은 걸 열어보고 자기가 부탁한 조건 중에 빠진 게 있는지 훑는다. 빠진 게 있으면 그것만 다시 시킨다. 다른 쪽은 받은 걸 보고 마음에 안 든다고 판단하고, 조건을 다시 정리하는 대신 처음부터 다시 시킨다. 그러면 같은 걸 세 번 만들고 세 번째도 마음에 안 든다. 뒤쪽이 놓치는 건 자기가 처음에 뭘 부탁했는지다. 요구를 안 적어뒀으니 결과를 맞춰볼 기준이 없고, 기준이 없으면 남는 판단은 마음에 드나 안 드나뿐이다.

이 능력은 코딩 능력과 별개다. 코드를 한 줄도 안 써도 필요하고, 코드를 잘 써도 없을 수 있다. 그리고 나이 들어서 새로 붙이기가 꽤 번거롭다. 이미 몸에 붙은 일하는 방식을 바꿔야 하니까. 아들은 아직 붙은 게 없다. 그게 유일한 이점이다.

바이브 코딩은 쓴 게 맞다

오해가 없게 먼저 적어둔다. 이번에 아들이 한 건 바이브 코딩이다. 코드를 한 줄도 안 쓰고 말로 시켜서 게임을 만들었으니 그게 바이브 코딩이다. 그걸 피하지 않았고 일부러 골랐다.

고른 이유는 하나다. 아들이 계속 하고 싶어할 만한 게 그것뿐이었다. 뒤에서 자세히 쓰겠지만 이 훈련은 아들이 흥미를 잃으면 그 자리에서 끝난다. 흥미가 분위기가 아니라 전제라서, 교보재는 아들이 제일 하고 싶어하는 걸로 골라야 했다. 열한 살한테 그건 게임이고, 게임을 지금 당장 만들 수 있는 방법이 바이브 코딩이었다. 문법을 배우고 만들자고 했으면 두 달이 걸렸을 것이고, 두 달을 못 버틴다.

그래서 세 층으로 갈라두면 내가 뭘 하려는지가 분명해진다.

맨 위가 미끼다. 게임 만들기고 흥미가 붙는 동안만 간다. 가운데가 수단이다. 바이브 코딩과 3D 와 배포인데 도구가 바뀌면 사라진다. 맨 아래가 목표다. 질문을 만들어 던지고 돌아온 걸 자기 요구와 맞춰보는 것이고, 이건 안 사라진다.

아들이 이번에 얻은 도구 지식은 6개월 뒤에 쓸모가 줄어든다. 화면도 바뀌고 명령도 바뀐다. 바이브 코딩도 그 줄에 있다. 그건 지금 시점의 도구 사용법이고, 도구 사용법 자체를 가르치는 건 목표가 아니라 목표까지 가는 통로다. 통로를 목적지로 착각하면 아들에게 6개월짜리를 가르치고 뿌듯해하게 된다.

내가 남기고 싶은 건 맨 아래 줄이다. 질문을 만들어내는 쪽. 이건 게임으로 배우든 숙제로 배우든 여행 계획으로 배우든 같은 근육이고, 도구가 뭘로 바뀌어도 옮겨간다.

프롬프트를 가르치는 게 AI 교육이 아니다

요즘 부모들이 아이에게 뭔가를 시킨다. 바이브 코딩이라고 하거나 AI 교육이라고 한다. 나도 그 열풍 안에 있는 사람이고 아들에게 뭘 시키고 있으니 남 얘기가 아니다. 다만 뭘 시킬지 정하는 근거가 어디서 왔는지는 좀 다르다.

나는 회사에서 AI로 실제 업무를 굴린다. 하루에 몇 번씩 시키고 받고 어긋난 걸 짚어서 다시 시킨다. 되는 것과 안 되는 것, 사람들이 어디서 놓치는지를 매일 본다. 아이에게 뭘 붙여야 하는지에 대해서는 이 자리가 강좌보다 유리하다고 생각한다. 강좌를 만드는 사람은 커리큘럼을 만들어야 하고, 커리큘럼은 가르칠 수 있는 걸로만 채워진다. 나는 가르칠 수 있느냐와 상관없이 실제로 결과를 가르는 게 뭔지부터 봤다.

강사가 실력이 없다는 얘기가 아니다. 이론은 그쪽이 훨씬 정리돼 있을 것이다. 다만 강의로 만들어지는 건 이미 정리가 끝난 것뿐이다. 정리되려면 시간이 걸리고, 그 사이에 도구는 또 바뀐다. 촬영된 강의는 촬영된 날에 굳는데 현업은 바뀐 다음 날 그걸로 일한다. 그래서 지금 결과를 가르고 있는 부분은 대체로 아직 아무 커리큘럼에도 안 들어가 있다. 나는 정리 안 된 그 구간에 매일 서 있고, 아이에게 뭘 미리 붙일지 고를 때 필요한 건 그쪽 정보다.

그리고 이게 오래 안 갈 우위라는 것도 안다. 지금 정리 안 된 것도 1~2년 뒤엔 커리큘럼에 들어갈 것이다. 그때는 아들이 이미 몸에 붙이고 있으면 된다.

그래서 강좌를 좀 찾아봤다. 동네 모임에도 있고 영상 강의에도 많다. 제목은 대체로 AI 사용법이거나 AI로 뭘 만들기다. 열어보면 두 가지를 가르친다. 하나는 도구 조작이고, 하나는 프롬프트다.

프롬프트 쪽이 특히 그렇다. 너는 무슨 전문가다로 시작하라고 한다. 단계를 나눠서 지시하라고 한다. 출력 형식을 지정하라고 한다. 예시를 두세 개 붙이라고 한다. 틀을 외우게 하고 그 틀에 자기 상황을 끼워 넣게 한다.

그게 틀렸다는 게 아니다. 실제로 효과가 있고 나도 쓴다. 문제는 그게 문장의 껍데기라는 것이다. 껍데기는 안에 뭘 넣을지 정해져 있을 때만 쓸모가 있다. 넣을 게 없는 사람이 껍데기를 배우면 잘 정돈된 형식으로 애매한 걸 요청하게 된다. 그리고 AI는 애매한 요청에도 아주 그럴듯한 답을 준다.

아들에게 가르치고 싶은 건 껍데기가 아니라 안에 들어갈 쪽이다. 자기 머릿속에 있는 걸 문장으로 꺼내는 것. 뭘 원하는지, 지금 정해진 게 뭐고 안 정해진 게 뭔지, 상대가 준 게 자기가 원한 것과 어디가 다른지를 말로 만드는 일이다.

증거는 아들이 쓴 열 문장에 이미 있다. 나는 대화하며 게임을 설계해조에는 프롬프트 기법이 하나도 안 들어 있다. 역할 부여가 없다. 단계 지시가 없다. 출력 형식 지정도, 예시도 없다. 오타까지 있다. 강좌 기준으로 채점하면 낮은 점수를 받을 문장이다.

그런데 그 문장이 그날 대화 전체의 방향을 바꿨다. 형식이 아니라 아들이 자기가 원하는 상태를 알고 그걸 말했기 때문이다. 지금 만들지 말고 같이 정하자는 것. 열한 살이 아는 단어로 그걸 표현한 것이고, 프롬프트 강좌 열 개를 들어도 이 문장은 안 나온다. 이건 형식의 문제가 아니라 자기 상태를 아는지의 문제다.

코딩 학원을 알아보다 접은 것도 같은 이유였다. 학원 과제에는 정답이 있다. 정답 있는 문제를 계속 풀면 문제를 받았을 때 답을 찾으러 가는 습관이 붙는다. AI 앞에서는 그 순서가 거꾸로다. 답은 AI가 아주 빠르게 내놓는다. 부족한 쪽은 답이 아니라 질문이고, 내가 뭘 원하는지는 아무도 대신 정해주지 않는다.

그래서 처음에 한 말은 이것뿐이었다. 만들고 싶은 게 있으면 저기다 말해봐. 무슨 게임을 만들지도, 어떻게 물어보라고도 말하지 않았다. 물어보는 방법을 알려주면 그게 껍데기를 주는 일이 된다.

대신 루프를 돌게 했다

틀을 안 준 대신 아들이 직접 돌아야 하는 왕복을 잡아줬다. 네 단계다.

만들고 싶은 걸 꺼내서 구체화하기. 게임을 만들고 싶어로는 아무것도 안 정해진다. 어떤 게임인지, 뭘로 싸우는지, 어디서 하는지를 대화를 이어가면서 하나씩 정하게 하는 것. 이게 이 편의 내용이다.

만들어진 걸 직접 해보기. 켜서 움직여보고 눌러보는 것. AI는 자기가 만든 걸 못 해본다. 해볼 수 있는 사람은 아들뿐이다.

안 되는 걸 말로 설명하고 고치게 시키기. 아들이 여기서 제일 많이 배웠다. 안 된다고만 하면 AI가 못 고친다. 언제 그러는지, 어떻게 했을 때 그러는지, 어떻게 됐어야 하는지를 말해야 고쳐진다. 캐릭터가 이상해요가 아니라 점프하고 나서 착지할 때 바닥을 뚫고 내려간다까지 나와야 한다.

더 좋게 만들 걸 찾아서 시키기. 안 되는 걸 고치는 것과 되는데 아쉬운 걸 바꾸는 건 다른 일이다. 뒤쪽이 더 어렵다. 뭐가 아쉬운지 자기가 알아야 하니까.

네 단계를 이어 붙이면 원으로 닫힌다. 네 번째를 하면 다시 첫 번째로 돌아가고, 그때 아들은 처음보다 자기가 뭘 원하는지 더 잘 안다. 결과를 한 번 봤기 때문이다. 그리고 이 원을 몇 바퀴 도느냐가 결과물을 가른다.

요즘 AI 쪽에서 이걸 루프 엔지니어링이라고 부른다. 한 번의 입력을 잘 만드는 게 아니라, 결과를 보고 다시 넣는 왕복 자체를 설계하는 쪽에 무게를 두는 관점이다. 프롬프트 엔지니어링과 겨루는 개념이 아니라 층이 하나 위에 있다. 프롬프트는 루프 한 바퀴 안의 한 지점이고, 그 지점을 아무리 다듬어도 한 바퀴만 돌면 결과가 거기서 멈춘다.

내가 아들에게 붙인 게 이 루프다. 이름은 안 알려줬다. 열한 살에게 필요한 건 용어가 아니라 몸에 붙은 순서니까.

네 단계 어디에도 프롬프트 틀이 없다는 게 눈에 걸릴 것이다. 전부 자기가 본 것과 원하는 것을 말로 만드는 일이다. 세 번째가 특히 그렇다. 오류를 설명하는 건 상태를 관찰해서 문장으로 옮기는 작업이고, 이건 개발자만의 능력이 아니다. 병원에서 어디가 어떻게 아픈지 말하는 것과 같은 종류다.

강좌가 파는 건 루프 한 지점에 끼워 넣을 문장 틀이다. 나머지 세 단계는 대체로 안 다룬다. 결과가 나온 다음에 벌어지는 일이고, 그건 영상 한 편으로 안 끝나기 때문이다. 루프는 팔기가 어렵다. 돌아봐야 알기 때문이다.

질문을 하려면 먼저 생각을 해야 한다

네 단계를 다시 보면 전부 질문으로 되어 있다. 뭘 만들고 싶은가. 이게 왜 안 되는가. 뭘 더 넣으면 나아지는가. 처음에 뭘 만들자고 했는가. 루프를 돌린다는 건 이 질문들을 순서대로 자기한테 던진다는 뜻이다.

그런데 질문은 그냥 나오지 않는다. 생각을 해야 나온다. 그래서 한 층 더 내려가야 했다. 아들이 생각을 하게 하려면 뭐가 있어야 하나.

세 개가 필요하다고 봤다.

원하는 게 있어야 한다. 원하는 게 없으면 질문이 생길 자리가 없다. 어떤 게임을 만들지 생각하는 건 게임을 만들고 싶을 때만 일어난다. 앞에서 게임과 바이브 코딩을 고른 이유가 이거다. 아들이 원하는 게 확실한 영역이어야 하고, 그 원함이 식기 전에 결과가 나와야 한다. 숙제로 이걸 시켰으면 아들은 정답을 찾으러 갔을 것이고, 정답을 찾는 동안에는 자기가 뭘 원하는지 생각하지 않는다. 흥미는 이 훈련의 분위기가 아니라 전제다.

비교할 게 눈앞에 있어야 한다. 백지에서 생각을 꺼내는 건 어른도 잘 못한다. 반면 뭔가가 놓여 있으면 그것과 자기 안의 것을 대보게 되고, 그 대보는 순간이 생각이다. AI가 장르 여섯 개를 내놓았을 때 아들이 한 게 그거다. 여섯 개를 읽고 이 중에 내가 원하는 게 있나를 봤고, 없을 때는 없다는 걸 알았다.

멈출 틈이 있어야 한다. 비교하는 데는 시간이 든다. 아들이 화면을 보면서 가만히 있을 때 그게 비어 있는 시간이 아니다. 옆에서 뭘 물어보거나 골라주면 그 시간이 사라진다.

여기서 AI가 뒤집힌다. AI는 세 번째를 빼앗고 두 번째를 준다. 답을 아주 빠르게, 아주 그럴듯하게 내놓으니 멈출 이유가 없어진다. 동시에 비교할 대상을 무한히 빠르게 공급한다. 그래서 사고 훈련 도구로는 유리한데, 나온 걸 그냥 받으면 사고가 정확히 그 지점에서 끊긴다. 편해서 끊기는 것이고, 아이는 편한 쪽을 고른다.

루프가 필요한 이유가 여기다. 받고 끝나면 한 번 생각하고 끝난다. 받은 걸 해보고 어긋난 걸 말로 만들면 거기서 또 생각해야 한다. 루프는 결과물을 좋게 만드는 장치이기도 하지만, 실은 생각을 여러 번 하게 만드는 장치다.

바로 만들지 말라고 한 건 나였다

아래 인용은 전부 원문 그대로다. 오타와 띄어쓰기를 고치지 않았다. 다듬지 않은 원문이라는 걸 보여주는 게 인용의 목적이고, 그 외에 다른 뜻은 없다.

첫 문장은 예상대로였다.

나는 게임을 만들고 싶어

AI가 곧바로 응답했다. 장르를 몇 개 제안하고, 이렇게 붙였다.

원하면 제가 바로 실행 가능한 첫 버전부터 만들어드릴게요

여기가 갈림길이었고, 아들은 당연히 좋다고 하려고 했다. 열한 살한테 바로 만들어드릴게요는 거절할 이유가 없는 제안이다. 게임을 만들고 싶다고 했고 상대가 지금 만들어준다고 하니까.

그걸 세운 건 나다. 아직 어떤 게임인지 하나도 안 정했으니까 지금 만들면 네가 원한 게 안 나온다고 말했다. 만들어달라고 하지 말고 대화로 어떤 게임인지 같이 정해나가라고 지시했다. 이 프로젝트에서 내가 방향을 잡아준 지점 중 제일 중요한 곳이다.

내가 왜 그걸 알았냐면 매일 그걸로 손해를 보기 때문이다. 나는 실무에서 이걸 자주 건너뛴다. AI가 만들어주겠다고 하면 거의 좋다고 한다. 일단 뭐가 나오면 그걸 보고 고치는 게 빠르다고 느끼기 때문이다. 그리고 그 느낌은 자주 틀린다. 나온 걸 보고 고치기 시작하면 이미 나온 것의 구조 안에서 고치게 되고, 원래 원했던 것과 다른 곳에 도착한다. 처음부터 뭘 원하는지 말로 꺼내놓고 시작한 날과 결과가 다르다는 걸 여러 번 겪고 나서야 알았다.

아들에게는 그 순서를 뒤집어주고 싶었다. 나는 도구를 먼저 익히고 어긋나는 걸 여러 번 겪은 다음에 늦게 시작하는 게 이득일 때가 있다는 걸 알았다. 아들은 그 손해를 안 치르고 먼저 알아도 된다. 그게 조기 교육의 유일한 이점이다.

그래서 아들이 쓴 문장은 이거였다.

나는 대화하며 게임을 설계해조

이 문장에서 아들이 한 일은 판단이 아니다. 판단은 내가 줬다. 아들이 한 건 내 지시를 AI가 알아들을 문장으로 옮긴 것이고, 이게 첫 훈련이었다. 아빠가 말로 한 걸 그대로 옮겨 적은 게 아니라 자기 단어로 다시 썼다. 설계라는 말을 어디서 들었는지는 모르겠는데 저기에 그걸 넣었고, 오타가 있어도 AI는 알아들었다.

이게 AI 교육이라고 생각한다. 어떤 질문을 던질지 알려주고, 왜 그 질문이 필요한지까지 설명하는 것. 두 번째가 빠지면 안 된다. 지금 만들지 말고 어떤 게임인지 먼저 정하자고만 시키면 그건 이번 게임에서만 쓰는 요령이 된다. 안 정한 상태로 결과를 받으면 그 결과의 모양에 갇힌다는 이유를 붙여주면, 아들은 그걸 게임이 아닌 데서도 쓴다.

그래서 나는 지시하면서 이유를 같이 말했다. 지금 만들면 네가 원한 게 안 나온다고. 열한 살이 알아들을 만한 문장 하나면 됐다.

열한 살이 AI를 몇 번 써보고 스스로 저 판단에 도달하기를 기다리는 건 교육이 아니다. 그건 방치이고, 실제로는 도달하지 않는다. 어른도 도달하지 않는다. 나는 이걸로 밥을 먹는데도 매일 건너뛴다. 아이가 알아서 깨닫는 이야기는 읽기에 좋지만 재현이 안 된다. 재현되는 건 질문과 그 이유를 아는 사람이 그걸 말해주는 쪽이다.

물론 내가 안 시킨 것도 있다. 뒤에 나오는 열 문장 중에 선택지를 다 버리고 자기 문장을 쓴 것, 이미 정해진 항목으로 되돌아가 한 축만 바꾼 것, 빼라고 지시한 것은 아들이 그냥 했다. 그게 특별한 능력이라서가 아니라 원하는 게 자기 안에 있었기 때문이다. 아이들은 원하는 게 분명하다. 그 분명함을 쓸모 있게 만드는 자리에 단계가 들어간다.

가이드는 하고 문장은 안 대신 썼다

방향은 내가 줬지만 입력은 아들이 했다. 그 경계를 지키는 게 생각보다 힘들었다.

머릿속에 계속 더 나은 문장이 있었다. 이렇게 물어보면 될 텐데. 그 조건도 같이 말해야 할 텐데. 나는 이걸 매일 하는 사람이라 뭐가 더 잘 통하는지 안다. 그리고 안다는 게 함정이었다.

내가 문장을 대신 써주면 그 순간의 결과는 좋아진다. 대화도 매끄러워지고 게임도 더 빨리 나온다. 남는 건 없다. 아들이 배우는 건 아빠가 옆에 있을 때 좋은 게 나온다는 사실이고, 그건 몇 년 뒤에 쓸모가 없다. 아들이 사회에 나가서 AI 앞에 앉을 때 나는 옆에 없다.

그래서 선을 이렇게 그었다. 무엇을 할지는 말해주고, 어떻게 쓸지는 안 건드린다. 오타도 안 고쳤다. 오타가 있어도 AI가 알아듣는지 확인하는 것 자체가 아들이 해야 할 경험이었다. 열 번 중에 AI가 못 알아들은 건 없었다.

그리고 아들이 입력하기 전에 멈춰 있으면 기다렸다. 재촉하지 않았다. 멈춰 있는 시간이 이 훈련의 내용이라고 봤다. 빨리 입력하는 훈련이 아니라 입력하기 전에 생각하는 훈련이니까.

아들은 왜 계속 대화했나

여기가 나한테 제일 중요한 관측이었다. 아들이 AI랑 대화를 이어간 건 내가 옆에서 시켰기 때문이 아니다. 두 번째 턴 이후로 나는 거의 말을 안 했다.

세 가지가 아들을 붙잡아뒀다.

자기 문장이 그대로 반영됐다. 아들이 뭘 말하면 다음 응답에 그게 들어가 있었다. 게임의 어떤 부분이 자기가 방금 말한 것 때문에 정해졌다는 게 눈에 보인다. 자기 의견이 결과물에 이 정도로 즉시 반영되는 경험은 열한 살에게 흔하지 않다.

선택지가 계속 왔다. AI는 매 턴 장르 여섯 개, 전투 유형 네 개, 주인공 타입 네 개, 시점 세 개, 배경 세 개 같은 걸 내놨다. 아들은 고르는 걸 재미있어했다. 이건 양날이고 뒤에서 다룰 문제이기도 한데, 흥미 유지 쪽으로는 확실히 효과가 있었다. 백지에 뭘 쓰라고 하는 것보다 골라보라고 하는 게 열한 살한테는 훨씬 진입이 쉽다.

정해진 게 매번 요약돼 나왔다. AI가 턴마다 지금까지 정해진 걸 정리해서 보여줬다. 아들은 그 목록이 길어지는 걸 봤다. 게임이 만들어지고 있다는 감각이 그 목록에서 나왔다. 아직 코드는 한 줄도 없는데도.

세 번째가 나중에 검증 지점이 된다. 그 요약이 아들이 유일하게 맞춰볼 수 있는 자료였다. 다만 그때는 아무도 그걸 대조용으로 안 봤다. 진행 표시로만 봤다.

아들이 입력한 열 문장

시작에서 대화가 끊긴 지점까지, 아들이 입력한 건 열 번이다. 전부 원문 그대로다.

첫 문장은 나는 게임을 만들고 싶어 였다. AI 가 바로 첫 버전을 만들어주겠다고 하자 아들이 나는 대화하며 게임을 설계해조 라고 받았다. AI 가 장르 여섯 개를 내놓자 액션 전투, 전투 유형 네 개를 내놓자 애니메이션 같은 기술로 싸운는 개임 이라고 답했다. 주인공 타입 네 개에는 4 라고만 썼고 시점 세 개에는 3d 라고 썼다.

일곱 번째가 다르다. AI 가 정해진 네 개를 요약하고 다음 질문으로 넘어가려 하자 다른건 좋은데 1인 칭 시점으로 하자 라고 되돌렸다. 이어서 배경 세 개에는 현재 도시를 바탕으로 페허 도시 같은 거로, 적 정체 세 개에는 사람들씨리 싸우는, 마지막 근접전과 총기 택일에는 총은 빼자 였다.

열 번을 다 합쳐도 100자를 조금 넘는다. 문장은 짧고 오타가 있고 조사가 빠져 있다. 그런데 이 열 개 안에 서로 다른 판단이 최소 네 종류 들어 있다.

4번과 9번을 보면 AI가 준 선택지를 아들이 아예 안 쓰고 자기 문장을 썼다. 5번과 6번에서는 맞는 게 있으니까 번호와 단어만 던졌다. 7번은 이미 정해져서 AI가 넘어간 항목으로 되돌아가서 한 축만 바꿨다. 10번은 넣는 게 아니라 빼라는 지시다.

같은 아이가 이 짧은 대화 안에서 네 가지를 다 했다. 아들은 자기가 그러고 있다는 걸 몰랐고 그래서 더 볼 만하다. 이건 훈련받은 기술이 아니라 자기가 뭘 원하는지 알고 있을 때 자연스럽게 나오는 행동이다. 반대로 말하면, 자기가 뭘 원하는지 모르는 상태에서는 저 네 가지가 하나도 안 나온다. AI가 준 걸 그냥 받게 된다.

대화 기록은 AI가 능력 종류를 묻는 지점에서 끊긴다. 그 이후 대화는 내가 갖고 있지 않다.

버그는 잡았고 다른 건 못 잡았다

게임이 돌아간 다음이 더 중요했다.

아들은 그걸 켜서 해보고 안 되는 걸 찾아냈다. 여기서 세 번째 단계가 돌았다. 안 된다고만 하지 않고 어떻게 하면 그러는지를 말하게 했고, AI가 고쳐서 다시 주면 다시 켜서 확인했다. 나는 이 왕복이 이 프로젝트에서 제일 값이 나가는 부분이라고 본다. 열한 살이 자기가 본 현상을 남에게 전달 가능한 문장으로 바꾸는 연습을 실제로 한 것이다. 코드는 한 줄도 안 봤다.

얼마나 걸려서 만들어졌는지는 이 글에서 중요하지 않다. 도구가 그 정도는 해준다는 걸 이제 다들 안다.

3D라고 했는데 2D가 나왔다

처음 만들어진 게임은 2D였다.

아들이 시점을 정할 때 쓴 건 3d 두 글자다. 그게 여섯 번째 턴이고 최소 입력이라 그 자체로는 좋은 판단이었다. 문제는 그 두 글자가 아들 머릿속에 있는 그림을 다 담지 못했다는 것이다. 아들에게 3D는 아주 구체적인 무언가였다. AI에게 도착한 건 두 글자였고, AI는 그 두 글자로 다른 걸 만들었다.

이게 이 프로젝트의 첫 대조였고 아들이 바로 알아챘다. 켜자마자 이건 자기가 생각한 게 아니라고 했다. 이건 잡기 쉬운 종류다. 화면을 보면 보이니까.

여기서 내가 가르친 게 이 프로젝트에서 제일 값이 나가는 부분이다. 다시 만들어달라고 하지 말라고 했다. 대신 목적을 분명하게 지시하라고 했다. 뭘 원하는지가 상대에게 정확히 넘어가게 지시하는 것. 방법으로 하나를 줬다. 네가 아는 게임 중에 그런 게 있으면 그걸 대라고.

이유도 같이 말했다. 3d는 너한테는 충분한 말이다. 네 머릿속에 그림이 있으니까. 그런데 상대는 그 그림을 못 본다. 두 글자만 받았으니 상대는 자기가 아는 3D를 만든다. 네가 아는 걸 예로 대면 한 단어로 아주 많은 게 넘어간다.

그래서 아들이 다시 말한 게 오버워치 같은 3D 게임이었다.

그다음 결과는 3D로 왔다. 아들이 한 건 다시 시킨 게 아니고 같은 요구를 더 분명하게 말한 것뿐이다. 그리고 이 차이를 아들이 직접 봤다는 게 중요하다. 말을 바꾸니까 결과가 바뀐다는 걸 자기 손으로 확인한 것이고, 이게 앞에서 말한 이유 설명이 실제로 붙는 순간이다. 지금 만들지 말라고 했을 때는 내 말을 믿고 따른 거였고, 이번엔 결과로 봤다.

여기가 이 시리즈에서 내가 제일 오래 생각한 자리이기도 하다. 아들에게 부족했던 건 AI 지식이 아니었다. 자기 머릿속에 있는 걸 상대가 알아들을 만큼 꺼내놓는 일이었다. 그건 AI를 상대할 때만 필요한 게 아니다.

그런데 안 보이는 건 못 잡았다

2D는 잡혔는데 못 잡은 것도 있다. 그리고 왜 하나는 잡히고 하나는 안 잡혔는지가 갈린다.

정한 것 중에 도착한 것부터 보면, 1인칭 시점으로 하자고 한 건 그대로 됐다. 3D는 위에서 한 번 짚고 나서 왔다. 총은 빼자고 한 것도 지켜져서 근접 무기만 나온다.

도착하지 않은 것도 있다. 5번 턴에서 아들이 번호 4로 고른 주인공은 검과 창과 대검을 전투 중에 바꿔 쓰는 쪽이었다. 아들이 그 게임의 정체성으로 고른 항목이다. 완성된 결과물에는 무기가 하나뿐이고 바꾸는 기능이 없다. 이건 대화 기록 안에서 확인되는 항목이라 그냥 없어진 거라고 말할 수 있다.

아들은 몰랐다. 무기가 안 바뀌는 건 고장이 아니라서 화면이 알려주지 않았고, 게임은 재미있었다.

여기가 이 시리즈에서 내가 제일 오래 생각한 자리다. AI가 만든 결과가 틀리지 않았는데 요구와 다를 때 사람은 그걸 못 잡는다. 아들은 버그를 설명해서 고치게 하는 건 하루 만에 익혔다. 그건 눈에 보이는 걸 말로 옮기는 일이라 배우면 된다. 반면 눈에 안 보이는 걸 알아채는 건 배우는 게 아니라 습관이라서, 붙이려면 다르게 접근해야 한다. 회사에서 봤던 격차의 정체도 이거였다. 결과가 그럴듯할 때 요구서를 다시 안 여는 것.

배경도 대화에 나온 것과 지금 게임에 있는 것이 다르다. 아들은 무너진 현대 도시를 말했는데 게임의 맵은 의료 시설 계열이고 배포 주소에까지 그 이름이 들어가 있다. 능력도 대화가 끊긴 지점에서 AI가 묻던 것보다 종류가 늘어 있다. 다만 이 두 개는 대화 기록이 끊긴 뒤에 정해진 것들이고, 그 구간을 내가 갖고 있지 않다. 아들이 그때 동의했을 수도 있다. 그래서 지금 말할 수 있는 건 대화 기록과 결과 사이에 간극이 있다는 사실 하나뿐이고, 그 간극이 어디서 생겼는지는 아직 확인 대상이다. 없는 대화를 있는 것처럼 쓰지 않으려면 여기서 멈춰야 한다.

그리고 아들에게는 이걸 확인할 방법이 이미 있었다. 코드를 읽을 필요가 없다. 게임을 켜서 창으로 바꿔지나 보면 된다. 대화 중에 AI가 턴마다 뿌려준 그 요약 목록이 그 대조표였다.

게임보다 오래 남기고 싶은 건 태도다

이 프로젝트를 게임 하나로 끝낼 생각은 없다. 게임은 아들이 재미있어할 만한 걸 고른 것뿐이고, 내가 붙이려는 건 AI를 대하는 태도다.

지금 아들 세대가 마주할 상황은 내가 자랄 때와 다르다. 나는 검색을 배웠다. 검색은 결과가 여러 개 나오고 그중에 뭘 믿을지 내가 골라야 한다는 걸 화면이 알려준다. 링크가 열 개 있으면 열 개가 다 맞을 수 없다는 게 눈에 보인다. AI는 그 반대다. 하나의 답을 문장으로, 확신 있는 어조로 내놓는다. 고를 게 없어 보인다. 그래서 검색보다 편하고, 편한 만큼 그대로 받게 된다.

아들에게 가르치려는 건 그 편함을 알아채는 감각이다. 답이 하나로 왔다는 게 답이 하나라는 뜻은 아니라는 것. 이건 코딩이 아니라 생활 쪽에 훨씬 자주 나타난다. 숙제를 물어볼 때, 뭘 사야 할지 물어볼 때, 모르는 단어를 물어볼 때 전부 같은 구조다.

루프로 보면 이번에 돌아간 단계와 안 돌아간 단계가 갈린다. 꺼내서 구체화하기는 됐다. 해보기도 됐고, 안 되는 걸 말로 설명해서 고치게 하기도 됐다. 더 좋게 만들 걸 찾아 시키기도 몇 번 돌았다.

빠진 건 한 지점이다. 처음에 정한 것과 지금 손에 있는 것을 맞춰보기. 이건 네 단계 사이에 끼어 있어야 하는데 이번엔 없었다. 그리고 이게 없으면 루프가 원이 아니라 나선이 된다. 매 바퀴 조금씩 다른 곳으로 가면서 아무도 처음 지점을 안 보는 상태.

이쪽이 훨씬 어렵다. 오류 설명은 눈에 보이는 걸 옮기는 일이라 몇 번 해보면 는다. 대조는 이미 결과가 손에 있고 그게 만족스러울 때 그걸 의심하는 일이다. 결과가 좋으면 의심할 마음이 안 생긴다. 어른도 안 한다. 회사에서 세 번 다시 시킨 그 사람이 못 한 게 정확히 이거였다.

남은 두 편에서 볼 것

이 시리즈는 세 편이다. 회차별 진행 상황이 아니라 아들이 한 판단 하나씩을 다룬다.

  • 2편. AI가 매 턴 뿌린 선택지에 아들이 어떻게 답했나. 4번과 9번 턴에서는 선택지를 다 버리고 자기 문장을 썼고 그게 게임의 정체성이 됐다. 5번과 6번에서는 43d만 쳤다. 7번 턴에서는 AI가 이미 다음 질문으로 넘어간 뒤에 확정된 항목으로 되돌아가 시점만 바꾸고 나머지는 그대로 뒀다. 고를지 버릴지 되돌아갈지를 매 턴 판단하는 것에 대해.
  • 3편. 대화에서 정한 목록과 완성된 결과를 한 줄씩 맞춰본 기록. 무기 전환이 어디서 사라졌는지, 그리고 이걸 아들이 스스로 잡게 하려면 뭘 쥐여줘야 하는지.

이 사고는 어디에 대응하는가

두 번째 턴에서 벌어진 일을 회사 말로 옮기면 이렇다. 상대가 이대로 진행할까요라고 물었을 때 요구가 아직 정리되지 않았으면 진행시키지 않는 것.

이건 직급이 올라가야 배우는 게 아니고 코드를 읽어야 되는 것도 아니다. 그런데 실제로는 많은 사람이 못 한다. 상대가 만들어주겠다고 하는데 잠깐만요 하고 세우는 건 심리적으로 부담이 있고, 뭐가 나온 다음에 고치는 게 빨라 보이기 때문이다. 나도 실무에서 자주 못 한다. 그래서 아들에게는 그 자리를 아예 첫 훈련으로 잡아줬다. 내가 손해를 보고 배운 걸 아들은 손해 없이 먼저 갖는 게 이 교육의 전부다.

아들이 사회에 나갈 때 이 루프가 몸에 붙어 있으면, 그건 배워야 할 기술이 아니라 기본 문법이 되어 있을 것이다. 요구를 말로 꺼내고, 받은 걸 직접 해보고, 어긋난 걸 설명해서 고치게 하고, 처음에 정한 것과 맞춰보는 것. 아들은 이번에 앞의 셋을 돌렸고 마지막을 안 했다.

그리고 다음에 그 마지막을 붙일 때도 같은 방식으로 할 것이다. 무슨 질문을 던져야 하는지 말해주고, 왜 그 질문이 필요한지 설명하는 것. 2D가 나왔을 때 목적을 분명하게 지시하라고 알려준 것과 같은 방식이다. 이번엔 그 질문이 이거다. 처음에 뭘 만들자고 했었지.

그래서 다음에 붙일 건 코딩이 아니다. 대화에서 정한 걸 아들이 자기 손으로 적어두게 하는 것, 그리고 다 만들어진 다음에 그 목록을 한 줄씩 읽으면서 게임을 켜보게 하는 것이다. 재미있어도 열어보게 만드는 습관 쪽이 훨씬 어렵고, 그게 이 교육에서 실제로 가르쳐야 하는 부분이다.

댓글

이 블로그의 인기 게시물

아이들은 우리 게임에 들어오지 못한다

AI가 썼다는 브라우저 300만 줄에서 112만 줄은 남의 코드였다

AI가 준 선택지, 초5 아들은 어떻게 골랐을까?