Captain's Log

03 / Journal

Observatory

학습 로그, 데이터 인사이트, 그리고 에세이.

Training

코드로 빚은 3D 아이콘 15종 — AI와 함께 판 파이프라인, 그리고 미완의 품질

디자인 시스템에 넣을 3D 아이콘 15종을 AI 에이전트와 함께 전부 코드로 만들었다. bpy 프로시저럴 모델링부터 Cycles 프리렌더, join()의 좌표계 함정과 오일러 순서의 배신까지 — 시행착오의 전 과정을 기록한다. 결론부터: 품질이 실사용 기준에 못 미쳐 배치는 보류했다. 대신 파이프라인은 남았고, AI의 발전에 맞춰 계속 갱신해 실사용까지 끌고 갈 계획이다.

#AI#Blender#3D#Three.js#Design System
Training

색을 쪼개는 유리 큐브 — 코드로만 빚은 작품

3D 아이콘 파이프라인에서 파생된 랩 작품. 레퍼런스 이미지 한 장에서 출발해, 모델링 UI를 열지 않고 bpy + Cycles 코드만으로 색분산 유리 큐브 필드를 재현했다. Dispersion 입력이 없는 유리를 Glass BSDF 3개의 채널별 IOR로 속이는 법, 그리고 조명 시행착오 4회의 기록.

#AI#Blender#3D#Creative Coding
Training

그리드 필드 스터디 — @seohyo 작가님 오마주

@seohyo 작가님의 그리드 기반 제너러티브 애니메이션을 분석하고 바닐라 Canvas 2D로 재현한 스터디. 시간축을 가진 노이즈 필드를 밴드로 양자화하고, 각 밴드에 제한된 글리프 어휘와 4색 팔레트를 매핑하면 등고선을 따라 도넛 사슬이 나타난다.

#Creative Coding#Generative Art#Canvas
Underway

시세를 쓰던 배가, 엔진을 만들다 — 거래소 코어로 키를 돌리다

COCOMSS는 거래소 시세를 '소비'만 하던 배였다. 이번 항해에서 거래소 백엔드의 가장 어려운 정확성 문제로 키를 돌렸다 — 가격-시간 우선순위 호가창과 복식부기 원장을 직접 구현하고, Rust로 매칭 지연을 나노초까지 낮추고, HMAC 서명·정산·커스터디 상태머신을 샌드박스로 세웠다. 그리고 실자금·규제는 코드 밖임을 정직하게 남겼다.

#Exchange#Rust#Matching Engine#Backend
Project

네 개의 프로젝트를 하나로 — COCOMSS라는 여정

카드 추천·백서 학습(widigg)·설명가능 AI(TrustFin)·증시 리서치 — 흩어져 있던 네 실험을 '투자 전에 배우고 판단한다'는 하나의 제품 논리로 합쳐 COCOMSS를 만들었다. 기능을 늘리는 것과 이야기를 만드는 것은 다른 일이었다.

#Fintech#Crypto#XAI#Full-stack
Underway

증시 리서치, 클라우드로 출항 — 매일 스스로 도는 파이프라인

노트북 위에서만 돌던 증시 분석을 클라우드로 띄웠다. 로컬 crontab을 GitHub Actions로 옮겨 평일 18:00 무인 실행하고, 결과를 저장소에 자동 커밋하면 Vercel이 현황판·대시보드를 재배포한다. Mac 전원과 무관하게 매일 도는 배가 됐다.

#Data#Automation#CI
Project

감으로 말하던 것을 숫자로 — 한국 증시 이벤트 스터디 파이프라인

'관세 때문에 주가가 떨어졌다'는 말을 실제로 얼마나·며칠이나 움직였는지 숫자로 검증하는 파이프라인을 만들었다. 핵심은 예측 모델이 아니라, 시장 전체의 등락을 걷어내고 사건이 만든 초과등락만 남기는 '통제'였다.

#Data#Event Study#Quant
Underway

온체인 입항 — 학습 수료를 NFT 배지로, Base 메인넷 발행

백서 학습 서비스에 Web3 돛을 올렸다. 퀴즈 만점 시 ERC-721 배지를 Base 메인넷에 실제 민팅 — 부정 발급을 막는 EIP-712 서버 검증까지. 다른 프로젝트(project-EF)의 지갑·Firebase 모듈을 이식해 학습을 온체인 인증으로 이었다.

#Web3#NFT#Smart Contract#Base
Underway

크롬 웹 스토어 입항 — AIB10 확장 프로그램 v1.0.0 공개

웹 서비스로 운항하던 AIB10이 크롬 확장 프로그램이라는 두 번째 돛을 올렸다. 검토 제출 → 심사 통과 → 공개 게시까지의 짧은 기록.

#Release#Chrome Extension
Training

같은 뼈대, 반대의 선택 — F1과 콘텐츠, 두 데이터 파이프라인 비교

F1 대시보드와 문화 콘텐츠 프로젝트는 같은 '수집→전처리→분석→시각화' 뼈대를 쓰지만, 저장·전처리·분석·시각화가 단계마다 반대로 갈렸다. 데이터의 모양과 프로젝트의 목표가 어떻게 기술 선택을 결정하는지, 이론과 실무 양쪽에서 복기한다.

#Data#Architecture
Project

문화 콘텐츠를 데이터로 — 수집부터 추천까지 파이프라인 만들기

영화 데이터를 모아 정리하고, 그 위에 추천·트렌드·시대별·인물별 분석을 올렸다. 핵심은 화려한 모델이 아니라 '같은 인물을 하나로 합치는' 지루한 전처리와, 분야를 넘어 재사용되는 데이터 모델이었다.

#Data#Recommendation
Underway

미등록에서 공개로 — Tatispa v1.1.0

v1.0.0은 미등록(unlisted)으로 조용히 띄워 링크를 아는 사람만 태웠다. v1.1.0에서 공개로 전환 — 이제 누구나 스토어에서 Tatispa를 찾을 수 있다.

#Release#Chrome Extension
Underway

하루의 전력 항해 — 파이프라인에서 Cloud Run 배포, 규정 인과 분석까지

하루 19커밋의 항해 기록. 수집→분석→시각화→예측 파이프라인 구축, OpenF1 실시간 해설, Docker+Cloud Run 배포, 그리고 '규정이 경기에 미친 영향'을 파고든 diff 엔진과 인과 추정까지.

#Data#Deployment
Underway

웹으로 뻗은 항로, 그리고 플립 시계와 씨름한 하루 — v1.1.0 준비

확장과 같은 Firebase 백엔드를 쓰는 웹 버전(tatispa.web.app)을 띄우고, XSS·CSP·Firestore 규칙을 정비하고, split-flap 시계 하나에 커밋 스무 개를 쏟아부은 뒤 v1.1.0으로 스토어 등록 자료까지 실은 이틀의 기록.

#Release#UI
Project

검증이 통찰을 지킨다 — F1 개인 프로젝트 회고

기획자로서 데이터·ML·배포까지 직접 만든 F1 대시보드. 화려한 결과보다, 검증 과정에서 잡은 '버그처럼 보인 진실'들이 더 많은 것을 가르쳐 줬다.

#Data#ML
Underway

백서에 AI를 태우다 — Q&A·퀴즈, 그리고 저작권 항로 조정

Gemini 기반 근거 인용 Q&A와 이해도 퀴즈를 올리고, 저작권·광고 정책에 맞춰 항로를 조정하고, RWA·리퀴드 스테이킹 카테고리로 해역을 넓힌 열흘간의 기록.

#AI#Policy
Underway

감성 모델 대수리 — 데이터 누수를 찾아서, 그리고 확장의 씨앗

감성 분석 모델에서 데이터 누수·도메인 불일치·과적합을 발견해 선체를 뜯어고쳤다. Gemini 자동 라벨링으로 실뉴스 데이터셋을 새로 깔고, 재학습을 CI로 자동화하고, 크롬 확장이라는 새 돛의 목재까지 실었다.

#ML#Data
Observation

2026년 06월 증시 월간 리포트

KOSPI 8,486 → 8,476 (-0.11%)

#Market#Data#Automation
Observation

주간 증시 리포트 2026-W26 (06/22 ~ 06/28)

KOSPI 8,954 → 8,411 (-6.07%)

#Market#Data#Automation
Observation

주간 증시 리포트 2026-W25 (06/15 ~ 06/21)

KOSPI 8,526 → 9,052 (+6.17%)

#Market#Data#Automation
Observation

주간 증시 리포트 2026-W24 (06/08 ~ 06/14)

KOSPI 8,048 → 8,124 (+0.94%)

#Market#Data#Automation
Observation

주간 증시 리포트 2026-W23 (06/01 ~ 06/07)

KOSPI 8,486 → 8,161 (-3.83%)

#Market#Data#Automation
Observation

2026년 05월 증시 월간 리포트

KOSPI 6,783 → 8,476 (+24.96%)

#Market#Data#Automation
Observation

2026년 04월 증시 월간 리포트

KOSPI 5,330 → 6,599 (+23.81%)

#Market#Data#Automation
Project

우리는 각자의 경계를 허물기로 했다 — 구름톤 12기 DEEP DIVE 해커톤 회고

구름톤 12기 DEEP DIVE 해커톤에 12조 PM 겸 프론트엔드로 참여해 만든 CoChat 회고. 수상은 못 했지만, 오래 품어온 아이디어를 단시간에 프로덕트로 만든 경험과 시간·역할 배분에 대한 배움을 남긴다.

#Hackathon#구름톤#PM#Frontend#CoChat
Observation

2026년 03월 증시 월간 리포트

KOSPI 6,165 → 5,052 (-18.05%)

#Market#Data#Automation
Training

네이버 API로 뉴스 수집 — 함수화와 모듈화

네이버 검색 API로 핀테크 뉴스 제목을 수집해 MySQL과 CSV에 저장하고, 반복되는 코드를 함수화·모듈화(myfunc)로 정리한 기록. 수집 스크립트를 '재사용 가능한 도구'로 만들기.

#Scraping#API
Observation

2026년 02월 증시 월간 리포트

KOSPI 5,123 → 6,244 (+21.89%)

#Market#Data#Automation
Training

분류 모델 입문 — 의사결정나무에서 앙상블까지

대출 승인 예측으로 의사결정나무를 학습·해석하고, 텔코 고객이탈 예측으로 인코딩·스케일링·배깅/부스팅 앙상블까지 — 첫 분류 모델링 파이프라인을 밟은 기록.

#ML#Classification
Training

데이터 전처리 — 결측값 처리와 얕은/깊은 복사

Kaggle House Prices 데이터로 결측값을 수치형/범주형에 맞게 다르게 채우고, 얕은 복사와 깊은 복사의 차이를 직접 확인하며 전처리 파이프라인을 구성한 기록.

#Data#Preprocessing
Training

이상치를 어떻게 다룰까 — 데이터 척도와 IQR

House Prices 데이터에서 Boxplot·Scatter로 이상치를 눈으로 찾고, IQR로 경계를 계산해 '제거할 것인가 클리핑할 것인가'를 판단하며 처리 전/후 분포를 비교한 기록.

#Data#Preprocessing
Training

탐색적 데이터 분석 — House Prices로 배우는 EDA

구조 파악부터 결측 탐색, 수치형/범주형 분석, 타깃 분포와 로그 변환, 상관 히트맵까지 — House Prices 데이터로 EDA의 전체 흐름을 밟고 인사이트를 서술로 정리한 기록.

#Data#EDA
Training

데이터를 보이게 만들기 — matplotlib·seaborn 시각화

Line·Bar·Pie·Histogram·Box·Scatter·Heatmap부터 Twin Axis·Log Scale·주석까지 13가지 그래프를 매출 데이터로 실습하며, '명확성·일관성·맥락'의 시각화 원칙을 익힌 기록.

#Data#Visualization
Training

Selenium으로 환율 수집 자동화 — 예외 처리와 DB 적재

Selenium으로 하나은행 환율을 수집하며 공휴일·오류 상황을 방어하고, 외부 dbio 모듈로 DB에 적재하는 과정을 정리한 기록. '오류를 만나며 완성해가는' 크롤링의 현실.

#Scraping#Selenium
Training

분석의 뼈대 — NumPy와 Pandas

NumPy 100문제로 ndarray·shape·슬라이싱·브로드캐스팅을, Pandas 문제로 DataFrame 조작·조건 필터링·문자열 메서드를 익히며 데이터 분석의 기본 도구를 손에 붙인 기록.

#Data#Pandas
Observation

2026년 01월 증시 월간 리포트

KOSPI 4,225 → 5,224 (+23.67%)

#Market#Data#Automation
Training

딕셔너리와 흐름 제어 — 조건문·반복문 실전

딕셔너리에 if·for를 결합해 '이름을 입력하면 가격을 알려주는' 실전 로직을 만들며, 자료구조와 흐름 제어가 만나는 지점을 연습한 기록.

#Python#Fundamentals
Training

데이터 수집 첫걸음 — 공공 API와 크롤링, 그리고 DB 저장

소상공인 상권정보 API로 치킨집 데이터를 수집하고, 하나은행 환율을 read_html로 크롤링해 자동화하고, Selenium+DB까지 — 데이터를 '가져와서 쌓는' 파이프라인의 첫 경험.

#Scraping#API
Training

클래스로 배우는 객체지향 — 상태와 행동을 묶다

Person·BankAccount·Student 같은 예제로 클래스·생성자·메서드·인스턴스 변수를 익히며, 데이터(상태)와 기능(행동)을 하나로 묶는 객체지향의 감각을 잡은 기록.

#Python#OOP
Training

파이썬 기초 다지기 — 자료형부터 함수·예외처리까지

출력·자료형·연산자부터 리스트·딕셔너리, 함수와 예외 처리, 환경변수 관리와 JSON 다루기까지 — 파이썬의 기본기를 문제 풀이로 다진 기록.

#Python#Fundamentals
Training

SQL 첫걸음 — Sakila로 배우는 SELECT부터 JOIN까지

MySQL 예제 DB Sakila로 조회(SELECT)의 전 범위를 직접 쿼리하며 익힌 기록 — 조건·연산자·BETWEEN·IN·LIKE·NULL부터 정렬·집계·GROUP BY·HAVING, 그리고 여러 테이블을 잇는 JOIN까지.

#SQL#Database
Observation

2025년 한국 증시 연간 리포트

KOSPI 2,401 → 4,214 (+75.53%)

#Market#Data#Automation
Training

지도 위의 핀 하나 — POI 마커를 웹 3D로 옮기기

TINA 로고 토큰이 박힌 3D 위치 핀(POI) 모델을 웹 뷰어로 게시한 두 번째 기록. 이번 관문은 거대한 작업 씬에서 히어로 오브젝트만 추려내는 것, 그리고 glTF가 실어주지 않는 절차적 재질의 색을 살려내는 것이었다.

#Blender#3D#Three.js
Training

Blender 모델을 웹에서 돌려보기 — glTF, Draco, three.js

Blender로 만든 3D 모델을 이미지나 영상이 아니라 '진짜 3D'로 게시하고 싶었다. .blend를 애니메이션째 glTF로 내보내고, Draco로 12MB를 629KB까지 줄이고, three.js 뷰어로 이 블로그 안에서 직접 돌려보게 만든 기록.

#Blender#3D#Three.js#Creative Coding
Training

SVG로 만든 hero 모션그래픽 연습 — 별과 정칠각형

Heptone 재직 시절, 회사 홈페이지 hero 영역에 넣을 코드 기반 모션그래픽이 필요해 만든 두 개의 SVG 연습. 손으로 좌표를 찍은 별에서 시작해, 삼각함수로 기하를 생성하는 정칠각형까지.

#SVG#Motion#Creative Coding
Training

도형 셋과 물방울 — Web3 애니메이션 스터디를 웹 3D로

콘·큐브·구 세 도형이 물방울 사이에 떠 있는 미니멀 애니메이션 스터디를 웹 뷰어로 게시한 기록. 이번 편의 관문은 하나의 절차적 재질이 오브젝트마다 다른 색을 내는 트릭을 웹으로 옮기는 것이었다.

#Blender#3D#Three.js
Research

2024년 Web3 UX에서 반복되는 5가지 패턴

1년간 10개 Web3 서비스를 분석하며 발견한 반복 패턴. 문제보다 해결책이 먼저 등장하는 구조적 이유.

#Web3#UX#Pattern
Essay

캡틴스 로그를 시작한 이유

포트폴리오를 단순한 작업물 모음이 아닌, 항해의 기록으로 만들고 싶었다.

#Design#Portfolio
Essay

기획은 항해다 — 불확실성을 다루는 방법

정답을 모르는 상태에서 결정을 내려야 할 때, 기획자는 무엇에 의지해야 하는가.

#Planning#Thinking
Training

틴더 역기획 — 소셜 디스커버리 앱 분해하기

완성된 프로덕트에서 거꾸로 고객가치·비즈니스 모델·핵심 플로우·추정 메트릭을 추론하고 개선안까지 도출한 역기획 연습. 대상은 매치그룹의 소셜 디스커버리 앱 틴더.

#PM#역기획#Tinder#Product Teardown
Training

COACH — 열정을 돕는 페이스메이커, 나의 첫 UX 프로젝트

라이트브레인 UX 아카데미 5기 오픈프로젝트 — [AI × Smartphone × 1인가구]를 주제로, 자기계발을 이어가도록 동기를 부여하는 AI 코치 'COACH'를 설계한 기록. 처음으로 받은 UX 교육이자, 6인 팀으로 기수 우수팀에 선정된 프로젝트.

#UX#Service Design#AI
Project

만들다 멈춘 게임 — 나를 UX로 이끈 1년 2개월

2015–2016년, 3인 남짓의 팀에서 만든 모바일 게임의 UI. 테스트 빌드에서 멈췄지만 UI 시스템·상태 설계·리텐션 흐름을 손으로 익혔고, 갈린 피드백 앞에서 내 판단을 검증하려 UX를 배우러 간 출발점이 된 프로젝트.

#Game#UI