바이브 코딩 첫 경험
“말로 만드는 30분”
02이 차시를 마치면
- 1.바이브 코딩이 무엇을 대신해주고 무엇은 여전히 사람이 확인해야 하는지 구분해서 설명할 수 있다.
- 2.에디터형(VS Code)과 올인원형(Lovable, v0 등) 도구의 차이를 자신의 말로 비교할 수 있다.
- 3.이 과정이 VS Code와 Claude Code 조합을 쓰는 이유를 설명할 수 있다.
- 4.대화만으로 자기소개 웹페이지를 만들어 브라우저에서 직접 열어볼 수 있다.
- 5.AI의 '완료했다'는 말을 그대로 믿지 않고 직접 확인하는 습관을 시작할 수 있다.
03왜 필요한가
이직을 준비하다가 '자기소개 페이지 주소 하나쯤은 있어야겠다'는 생각이 들었다고 해보자. 만드는 법을 검색해보면 HTML, CSS, 자바스크립트, 서버, 배포까지 배워야 할 용어가 끝없이 나온다. 학원을 등록하자니 몇 달이 걸리고, 그렇다고 포기하자니 만들고 싶은 것 자체는 어렵지 않다 — 이름, 하는 일, 연락처 몇 줄이면 충분하다. '이 정도를 만드는 데 왜 이렇게 배울 게 많아야 하나'라는 질문에서 이 과정은 출발한다.
- 코딩을 배우기로 마음먹어도 어디서부터 시작해야 할지 몰라 첫걸음을 떼지 못한다.
- 만들고 싶은 건 간단한데, 배워야 한다는 목록(문법·프레임워크)은 끝이 없어 보인다.
- AI로 코딩이 쉬워졌다는 이야기는 들었지만, 정확히 무엇이 쉬워지고 무엇은 여전히 어려운지 감이 없다.
- 도구가 너무 많아(Lovable, v0, Cursor, ChatGPT…) 뭐부터 써야 할지 고르는 것부터 막막하다.
04개념 설명
바이브 코딩이란 무엇인가
바이브 코딩(vibe coding)은 문법을 외워 한 줄씩 코드를 치는 대신, 만들고 싶은 것을 말로 설명하면 AI가 실제로 동작하는 코드를 작성해주는 방식으로 개발하는 것을 뜻한다. 운전에 비유하면, 예전에는 엔진 구조를 알아야 차를 몰 수 있었다면 지금은 목적지만 말하면 알아서 길을 찾아주는 자율주행에 가깝다.
다만 자율주행차에도 손을 놓아도 되는 구간과 반드시 지켜봐야 하는 구간이 있듯, 바이브 코딩도 AI에게 전부 맡겨도 되는 부분과 사람이 반드시 확인해야 하는 부분이 나뉜다. 이 경계선을 아는 것이 이 과정 전체의 핵심이다.
- 말로 요청 → AI가 코드 작성 → 사람이 확인하고 다시 요청
- 문법을 몰라도 시작할 수 있지만, 결과를 검증하는 눈은 사람 몫이다
- 'AI가 다 해준다'가 아니라 '사람과 AI가 번갈아 가며 만든다'에 가깝다
도구 지형도 — 에디터형과 올인원형
바이브 코딩 도구는 크게 두 갈래로 나뉜다. 하나는 VS Code처럼 코드 파일이 그대로 내 컴퓨터 폴더에 남는 '에디터형'이고, 다른 하나는 Lovable·v0처럼 브라우저 안에서 대화만으로 화면과 코드가 동시에 만들어지는 '올인원형'이다.
올인원형은 시작이 훨씬 빠르다. 가입만 하면 몇 분 안에 그럴듯한 화면이 나온다. 대신 그 코드가 정확히 어디에 어떻게 저장되는지, 나중에 다른 서비스로 옮기거나 세밀하게 고치는 자유도는 에디터형보다 제한적인 경우가 많다. 에디터형은 처음에 폴더·파일 개념을 한 번은 마주해야 하지만, 그만큼 내 프로젝트를 내가 완전히 소유하고 원하는 방향으로 확장할 수 있다.
파일이 내 컴퓨터에 남는다
어떤 서비스로도 옮길 수 있다
시작이 빠르다
세부 커스터마이징·이전은 상대적으로 제한적
- 에디터형(VS Code + Claude Code 등) — 파일이 내 컴퓨터에 그대로 남고, 어떤 서비스로도 옮길 수 있다
- 올인원형(Lovable, v0 등) — 시작은 빠르지만 세부 커스터마이징과 이전이 상대적으로 제한적이다
- 실습 화면 구성은 각 서비스의 업데이트에 따라 이 교재와 다를 수 있다
이 과정이 VS Code + Claude Code로 가는 이유
이 과정은 4차시(구글 시트 자동화)부터 10차시(정식 배포)까지 업무 자동화, API 연동, 데이터베이스 연결처럼 올인원형 도구가 다루기 어려운 영역까지 나아간다. 처음부터 '내 파일이 내 컴퓨터에 있고, 무엇이든 연결할 수 있는' 에디터형 환경에 익숙해지는 쪽이 장기적으로 손해가 없다.
또한 Claude Code는 VS Code 안에 사이드바 대화창으로 붙기 때문에, 화면을 오가지 않고 한 화면에서 대화하고 결과를 바로 확인할 수 있다. 기본과정은 이 사이드바 대화 위주로 진행하고, 중급과정에서는 같은 도구 안에서 통합 터미널 비중만 늘려간다 — 과정 중간에 도구를 바꾸는 학습 마찰이 없다.
| 과정 | 쓰는 방식 |
|---|---|
| 기본과정 | 사이드바 대화 위주 |
| 중급과정 | 같은 도구, 터미널 비중만 증가 |
무엇이 되고 무엇이 안 되는가
바이브 코딩으로 오늘 당장 되는 일 — 화면이 있는 웹페이지를 대화만으로 만들고, 문구·색·배치를 요청해서 고치고, 몇 분 만에 인터넷에 공개하는 것까지는 무리 없이 된다.
아직은 사람이 반드시 개입해야 하는 일도 있다. AI는 없는 기능도 있는 것처럼 자신 있게 설명할 때가 있고('그럴듯한 거짓말'), '완성했다'는 말이 실제로 눌러보면 안 되는 경우도 흔하다('완료 선언 믿기'). 이런 지점을 매 차시 '이것만은 주의' 블록에서 계속 짚는다 — 오늘 그 첫 목록을 소개한다.
된다
화면 만들기 · 문구/디자인 수정 · 몇 분 안에 배포
사람 몫
결과를 직접 확인하기 · 그럴듯한 설명을 그대로 믿지 않기
- 된다 — 화면 만들기, 문구·디자인 수정, 몇 분 안에 배포
- 아직은 사람 몫 — 결과를 직접 확인하기, 그럴듯한 설명을 그대로 믿지 않기
- 이 경계는 차시가 진행될수록 넓어진다(4~5차시 자동화, 9차시 데이터베이스 등)
05실습 가이드
1. 오늘 쓸 화면 확인하기
- 실습실 컴퓨터(또는 미리 안내받은 대로 준비한 내 컴퓨터)에서 VS Code를 연다. 설치와 세부 설정은 다음 차시(02차시)에서 처음부터 다룬다 — 오늘은 이미 준비된 화면으로 바이브 코딩 자체를 먼저 경험한다.
- 사이드바에서 Claude Code 대화창 아이콘을 찾아 클릭한다. 실습 직전 화면 구성은 확장 버전에 따라 이 교재와 다를 수 있다.
- 대화창에 아무 말이나 입력해보고 응답이 오는지 확인한다.
예상 결과 — Claude Code 대화창이 열리고, 입력한 메시지에 대한 응답이 돌아온다.
안 될 때 — 대화창이 안 보이면 강사에게 화면 구성을 확인받는다. 응답이 없으면 인터넷 연결이나 로그인 상태를 먼저 확인한다.
2. 새 프로젝트 폴더 준비하기
- 바탕화면이나 문서 폴더처럼 찾기 쉬운 위치에 'my-intro'처럼 알아볼 수 있는 이름으로 빈 폴더를 하나 만든다.
- VS Code에서 '파일 → 폴더 열기'로 방금 만든 폴더를 연다.
예상 결과 — VS Code 왼쪽 탐색기에 빈 폴더가 열려 있다.
안 될 때 — 탐색기에 아무것도 안 보이면 정상이다 — 아직 파일이 없는 빈 폴더이기 때문이다. 폴더 자체가 안 열리면 경로에 한글이나 특수문자가 없는 위치로 옮겨본다.
3. 자기소개 내용 미리 정리하기
- 이름(또는 별명), 하는 일이나 관심사, 한 줄 소개, 연락 방법(선택) 등 페이지에 넣고 싶은 내용을 메모장에 3~4줄로 미리 적어둔다.
- 사진을 넣고 싶다면 파일을 준비하되, 오늘은 사진 없이 텍스트만으로 시작해도 된다.
예상 결과 — 페이지에 넣을 내용이 메모로 정리되어 있다.
안 될 때 — 특별히 쓸 내용이 없다면 '지금 배우고 있는 것', '이 과정에서 만들고 싶은 것'을 소개 문구로 써도 충분하다.
4. 첫 프롬프트로 페이지 요청하기
- P1-1 프롬프트의 [대괄호] 부분을 3단계에서 정리한 내 정보로 채워 Claude Code 대화창에 입력한다.
- 응답이 끝날 때까지 기다린다. 완료 메시지와 함께 파일이 만들어졌다는 안내가 보일 것이다.
예상 결과 — 탐색기에 index.html 같은 파일이 새로 생긴다.
안 될 때 — 파일이 안 생기면 대화가 끝까지 완료됐는지(응답이 중간에 끊기지 않았는지) 확인하고, 안 끝났다면 '방금 하던 작업을 마무리해줘'라고 다시 요청한다.
5. 브라우저에서 결과 확인하기
- 탐색기에서 생성된 html 파일을 찾아 더블클릭하거나, VS Code 확장의 미리보기 기능이 있다면 그것을 사용해 브라우저로 연다.
- 실제로 브라우저에 내 이름과 소개 문구가 보이는지 눈으로 확인한다.
예상 결과 — 브라우저 창에 내가 요청한 자기소개 페이지가 뜬다.
안 될 때 — 빈 화면이거나 글자가 깨져 보이면, 그 상태를 그대로 P1-4(복구 프롬프트)로 AI에게 설명한다.
6. 마음에 안 드는 부분 고쳐 나가기
- 색, 문구 위치, 폰트 크기 등 마음에 안 드는 부분을 한 번에 하나씩 P1-2 프롬프트 형태로 요청한다.
- 요청할 때마다 브라우저를 새로고침해 실제로 바뀌었는지 확인한다.
예상 결과 — 요청한 부분이 하나씩 반영되며 페이지가 원하는 모습에 가까워진다.
안 될 때 — 여러 가지를 한 번에 요청하면 무엇이 반영됐는지 헷갈린다. 한 번에 한 가지씩만 요청하는 방식으로 되돌아간다.
7. '완료했다'는 말 검증하기
- AI가 '완성했습니다', '모두 반영했습니다'라고 답해도 그 말만 믿지 않고, P1-3 프롬프트로 스스로 점검해달라고 요청한다.
- AI의 점검 답변과 별개로, 직접 브라우저를 새로고침해 눈으로 다시 확인한다.
예상 결과 — AI의 점검 결과와 내 눈으로 본 화면이 일치한다.
안 될 때 — AI의 점검 답변과 실제 화면이 다르면 그 차이를 그대로 알려주고 다시 확인해달라고 요청한다 — 이 어긋남 자체가 오늘 배운 '완료 선언 믿기' 주의사항의 실제 사례다.
8. (선택) 다른 도구와 잠깐 비교해보기
- 시간이 남으면 Lovable이나 v0 같은 올인원형 도구 중 하나에 가입해, 같은 자기소개 내용으로 페이지를 만들어본다.
- 완성 속도, 코드가 어디에 저장되는지 보이는지, 내가 원하는 세부 수정이 얼마나 자유로운지를 오늘 VS Code에서 만든 결과와 비교해본다.
예상 결과 — 두 방식의 체감 차이(속도, 자유도, 파일 소유감)를 한두 문장으로 말할 수 있다.
안 될 때 — 가입이 막히거나 시간이 부족하면 건너뛰어도 된다 — 이 비교는 선택 실습이다.
9. 오늘 결과 남겨두기
- 완성된 폴더를 그대로 남겨둔다. 다음 차시에서 이 폴더를 그대로 이어받아 Git과 GitHub 배포를 실습한다.
- 오늘 사용한 프롬프트와, AI가 그럴듯하게 둘러댔던 순간이 있었다면 짧게 메모해둔다.
예상 결과 — 다음 차시에 바로 이어 쓸 수 있는 폴더와, 오늘의 프롬프트 기록이 남아 있다.
안 될 때 — 메모를 안 했다면 지금이라도 대화창을 스크롤해 올라가 다시 확인하고 옮겨 적는다.
06실전 프롬프트
07이것만은 주의
무슨 일이 생기나 — AI는 작업을 마치면 항상 '완료했습니다', '반영했습니다'라고 말한다. 하지만 실제로 파일을 열어보면 요청한 내용 일부가 빠져 있거나 적용되지 않은 경우가 자주 있다.
대처 — 말로 된 완료 선언과 눈으로 본 결과를 항상 따로 확인한다. 오늘의 P1-3처럼 항목별 반영 여부를 다시 물어보는 점검 습관을 지금부터 들인다.
무슨 일이 생기나 — AI는 실제로 동작하지 않는 기능(예: 메일 자동 발송, 존재하지 않는 버튼 동작)을 마치 이미 되는 것처럼 자신 있는 말투로 설명할 때가 있다. 확인 없이 넘어가면 나중에 '왜 안 되지'라는 상황과 마주친다.
대처 — 설명을 듣는 데서 멈추지 않고 직접 눌러보고 확인한다. 특히 '자동으로', '이미 처리됩니다' 같은 표현이 나오면 한 번 더 확인 질문을 던진다.
무슨 일이 생기나 — 오늘 실습에는 API 키가 등장하지 않지만, 4~5차시부터는 외부 서비스에 접속하기 위한 API 키를 코드에 넣게 된다. 이 키를 코드에 그대로 적어 공개 저장소에 올리면 누군가 가져다 써서 요금이 청구될 수 있다.
대처 — 지금부터 'API 키 = 비밀번호'라는 감각을 가져간다. 앞으로 키를 다룰 때는 항상 환경변수로 분리하고, 코드에 직접 적힌 값이 있는지 배포 전에 확인하는 습관을 4차시 이전에 미리 만들어둔다.
무슨 일이 생기나 — 지형도를 살펴보다 보면 새로운 도구가 계속 눈에 들어와, 정작 오늘의 실습(자기소개 페이지 완성)을 끝내지 못한 채 이 도구 저 도구를 기웃거리게 된다.
대처 — 오늘은 VS Code + Claude Code 조합 하나만 끝까지 써본다. 다른 도구 비교는 8단계(선택)에서 시간이 남을 때만 짧게 곁눈질하는 정도로 제한한다.
08자가 점검
09과제
오늘 만든 자기소개 페이지에 실제 자신의 정보를 마저 채워 완성한다. 시간이 된다면 소개하고 싶은 프로젝트나 관심사를 한 항목 더 추가해보고, 실습 중 AI가 '완료했다'고 했지만 실제로는 반영되지 않았던 순간이 있었다면 무엇이었는지 함께 적어본다.
제출 형식 — ① 완성된 페이지를 브라우저에서 연 화면 스크린샷 ② 사용한 프롬프트 전체(수정 요청 포함) ③ '완료됐다'는 말과 실제 결과가 달랐던 순간(있었다면) 한두 줄 메모를 하나의 문서로 정리해 제출한다.
10더 알아보기
- Lovable — 대화만으로 웹앱을 만드는 올인원형 도구 — 오늘 8단계 비교 실습용
- v0 by Vercel — UI 컴포넌트 생성에 특화된 올인원형 도구 — 오늘 8단계 비교 실습용
- 바이브 코딩(Vibe Coding)
- — 문법을 직접 작성하지 않고, 원하는 것을 말로 설명해 AI가 코드를 작성하게 하는 개발 방식.
- 에디터형 도구
- — VS Code처럼 코드 파일이 내 컴퓨터 폴더에 그대로 남아, 어떤 서비스로도 옮기고 확장할 수 있는 개발 도구 유형.
- 올인원형 도구
- — Lovable·v0처럼 가입만 하면 브라우저 안에서 대화로 화면과 코드가 동시에 만들어지는 개발 도구 유형.
다음 차시 예고 — 다음 차시에서는 오늘 만든 폴더를 그대로 이어받아, VS Code를 제대로 설치하고 Git으로 되돌릴 수 있는 상태를 만든 뒤 GitHub Pages로 처음 배포까지 해봅니다.