글
개발하며 마주친 문제와 해결 과정, 그리고 회고를 기록합니다.

이미지에서 '대표 색' 뽑기: 평균색이 늘 분홍이 되던 이유
카톡 테마 캡처로 인스타 첫 장과 블로그 첫 사진을 그릴 때 제목 색이 테마와 상관없이 늘 같은 분홍으로 나왔습니다. 평균색이 흰 바탕에서 색을 잃는 이유, 채도 가중 색상 히스토그램으로 바꾼 과정, 파스텔 테마와 이미 디자인된 그림 같은 예외, 글 하나에 색 하나를 고정한 이유를 Java 코드와 결과 이미지로 정리합니다.
라즈베리파이에 띄운 개인 자동화 서버, 보안 점검해 보니 열려 있던 것들
혼자 쓰는 게시 자동화 도구 오토포스트(postflow)를 라즈베리파이에 자가 호스팅하면서 점검한 기록입니다. 인터넷에 일부만 여는 Tailscale Funnel의 이중 잠금, 예외 메시지로 새던 인스타 토큰, AI·외부 글이 섞인 HTML의 XSS, 이미지 다운로드 SSRF, 에이전트 토큰이 다른 호스트로 갈 수 있던 경로, 그리고 알고도 남긴 것과 그 이유를 정리합니다.
공개 키 한 번에 본문 36개가 새고 있었다: 프롬피드 보안 점검기
Supabase 공개 키로 프롬프트 본문 전체를 한 번에 받아 갈 수 있었고, x-forwarded-for를 바꿔 적으면 좋아요 수를 끝없이 올릴 수 있었습니다. 프롬피드를 점검하며 찾은 문제와 고친 방법, 배포와 마이그레이션 순서, 부분만 강제한 CSP, IP를 해시로만 남기는 도배 방지, git 기록에 남던 백업까지 고민한 과정을 정리합니다.
Vercel ISR Writes 급증 원인 분석과 재생성 주기 재설계
검색엔진 등록 뒤 크롤러가 늘자 프롬피드의 ISR Writes가 하루 4.6만 단위까지 치솟았습니다. 페이지 크기와 재생성 주기로 쓰기량을 계산해 원인을 좁히고, 경로별 revalidate를 다시 설계해 하루 평균 쓰기량을 절반 넘게 줄인 과정을 정리합니다.
EventKit 기반 애플 캘린더·미리 알림 ⇄ 옵시디언 양방향 동기화 앱 개발기
휴대폰의 TimeBlocks와 Mac의 옵시디언 일기에 같은 일정을 두 번 적지 않으려고, Swift EventKit으로 애플 캘린더·미리 알림과 옵시디언을 5분마다 양방향으로 맞추는 Mac 앱을 만들었습니다. 3-way 비교와 충돌 규칙, 지우지 않는 안전장치, macOS 권한, 가짜 캘린더 테스트, 10년 치 캘린더 489건 정리, 2주 운영 결과를 다룹니다.