개발을 배울 때 바이브 코딩을 먼저 하는 게 옳은 것인가

정기창·

아직까지 학교에서 프로그래밍을 배운다고 한다면, AI의 도움 없이 직접 타이핑해서 프로그래밍을 해야 하는 상황들이 발생할 것 같습니다. 바이브 코딩을 한다면 자료구조나 알고리즘은 필요 없습니다. AI에게 요청한 내용이 실제 작업할 때 그 개념들이 필요하다면 알아서 AI가 판단해서 그 자료구조, 알고리즘 개념을 적용할 테니까요. 우리는 그저 우리가 요청한 작업이 잘 동작하는지에 대한 결과만을 보면 됩니다. 실제 내부는 우리의 의도대로 흘러가지 않았을 수도 있지만, 블랙박스로 두고 그냥 넘겨버리는 것이죠.

아직 블랙박스는 무너지지 않았습니다

아직까지는 그렇게 쌓인 블랙박스들이 무너져 내려서 시스템이 붕괴되는 경험을 하지는 못했습니다. AI 모델이 아직 발전이 많이 되지 않았을 때에는 게시판 기능이 있는 웹사이트를 만들려다가 돌이킬 수 없이 뒤죽박죽 프로그래밍이 되어 있어서 엎어버렸지만, 요즘 제가 AI를 통해서 만들고 있는 것은 꽤나 많은 소스코드가 쌓였음에도 불구하고, 기존의 기능들이 붕괴되거나 하지 않고 모두 유기적으로 잘 연결돼서 동작하고 있습니다. 이것은 우연일지, 착각일지, 아니면 제가 초기에 짜놓은 인터페이스 덕분일지는 알 수가 없습니다.

시험을 위해서라면 정공법이 맞을지도 모릅니다

시험을 보기 위해서라면 바이브 코딩을 먼저 하면 안 될지도 모릅니다. 정통적으로 지루하더라도 그 수순을 밟아 나가야 할지도 모릅니다. 객체가 뭔지, 변수가 뭔지, 반복문, 조건문을 어떻게 쓰는지 등을 숙지하고 나서, 질려버렸던 사실조차 잊혀질 때 즈음에 실제로 구현을 하면서, 아 그때 괴로워해가며 배웠던 개념이 이날을 위한 것이라고 뒤늦게 깨달았던 과정을 밟아야 하는지도 모르겠습니다.

그렇다면 어떻게 가르쳐야 할까요

이론이 곧바로 가시적으로 쉽게 보이는 결과물과 조금이라도 연관 짓기 위해서는 어떻게 해야 할까요. 공부라는 것은 마냥 재밌게 할 수는 없는 것이겠지만, 누군가를 가르쳐야 하는 입장이라면 저는 최대한 이해하기 쉽고 재밌게 가르쳐보고 싶다는 생각이 들었습니다.

바이브 코딩AI 코딩프로그래밍 학습코딩 교육개발 회고