본문 바로가기
스터디 열기

네 가지 질문과 건넬 말

이 책에 나온 말을 장별로 모았습니다. 걸린 시간이 붙은 네 문장은 11월 6일 밤 바이브 코딩 기본 모델에 실제로 보낸 그대로이고, 네 번에 약 180크레딧을 썼습니다. 고급 모델 판에서 보낸 말은 그렇다고 적었습니다. 나머지는 저희가 보내 보지 않고, 확인할 것을 묻거나 고칠 것을 시키려고 정리한 말입니다. 그대로 복사해 써도 되고, 내 서비스에 맞게 고쳐 써도 됩니다.

1. 이 책에서 건넨 말

2장 말 한 줄로 만든 신청 페이지

처음 만들 때(23초).

토요일 스터디 모임 참가 신청 페이지를 만들어 줘. 닉네임과 한마디를 적고 [신청하기]를 누르면 아래 신청자 명단에 바로 보이게 해 줘. 정원은 10명이고 남은 자리를 보여 줘.

답에 시트 주소가 없어 명단이 함께 보이지 않을 때.

다른 사람이 자기 휴대폰에서 열어도 같은 명단이 보이게 해 줘.

3장 내 서버를 둔다

본 증상을 말하고 내 서버로 옮길 때(29초).

친구 둘이 동시에 마지막 자리를 눌렀더니 정원 10명인데 11명이 됐어. 그리고 이 명단은 매일 새벽 4시에 지워진대. 신청을 내 서버로 옮겨 줘. 정원은 서버가 지키게 하고, 명단은 지워지지 않게 해 줘.

코드를 못 읽어도 확인할 시험 화면을 만들 때(26초).

내가 코드를 못 읽어도 확인할 수 있게 /test 화면을 만들어 줘. [30명 동시에 신청하기] 단추를 누르면 30개의 신청을 한꺼번에 보내고, 받아 준 수와 거절된 수, 지금 명단 수를 보여 줘.

시험해 보니 규칙이 깨졌을 때. 고급 모델 판에서 30명이 모두 들어간 뒤 보낸 말입니다.

30명이 동시에 [신청하기]를 누르는 시험을 했더니 정원 10명인데 30명이 모두 들어갔어. 동시에 눌러도 10명까지만 받고 나머지는 '정원이 찼어요'를 받게 고쳐 줘.

명령을 실행하는 도구에서 AI가 직접 시험하게 할 때(3장 3절).

이 신청 서버에서 정원 10명이 지켜지는지 시험을 만들어 돌려 줘. 30명이 동시에 신청하는 경우를 꼭 넣어 줘. 고치지는 말고, 시험한 것, 통과, 실패, 시험 못 한 것 네 칸으로 보고해 줘.

4장 데이터는 어디에 남는가

저장하는 곳을 물을 때.

이 앱은 무엇을 어디에 저장해? 파일 이름과 표 이름, 표마다 칸을 적어 줘. 서버를 껐다 켜면 남는 것과 사라지는 것도 나눠서 알려 줘.

다른 도구로 만든 앱을 올리기 전.

이 앱을 위니버시티 배포에 서버가 있는 앱으로 올릴 거야. 다시 배포해도 남는 폴더는 /data 하나야. 이 앱이 파일이나 데이터베이스를 저장하는 곳을 모두 찾아서 적어 주고, /data 밖에 저장하는 곳이 있으면 /data 안으로 옮겨 줘.

배포한 앱에 칸을 더할 때.

신청할 때 참석 방법(현장/온라인)을 고르게 해 줘. 이미 배포한 앱의 /data/app.db에는 신청이 쌓여 있어. 표 모양이 바뀌면 기존 명단이 어떻게 되는지 먼저 알려 주고, 기존 명단이 그대로 남은 채로 새 칸이 생기게 만들어 줘. 기존 신청의 참석 방법은 '미정'으로 해 줘.

5장 누가 무엇을 할 수 있는가

지우는 사람을 정할 때(49초).

주최자인 나만 장난 신청을 지우고 신청을 마감할 수 있게 해 줘. 주최자 확인에 쓰는 값은 코드에 적지 말고 배포할 때 환경변수 ADMIN_KEY로 넣을게. 주최자 화면은 /admin 주소로 따로 만들어 줘.

화면을 거치지 않은 요청이 막히는지 시험할 때.

/test 화면에 [키 없이 지우기 보내기] 단추를 더해 줘. 누르면 관리자 키 없이 첫 번째 신청을 지우는 요청을 보내고, 서버가 돌려준 숫자와 문구, 그 뒤의 명단 수를 보여 줘.

비밀값이 비었을 때를 물을 때.

환경변수가 하나도 없을 때 이 앱은 어떻게 동작해? 비밀값이 비어 있으면 미리 정해 둔 값으로 열리는 기능이 있는지 찾아서 알려 줘.

받는 정보를 점검할 때.

이 서비스가 사용자에게 받는 정보와 서버가 스스로 남기는 정보를 모두 표로 적어 줘. 칸마다 누가 볼 수 있는지, 이 서비스에 꼭 필요한지 적고, 빼도 되는 칸이 있으면 알려 줘.

6장 세상에 내놓기

배포하기 전에 /test를 뺄 때.

/test 화면을 빼 줘. 신청 화면과 주최자 화면은 그대로 두고, 다시 시험할 때는 다시 만들어 달라고 할게.

다시 배포하기 전.

이걸 올리면 지금 쌓여 있는 신청 명단 중에 사라지는 게 있어? 있으면 고치기 전에 먼저 알려 줘.

2. 어떤 서비스에도 던질 네 가지 질문

토요일 스터디 신청이 아닌 다른 것을 만들어도 묻는 것은 같습니다. AI가 만든 서비스를 받으면 이 넷을 묻습니다.

규칙은 어디서 지키나. 정원 10명은 화면에 적어 두었을 때는 부탁이었고, 서버가 지키고 나서야 규칙이 되었습니다.

이 서비스에 있는 규칙(정원, 마감, 글자 수 같은 것)을 모두 적고, 규칙마다 화면에서 막는지 서버에서 막는지 알려 줘. 화면에서만 막는 것이 있으면 서버에서도 막아 줘.

데이터는 어디에 남나.

이 서비스의 데이터는 어디에 저장돼? 서버를 다시 켜거나 다시 배포하면 남는 것과 사라지는 것을 나눠 주고, 백업은 어떻게 받는지 알려 줘.

누가 무엇을 할 수 있나. 실습 API에서는 아무나 지웠고, 내 서버에서는 키가 맞는 주최자만 지웠습니다.

이 서비스에서 할 수 있는 일을 모두 적고, 일마다 누가 할 수 있는지 표로 만들어 줘. 그 확인을 서버가 요청마다 하는지도 적어 줘.

비밀값은 어디에 두나.

이 서비스에 쓰이는 비밀값(키, 토큰, 비밀번호)을 모두 찾아 줘. 코드나 화면 쪽 파일에 적힌 것이 있는지, 환경변수가 비어 있으면 어떻게 동작하는지 알려 줘.

"막았어요"라는 답을 들으면 시험 화면을 만들어 달라고 합니다(3장 3절).

3. 이 책에 나온 말

말뜻이 책에서 본 곳
요청과 응답브라우저가 서버에 "이것 해 줘"라고 보내는 것과 서버가 돌려주는 답실습 API 시트의 '최근 요청'
GET"달라"명단 보기 GET /api/applicants
POST"받아 줘"신청하기 POST /api/applicants
DELETE"지워 줘"주최자의 [지우기]
PATCH"일부를 고쳐 줘"신청 마감하기 PATCH /api/admin/status
200됐어요명단 받기, 실습 API에서 남의 신청을 지운 요청
201받아서 새로 만들었어요받아 준 신청
403당신에게는 허락하지 않아요관리자 키가 맞지 않을 때
409지금 상태와 맞지 않아 못 해요"정원이 모두 찼어요.", "신청이 마감되었어요."
503서버 쪽 사정으로 지금은 처리하지 못해요주최자 키를 아직 넣지 않았을 때 "관리자 키가 아직 설정되지 않았어요." (5장 2절)
API서버가 받는 주소와 방식의 목록. 서버의 메뉴판[API 문서] 단추의 /docs 화면
데이터베이스데이터를 표로 정리해 디스크에 남기는 곳/data/app.db(SQLite)
인증요청을 보낸 사람이 누구인지 확인하는 일관리자 키 맞춰 보기
권한그 사람에게 무엇을 허락할지 정한 것주최자만 지우기·마감
환경변수코드 밖, 서버에만 적어 두는 메모ADMIN_KEY
배포내 컴퓨터나 미리보기 안의 앱을 누구나 들어올 수 있는 주소에 올리는 일https://(이름).wenivops.co.kr

마지막 수정