나는 코딩을 못 한다. 정말로 못 한다. 프로그램이 왜 안 돌아가는지 화면을 봐도 모른다. 어디가 틀렸는지 짚지도 못한다. 내가 해본 코딩은 대학교 교양시간에 들었던 HTML 웹 코딩이 전부다.
그런데 내가 매일 도면을 그리며 쓰는 캐드 도구들은 대부분 내가 만든 것이다. 남한테 받아 온 게 아니다. AI에게 시켜서 만들었다.
직접 리습을 만들게 된 계기는 이렇다: ① 내가 원하는 기능을 정확하게 가진 리습은 서치만으로 찾기가 어려웠다. ② 또 내 실무 환경에 커스텀하려면 코딩을 알아야 했다. ③ 내 클릭습관, 타이핑 습관, 작업 방식을 반영하는 리습은 아무래도 찾기가 어려웠다.
이 글은 그 중 하나를 만든 이야기다. RRAV라는 도구다. 도곽을 하나 고르면 그 크기에 딱 맞게 미리보기를 띄워 준다. 별것 아닌 기능이다. 그런데 이걸 만드는 데 꽤나 애를 먹었다. 그 과정을 처음부터 끝까지 그대로 적어 보려 한다.
이렇게 말하면 요즘 흔한 “코딩 몰라도 AI로 다 된다”는 얘기처럼 들린다. 절반만 맞다. 나머지 절반이 이 이야기의 진짜 내용이다.

어쩌다 만들게 됐나
시작은 늘 똑같다. 같은 동작을 하루에 스무 번씩 반복하는 자기를 인식한다.
그날도 그랬다. 도곽을 하나 고르면 그 크기에 딱 맞게 화면을 미리 보여 주는 기능이 있으면 좋겠다고 생각했다. 손으로 하면 매번 창을 만들어야 한다. 크기를 맞춰야 한다. 확인하고 다시 지워야 한다. 별것 아닌데 손이 많이 간다.
예전 같으면 여기서 끝이었다. “그런 게 있으면 좋겠다.” 딱 거기까지. 리습을 짤 줄 모르니까 상상만 하고 넘어갔다.
그런데 이번엔 AI에게 말을 걸어 봤다. 도곽을 고르면 그 크기에 맞춰 미리보기를 띄우는 도구를 만들고 싶다고. 이름은 RRAV로 하자고.
AI는 곧바로 답을 쏟아냈다. 길고 자신 있는 계획이었다. 절반은 내가 못 알아듣는 말이었다. 그래도 읽으면서 생각했다. “오, 되겠는데?”
그게 함정이었다.
그럴듯한 코드는 캐드에서 안 돌아갔다
첫 번째 벽은 엉뚱한 데 있었다. 말이 안 통했다.
AI가 어려운 단어를 꺼내면 나는 무슨 말인지 몰랐다. 반대로 내가 “플롯 구석에 있는 그 미리보기 말이야”라고 하면 AI는 전혀 다른 걸 상상했다.
나는 플롯 화면에 뜨는 그 작은 미리보기를 말한 거였다. AI는 자꾸 새 창을 띄우거나 작업 화면을 통째로 바꾸려 했다. 같은 단어를 놓고 서로 다른 그림을 그리고 있었다.
“아니, 그거 말고.” 이 말을 몇 번이나 했는지 모른다. 그렇게 겨우 방향을 맞췄다.
방향이 맞았다고 끝이 아니었다. 명령을 실행했다. 창은 떴다. 그런데 안이 하얬다. 그냥 백지였다. 아무것도 안 보였다.
AI에게 화면을 보여 줬다. AI는 이유를 추측했다. 코드를 고쳤다. “이번엔 완벽하게 고쳤습니다.” 자신만만했다. 실행했다. 또 하얀 화면이었다.
다시 고쳤다. 또 백지. 또 고쳤다. 또 백지.
이 하얀 화면이 열다섯 번 넘게 돌아왔다. 매번 AI는 확신에 차 있었다. 매번 나는 속았다.
코드는 늘 멀쩡해 보였다. AI 머릿속에서는 앞뒤가 다 맞았다. 문제는 딱 하나였다. 그 코드가 진짜 캐드 안에서는 다르게 움직였다는 것. 그리고 AI는 그 캐드 화면을 볼 수 없다는 것.
결국 내 몫이었던 것
그 하얀 화면을 깬 건 결국 나였다.
화면을 한참 노려봤다. 그러다 이상한 걸 봤다. 미리보기가 잡고 있는 검은 네모가 있었다. 그게 내가 고른 도곽 자리가 아니었다. 엉뚱한 곳에 가 있었다.
“이거 좌표가 어긋난 것 같은데. 검은 네모가 도곽에 안 맞아.”
코드를 읽고 안 게 아니다. 나는 코드를 못 읽는다. 화면에 뜬 그림을 보고 알았다. 도면을 오래 그려 온 사람이라서 알았다. “이건 자리가 틀어진 그림이다.” 그 한 마디를 넘겼다. 그제야 AI가 맞는 쪽으로 고치기 시작했다.
디버깅 내내 그랬다. 판단은 늘 내 쪽에 있었다.
“이 부분은 쓸데없어 보이는데. 찾아서 지워 줘.” 이런 지시도 내가 했다. 고쳐 온 걸 캐드에서 직접 돌려 봤다. 되는지 안 되는지 마지막으로 확인하는 것도 나였다.
AI는 코드를 빨리 써 냈다. 그것만 잘했다. 그 코드가 실무에서 맞는지 틀리는지는 몰랐다. 눌러 보고, 왜 안 되는지 좁히고, 여기까지가 맞다고 마침표를 찍는 일. 그게 다 내 일이었다.
다 됐다고 끝난 것도 아니었다. 나는 한 번 더 물었다.
나는 RRAR이라는 도구를 쓴다. RRAV는 그 위에서 돈다. 그럼 RRAR을 안 쓰는 사람은 이걸 못 쓰는 거 아닌가. 그 사람도 쓰게 하려면 어디를 손봐야 하나.
이걸 나 혼자 쓸 건지, 남한테도 건넬 건지. 그 결정도 AI가 대신 해 주지 않았다.
그래도 만들 수 있는 이유
그래서 코딩도 못 하는 내가 어떻게 도구를 만드느냐고 묻는다면. 이렇게 답하겠다.
도구를 만드는 데 정말 필요했던 건 코딩 실력이 아니었다. “무엇이 필요한지 아는 것”이었다.
어떤 작업이 반복돼서 시간 낭비인지. 미리보기가 어떻게 떠야 실무에서 쓸 만한지. 화면에 뜬 그림이 맞는 그림인지 틀린 그림인지.
이건 코드가 알려 주지 않는다. 도면을 그려 온 시간이 알려 준다. AI는 그 감각을 코드로 옮겨 주는 아주 빠른 손이었다. 딱 거기까지다. 감각은 내 안에 있었다.
짧은 회고
RRAV가 드디어 하얀 백지 없이 미리보기를 띄웠다. 뿌듯했다. 동시에 좀 이상한 기분도 들었다.
나는 지금도 이 도구의 코드를 한 줄도 못 쓴다. 그런데 이 도구는 분명히 내가 만든 것이다.
코딩을 못 해도 자동화는 된다. 다만 AI가 나 대신 만들어 주지는 않는다. 이 두 문장은 서로 모순 같다. 하지만 도구 하나를 붙잡고 씨름해 본 사람은 안다. 같은 이야기의 앞면과 뒷면일 뿐이다.
반복 작업에 지쳐서 “이거 자동으로 안 되나” 싶은 날이 온다면. 코딩을 못 한다는 이유로 접지 않아도 된다. 대신 검증과 고집은 당신 몫으로 남는다. 그것만 미리 알아 두면 된다.
답글 남기기