한 칸은 혼자 앱을 만드는 작업실입니다. 크게 만들기보다, 하나를 제대로 채우는 쪽을 택합니다. 칸은 늘 하나쯤 비워둡니다.

1인 개발 서울 2026—
Apps

채운 칸

앱마다 지원 페이지가 따로 있습니다.

AI 용어 사전

GitHub Pages

AI가 성행하는 요즘 개발자와 비개발자가 이해하기 쉽게 도움을 주고 싶어 정리해둔 용어 사전입니다.

db-schema-map

GitHub

MyBatis XML과 JPA 엔티티를 읽어 프로젝트가 실제로 쓰는 테이블 구조를 정리해주는 Claude Code 플러그인입니다. DB에 접속하지 않고 코드만 봅니다. 낯선 프로젝트에 들어갈 때 테이블 사이의 관계와 스키마를 바꿨을 때 깨질 범위를 먼저 파악하려고 만들었습니다.

claude-tmp-cleanup

GitHub

Claude Code가 세션마다 임시폴더에 남기는 scratchpad 폴더를 정리해주는 플러그인입니다. 오래된 순으로 크기 · 나이와 함께 표로 보여주고, 고른 것만 지웁니다. 지금 사용하고 있는 세션은 실수로 지워지지 않게 보호합니다. Mac은 잘 안 끄기 때문에 계속 쌓이던 세션을 정리하려고 만들었습니다.

Homelog

준비 중

집에 관한 기록을 한곳에 둡니다. 가전을 언제 샀는지, 보증이 언제 끝나는지, 계약이 언제 만료되는지 — 필요할 때 찾지 않아도 먼저 알려줍니다.

앱인토스

토스

토스 안에서 바로 여는 미니앱들입니다. 작게 만들어 자주 냅니다. 토스 앱에서 검색하면 나옵니다.

미니앱 7개

빈 칸

아직 정하지 않았습니다. 여기 들어올 앱을 만들고 있습니다.

Log

작업 일지

만들면서 남기는 기록입니다.
2026.09.12
앱인토스 상태창을 앱인토스에 출시했습니다. 웹 베타로 열어 두었던 것을 토스 안에서 바로 열 수 있게 되었습니다.
2026.08.27
앱인토스 다 만들고 첫 화면을 다시 열어 보니 검은 배경에 입력칸 두 개뿐이었습니다. 제일 웃긴 건 직업명인데, 그걸 이름과 생일을 다 넣은 사람에게만 보여주고 있었습니다. 값을 치른 사람에게만 상품을 보여준 셈입니다. 같은 실수가 줄줄이 나왔습니다. 공유가 목적인데 공유 버튼은 스크롤을 내려야 나왔고, 카톡 미리보기 이미지에는 서비스 이름이 없어서 그 카드를 받은 사람은 이게 무엇인지 알 수 없었습니다. 레벨은 11124로 찍혔는데, 살아온 날수를 그대로 쓴 숫자라 또래끼리 차이가 없어 비교할 거리가 못 됐습니다. 만드는 일과 퍼지게 하는 일이 다른 작업이라는 걸 알았습니다. 카드는 처음부터 잘 나왔고, 막혀 있던 건 그걸 남에게 보여주는 길이었습니다. 코드가 아니라 배치의 문제였습니다. 광고를 붙일까 생각했다가 접었습니다. 퍼지는 길이 카드 한 장뿐인데 거기에 광고가 찍히면 그 길을 스스로 막는 일입니다. 재미로 만든 것은 재미로 두기로 했습니다. 이름과 생일만 넣으면 오늘의 나를 상태창으로 보여주는 웹을 만들기 시작했습니다. 서버도 데이터베이스도 없이, 이름과 날짜만 가지고 매일 다른 결과가 나옵니다. 같은 사람이 같은 날 열면 언제나 같은 카드가 나와야 친구끼리 결과를 맞춰 볼 수 있어서, 저장할 것이 하나도 없도록 만들었습니다. 오래 걸린 것은 코드가 아니라 직업 이름이었습니다. "직장인 마법사"는 아무도 웃지 않는데 "퇴근을 기다리는 마법사"는 웃깁니다. 예순 개를 써 놓고 다시 보고 나서야 왜 어떤 것은 되고 어떤 것은 안 되는지 알았습니다. 직업이 상황을 설명해 줄 때만 웃깁니다. 비밀번호를 재설정하는 봉인술사, 지도 없이 못 걷는 항해사처럼요. 빨래를 개지 않는 음유시인은 그냥 단어 두 개였습니다. 한 장에 같은 단어가 두 번 나오는 것도 뒤늦게 알았습니다. 직업과 오늘의 특성을 따로 만들었으니 겹칠 리 없다고 생각했는데, 만 장을 뽑아 세어 보니 열다섯 장에 한 장꼴이었습니다. 목록마다 다른 소재를 맡기고 나서야 사라졌습니다. 눈으로 넘겨볼 때는 한 번도 걸리지 않던 것이었습니다.
이어서 읽기 →
2026.08.22
Lockbox Vault 맥 버전은 지난달에 접어둔 작업이었습니다. 다시 열어 보니 화면은 이미 다 만들어져 있었습니다. 막고 있던 건 만들다 만 기능이 아니라, 한 번도 내보내지 않았다는 사실이었습니다. 출시 준비를 하다 말고 검증 절차부터 적었습니다. 무엇을 확인해야 하는지 적어 내려가다 보니, 볼트가 사라질 수 있는 길이 세 개 나왔습니다. 마스터 비밀번호를 다섯 번 틀리면 볼트를 지우는데, 그 횟수를 기기끼리 나눠 세고 있었습니다. 아이폰에서 세 번, 맥에서 두 번이면 다섯 번입니다. 동기화를 끄면 이 기기에만 두겠다는 뜻인데 다른 기기의 볼트까지 지워졌습니다. 스크린샷을 찍으려고 만들어 둔 개발용 인자는 실제 볼트를 먼저 비우고 시작했습니다. 셋 다 기기가 하나일 때는 드러나지 않던 것들입니다. 맥을 더하는 일이 화면을 하나 늘리는 작업인 줄 알았는데, 실은 "기기는 하나"라는 전제를 걷어내는 일이었습니다. 전제가 바뀌면 멀쩡하던 코드가 조용히 위험해집니다. 그래서 내보내는 일보다 이쪽을 먼저 고쳤습니다. 지금은 심사를 기다리고 있습니다. 아이폰에서 쓰던 볼트를 맥에서 그대로 열고, 자리를 비우면 알아서 잠깁니다. 추가 구매는 없습니다.
이어서 읽기 →
2026.08.03
월급날까지 영수증 스캔과 급여주기 리포트를 프로 기능으로 묶어 결제까지 붙여 봤습니다. 사업자 등록부터 App Store 심사 준비까지 마쳤는데, 막판에 순서를 바꿨습니다. 값을 매기기 전에 이 기능이 정말 쓸 만한지부터 확인하는 게 먼저였습니다. 그래서 1.1.0에서는 두 기능을 모두 열어 둔 채 내보냅니다. 칸을 나누는 일은 써 보신 분들의 이야기를 듣고 그다음에 정하겠습니다.
2026.08.01
월급날까지 영수증을 찍으면 금액·가맹점·날짜를 알아서 읽어 지출로 정리하는 기능을 넣었습니다. 인식은 전부 기기 안에서 처리해 영수증 사진이 밖으로 나가지 않습니다. 급여 주기 단위로 어디에 얼마를 썼는지, 지난 주기보다 무엇이 늘었는지 짚어 주는 카테고리 리포트도 더했습니다.
전체 일지 11건 →
Studio

작업실

기획부터 디자인, 개발, 문의 응대까지 한 사람이 합니다. 그래서 빨리 만들지는 못하지만, 답장은 빠릅니다.

만드는 기준은 하나입니다. 화면을 열었을 때 알아야 할 것이 하나여야 합니다. 기능을 더할지 말지 고민될 때는 대체로 더하지 않습니다.

쓰신 데이터는 가능하면 기기 안에 둡니다. 서버로 보낼 이유가 없으면 보내지 않습니다.