9. 작은 성공부터 만들기: 파일 읽기·쓰기와 간단한 프로그램 실험

자동화의 진짜 출발점은 거창한 시스템이 아니다
비개발자가 Codex를 처음 만날 때 가장 먼저 느끼는 감정은 대개 비슷하다. "이거 너무 전문가용 아닌가?"라는 약간의 긴장이다. 그런데 신기하게도 그 긴장은 아주 작은 성공 한 번으로 금방 풀린다. 내 폴더에 있는 파일을 읽고, 내용을 정리하고, 새 파일을 만들어 저장하고, 필요하면 짧은 프로그램까지 직접 만들어 실행해보는 순간, Codex는 더 이상 멀리 있는 기술이 아니다.
Codex는 원래 코딩을 돕는 도구이지만, 실제로는 로컬 컴퓨터에서 파일을 읽고 쓰고 작업을 수행하는 에이전트라는 점이 더 중요하다.1 데스크톱 환경에서도 기본 단위는 프로젝트와 스레드인데, 프로젝트는 작업 폴더, 스레드는 그 안에서 진행되는 하나의 작업 세션이라고 이해하면 충분하다.2 즉, 비개발자에게 필요한 출발점은 "앱을 잘 다루는 법"보다 "작은 작업 하나를 끝까지 성공시키는 경험"이다.
처음부터 큰 자동화를 만들 필요는 없다. 오히려 처음에는 아주 작은 범위가 좋다. 한 폴더, 몇 개의 문서, 한 개의 출력 파일, 그리고 가능하면 한 번에 이해할 수 있는 짧은 프로그램이면 충분하다. 처음에는 읽기 전용이나 제한된 승인 모드로 시작해도 좋다. 이렇게 범위를 좁히면 실수에 대한 부담이 크게 줄어든다.3 Codex 앱은 여러 스레드를 병렬로 다루는 데 강점이 있지만, 첫 성공은 오히려 하나의 스레드에서 조용히 만드는 편이 훨씬 좋다.4
오늘 만들 작은 성공의 그림
이 장에서는 세 가지 경험을 만든다. 첫째는 파일을 읽게 하는 경험이다. 둘째는 읽은 내용을 바탕으로 새 파일을 쓰게 하는 경험이다. 셋째는 아주 짧은 프로그램이나 스크립트를 직접 만들고 테스트하게 하는 경험이다.
이 세 단계를 거치면 머릿속에서 중요한 전환이 일어난다. "AI가 대답을 잘하네"에서 끝나는 것이 아니라, "내 업무 폴더 안에서 실제로 일을 하네"라는 감각이 생긴다. 이 차이는 꽤 크다. 전자는 감탄이고, 후자는 자신감이다.
실습 준비: 연습용 폴더부터 따로 만든다
처음 실습은 늘 복사본으로 하는 것이 좋다. 원본 문서를 건드릴 이유가 없다. 예를 들어 바탕화면이나 문서 폴더 아래에 codex-practice 같은 연습용 폴더를 하나 만든다. 그 안에 텍스트 파일 두세 개, CSV 파일 하나, 이미지 파일 몇 개 정도를 넣어두면 충분하다.
예를 들면 이런 식이다.
codex-practice/
meeting_notes.txt
todo.txt
sales.csv
sample-images/
product-01.png
product-02.jpg여기서 중요한 점은 파일이 완벽할 필요가 없다는 것이다. 오히려 조금 어수선한 파일이 좋다. 실제 업무 데이터는 늘 조금 지저분하기 때문이다. 메모는 문장 길이가 제각각일 수 있고, CSV에는 빈칸이 있을 수 있으며, 파일명도 제멋대로일 수 있다. Codex는 바로 그런 현실적인 재료를 다루면서 진가를 보여준다.
첫 번째 성공: 파일을 읽고 무슨 내용인지 설명하게 하기
가장 먼저 할 일은 수정 없이 읽기만 시키는 것이다. 이 단계에서는 "Codex가 내 로컬 파일을 실제로 읽고 이해한다"는 감각을 얻는 것이 핵심이다.
처음 프롬프트는 이렇게 단순할수록 좋다.
현재 폴더의 txt와 csv 파일을 읽고, 각 파일에 어떤 내용이 들어 있는지 쉬운 한국어로 요약해줘.
아직 어떤 파일도 수정하지 말고, 파일별 핵심 내용과 빠진 정보만 정리해줘.
이 요청이 좋은 이유는 세 가지다.
작업 범위가 분명하다.
수정 금지 조건이 들어 있다.
출력 기대치가 단순하다.
Codex가 잘 작동하면 대개 파일별 요약, 발견한 패턴, 누락된 항목, 다음에 정리하면 좋은 포인트를 설명해줄 것이다. 이때 꼭 확인해야 할 것은 "정답률"보다 "작업 방식"이다. 정말 해당 파일을 읽었는지, 무엇을 근거로 말하는지, 내가 이해할 수 있는 문장으로 설명하는지 보는 것이다.
이 첫 단계만으로도 꽤 많은 것이 정리된다. 예를 들어 meeting_notes.txt에서는 회의 일시와 결정 사항을 뽑아내고, todo.txt에서는 해야 할 일을 항목별로 묶고, sales.csv에서는 날짜, 제품명, 수량, 금액 같은 열 구조를 파악할 수 있다. 사람이 손으로 읽으면 별것 아닌 것처럼 보여도, 이 작업을 AI가 로컬 파일 기준으로 해냈다는 사실이 중요하다. 자동화의 문이 열린 것이다.
두 번째 성공: 읽은 내용을 바탕으로 새 파일을 쓰게 하기
다음 단계는 더 짜릿하다. 이제는 읽은 내용을 말로 설명하는 데서 멈추지 않고, 실제 결과물을 파일로 저장하게 한다. 비개발자에게 이 단계가 특히 강력한 이유는 눈으로 보이는 변화가 생기기 때문이다. 폴더 안에 summary.md나 clean_notes.txt 같은 새 파일이 생기는 순간, 자동화는 갑자기 현실이 된다.
이런 식으로 요청해보자.
방금 읽은 내용을 바탕으로
summary.md파일을 만들어줘.
각 파일의 핵심 내용, 해야 할 일, 숫자 정보, 날짜 정보를 구분해서 정리해줘.
원본 파일은 수정하지 말고 새 파일만 만들어줘.
여기서 핵심은 "원본은 수정하지 말고 새 파일만"이라는 문장이다. 초보자일수록 이 조건을 자주 넣는 것이 좋다. 그러면 작업의 심리적 안정감이 크게 올라간다.
잘 되면 summary.md에는 대개 이런 구조가 들어간다. 어떤 파일을 읽었는지, 핵심 내용은 무엇인지, 후속 액션은 무엇인지, 눈에 띄는 숫자와 날짜는 무엇인지가 정리된다. 결국 Codex는 단순 요약기가 아니라, 읽은 내용을 구조화해서 저장하는 비서처럼 행동하게 된다.
이 단계에서 꼭 느껴야 하는 포인트가 하나 있다. "아, 내가 시킨 규칙대로 파일을 만들 수 있구나." 이 감각이 생기면 이후의 자동화는 훨씬 쉬워진다. 보고서 초안, 회의록 정리본, 분류표, 브리프 초안, 이미지 목록표 같은 결과물이 모두 같은 원리로 만들어지기 때문이다.
세 번째 성공: 아주 작은 프로그램을 직접 만들고 돌려보기
이제 많은 비개발자가 한 번 멈칫하는 구간이 온다. "프로그램까지는 좀 무서운데요?" 그런데 여기서 말하는 프로그램은 거대한 앱이 아니다. 손으로 하면 귀찮지만 규칙은 명확한 작업을 대신하는 작은 스크립트 하나면 충분하다.
예를 들어 이런 작업은 아주 좋은 첫 실험이다.
현재 폴더의 sample-images 안에 있는 이미지 파일 목록을 읽어서, 파일명과 확장자, 파일 크기, 마지막 수정 시간을 inventory.csv로 저장하는 간단한 파이썬 스크립트를 만드는 것이다.
프롬프트는 이렇게 줄 수 있다.
sample-images폴더를 스캔해서 파일명, 확장자, 파일 크기, 마지막 수정 시간을inventory.csv로 저장하는 간단한 Python 스크립트를 만들어줘.
스크립트 파일 이름은make_inventory.py로 해줘.
먼저 무슨 방식으로 만들지 짧게 설명한 뒤 파일을 생성하고, 가능하면 테스트 실행까지 해줘.
실행에 필요한 환경이 없으면 설치를 강행하지 말고, 부족한 점을 쉽게 설명해줘.
이 요청이 좋은 이유는 실용적이면서도 위험이 낮기 때문이다. 원본 파일을 삭제하거나 바꾸지 않고, 정보를 읽어서 목록만 만드는 작업이기 때문이다. 그리고 결과물도 아주 명확하다. make_inventory.py라는 스크립트와 inventory.csv라는 결과 파일이 생기면 성공이다.
여기서 중요한 것은 코드 자체를 다 이해하는 것이 아니다. 물론 읽어보면 좋지만, 처음부터 모든 문법을 알 필요는 없다. 비개발자에게 더 중요한 질문은 이것이다.
"이 스크립트는 무엇을 입력으로 받고, 무엇을 출력하나?"
이 질문에 답할 수 있으면 충분하다. 입력은 sample-images 폴더이고, 출력은 inventory.csv다. 그리고 중간 과정은 파일을 훑어보며 정보를 모으는 것이다. 이 정도만 이해해도 자동화의 핵심은 이미 잡은 셈이다.
프로그램이 한 번에 안 돌아가도, 그게 오히려 좋은 경험이다
현실에서는 첫 실행에 에러가 날 수도 있다. 그런데 오히려 그 순간이 좋은 공부가 된다. 왜냐하면 비개발자에게 중요한 것은 "실패하지 않는 것"이 아니라 "실패했을 때 Codex와 함께 고치는 경험"이기 때문이다.
처음에 자주 만나는 문제는 대개 비슷하다.
파이썬이 설치되어 있지 않다.
파일 경로를 잘못 잡았다.
CSV 인코딩이나 권한 문제로 저장이 안 된다.
폴더 안에 예상과 다른 파일 형식이 섞여 있다.
이럴 때는 당황하지 말고 이렇게 말하면 된다.
방금 오류를 비개발자도 이해할 수 있게 설명해줘.
원인을 한 문장으로 먼저 말하고, 그다음 수정 방법을 한 단계씩 안내해줘.
가능하면 내가 승인하기 전에는 위험한 변경은 하지 말아줘.
이 프롬프트가 좋은 이유는 오류를 기술 용어 덩어리로 받지 않게 해주기 때문이다. Codex가 "모듈이 없어요", "경로가 틀렸어요", "쓰기 권한이 없어요"처럼 사람이 이해할 수 있는 말로 풀어주기 시작하면, 에러는 공포가 아니라 대화 가능한 문제로 바뀐다.
잘 되는 프롬프트는 늘 다섯 가지를 담고 있다
비개발자가 Codex를 쓸 때 가장 빨리 실력이 느는 방법은 프롬프트의 뼈대를 익히는 것이다. 길고 멋진 문장이 필요한 것이 아니다. 아래 다섯 가지가 들어가면 작업 성공률이 확 올라간다.
목표: 무엇을 만들고 싶은가
입력 범위: 어느 폴더와 어느 파일을 볼 것인가
출력물: 어떤 이름의 파일로 어떤 형식으로 저장할 것인가
금지사항: 원본 수정 금지, 삭제 금지, 외부 폴더 접근 금지 같은 제한
검증 방법: 실행 테스트, 미리보기, 결과 요약 중 무엇을 보여줄 것인가
예를 들어 이런 템플릿은 아주 강력하다.
이 폴더의 파일을 읽어
{원하는 결과물}을 만들어줘.
입력 범위는{대상 폴더/파일}로 제한해줘.
결과는{파일명}으로 저장해줘.{원본 수정 금지 / 삭제 금지 / 새 파일만 생성}조건을 지켜줘.
끝나면 무엇을 읽었고 무엇을 만들었는지 짧게 요약해줘.
이 구조에 익숙해지면, 이후 챕터에서 다룰 이미지 가공 자동화나 브로슈어 자료 수집 같은 작업도 훨씬 쉽게 요청할 수 있다. 결국 복잡한 자동화도 처음에는 같은 공식으로 시작한다.
비개발자에게 진짜 중요한 것은 코드 작성이 아니라 검증 습관이다
많은 사람이 자동화를 배우면서 "내가 코드를 얼마나 이해해야 하지?"를 걱정한다. 하지만 초반에는 그보다 "결과를 어떻게 확인할까?"가 훨씬 중요하다.
예를 들어 새 파일이 만들어졌다면 바로 열어본다. 정리 문서가 생겼다면 제목과 항목 구분이 내가 원하는 방식인지 확인한다. CSV가 만들어졌다면 엑셀이나 스프레드시트로 열어 열 이름과 값이 맞는지 본다. 스크립트가 실행됐다면 출력 파일 개수와 내용이 예상과 맞는지 체크한다.
이 검증 습관은 별것 아닌 것처럼 보여도 아주 중요하다. Codex는 강력하지만, 결국 좋은 실무자는 "잘 시키는 사람"이면서 동시에 "잘 확인하는 사람"이다. 특히 처음에는 화려한 자동화보다 검증 가능한 자동화가 훨씬 낫다.
오늘 얻어야 할 자신감은 딱 하나다
이 장의 핵심은 어렵지 않다. 내 업무 폴더 안에서, 내가 지정한 범위의 파일을 읽고, 내가 원하는 형식으로 정리하고, 필요하면 작은 프로그램까지 만들어 테스트하게 할 수 있다는 확신을 얻는 것이다.
이 확신이 생기면 시선이 바뀐다. 이전에는 문서를 손으로 열고, 복사하고, 붙여넣고, 파일명을 정리하고, 목록을 만들고, 누락을 확인하는 일을 전부 사람이 직접 했다. 이제는 그중 상당 부분을 Codex에게 맡길 수 있다. 더 중요한 점은, 단순히 맡기는 것이 아니라 내가 통제 가능한 방식으로 맡길 수 있다는 것이다.
바로 이 지점에서 비개발자는 사용자에서 설계자로 바뀌기 시작한다. 코드를 줄줄 쓰지 못해도 괜찮다. 대신 작업 범위를 정하고, 결과물을 정의하고, 테스트 기준을 제시할 수 있다면 이미 자동화의 주도권을 잡은 것이다.
작은 성공이 다음 장의 실전으로 이어진다
다음 장부터는 더 실용적인 자동화로 넘어간다. 로컬 이미지 가공, 배경 투명화, 자료 수집, 브로슈어 생성 같은 작업은 얼핏 더 복잡해 보이지만, 사실 오늘 만든 세 가지 성공의 연장선에 있다.
파일을 읽는다.
필요한 형태로 정리한다.
작은 프로그램이나 지시문을 만든다.
결과를 검증한다.
이 순서를 몸에 익히면 Codex는 더 이상 "코딩 도구"가 아니라 "실제 업무를 움직이는 도구"가 된다. 그리고 그 출발점은 언제나 작고 분명한 한 번의 성공이다.
참고
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.