LabHub
开始
学习 学习路径 课程

开发者创业 — 先验证再动手

把访谈记录编码为证据并选出第一批客群

在 LabHub 中继续学习

한국어 원문으로 표시합니다.

목표

인터뷰 기록에서 질문 형태의 편향을 걸러 내고, '최근에 겪었고 대가를 치른' 증거만 세어, 표본 크기를 반영한 구간으로 첫 고객군을 고른다.

왜 중요한가

사람들은 남의 아이디어에 예의 바르게 답한다. 유도·가정 질문의 대답과 칭찬을 수요로 읽으면 없는 시장에 몇 달을 쓴다. 기록을 증거로 부호화하고 표본의 크기까지 따지는 습관이 만들기 전 검증의 전부다.

재료 — /opt/fixtures/founder/problem/interviews.csv

id,segment,question_style,said_problem,days_since_last,workaround,spent_krw_month,commitment

정의

단계

  1. /root/founder/problem/counts.json 에 세그먼트마다 all(인터뷰 수)과 by_style(past·hypothetical·leading 별 수)을 쓴다.
  2. /root/founder/problem/said.json 에 세그먼트마다 said_all_rate(모든 인터뷰의 said_problem 비율)와 said_usable_rate(쓸 수 있는 인터뷰만)를 쓴다.
  3. /root/founder/problem/problem.pyevidence(row)(csv.DictReader 의 한 줄 → True/False)를 만든다.
  4. /root/founder/problem/evidence.json 에 세그먼트마다 usable·evidence·rate(evidence ÷ usable)를 쓴다.
  5. /root/founder/problem/signals.json 에 세그먼트마다 median_spend(쓸 수 있고 최근 문제이며 돈을 쓰는 사람의 월 지출 중앙값, 없으면 0), strong(쓸 수 있는 인터뷰의 pilot·preorder 수), compliments(모든 인터뷰의 compliment 수)를 쓴다.
  6. problem.pywilson(k, n)[low, high] 를 더한다(n 이 0 이면 [0.0, 1.0]).
  7. /root/founder/problem/ranking.jsonby_said_all(said_all_rate 가 가장 높은 세그먼트), by_point(증거 비율이 가장 높은), by_lower_bound(증거 윌슨 하한이 가장 높은), lower_bounds(세그먼트 → 하한)를 쓴다.
  8. /root/founder/problem/decision.jsontarget(by_lower_bound), need_more(하한 < 0.5 ≤ 상한인 세그먼트, 정렬), drop(상한 < 0.5 인 세그먼트, 정렬)을 쓴다.

참고

누구에게 어떤 질문을 했나

/root/founder/problem/counts.json 에 세그먼트마다 all 과 by_style(past·hypothetical·leading)을 쓴다.

csv.DictReader 로 읽어 segment 와 question_style 로 셉니다. 세그먼트마다 질문 형태의 비중이 다른지 보세요.

질문 형태가 대답을 부풀린다

/root/founder/problem/said.json 에 세그먼트마다 said_all_rate 와 said_usable_rate 를 쓴다.

분자는 said_problem == "1" 인 인터뷰, 분모는 앞의 것은 그 세그먼트 전체, 뒤의 것은 question_style 이 past 인 인터뷰입니다.

증거 조건을 함수로

/root/founder/problem/problem.py 에 evidence(row) 를 만든다(과거 질문 · 최근 30일 안에 겪음 · 돈이나 파일럿·선주문).

세 조건을 모두 만족해야 True 입니다. 빈 days_since_last 는 int 로 바꾸기 전에 거르세요. 30일은 포함입니다.

세그먼트별 증거

/root/founder/problem/evidence.json 에 세그먼트마다 usable·evidence·rate 를 쓴다.

분모는 쓸 수 있는(past) 인터뷰 수입니다. 전체 인터뷰 수로 나누지 않습니다.

돈과 약속, 그리고 칭찬

/root/founder/problem/signals.json 에 세그먼트마다 median_spend·strong·compliments 를 쓴다.

median_spend 의 대상은 쓸 수 있고, 최근 문제이며, 지출이 0 보다 큰 사람입니다(없으면 0). compliments 는 질문 형태와 무관하게 셉니다.

작은 표본을 구간으로

problem.py 에 wilson(k, n) → [low, high] 를 더한다.

z 는 NormalDist().inv_cdf(0.975). 지시문의 중심과 반폭 식을 그대로 옮기세요. n=0 이면 [0.0, 1.0].

세 가지 순위

/root/founder/problem/ranking.json 에 by_said_all·by_point·by_lower_bound·lower_bounds 를 쓴다.

같은 기록으로 세 번 줄 세웁니다 — 모든 대답의 '문제 있음' 비율, 증거 비율(점추정), 증거의 윌슨 하한.

첫 고객군과 다음 인터뷰

/root/founder/problem/decision.json 에 target·need_more·drop 을 쓴다.

구간이 0.5 를 사이에 두면 아직 모르는 것(need_more), 상한마저 0.5 아래면 접을 것(drop)입니다.