이 대시보드의 창들은 쉰 배까지 벌어지고, 그 차이는 세 군데서 온다. 그중 네가 통제하는 건 하나뿐이고, 숫자만 봐서는 어느 쪽인지 모른다.
제각각인 창들이 어디서 오냐
창 길이가 벌어진 게 누가 내린 결정을 반영한다고 생각하는 게 합리적이야. 대부분은 아니야. 대부분은 바깥에서 서로 다른 기제로 강제된 거고, 그 기제들은 알아둘 값어치가 있어. 데이터 제품이면 어디서든 반복되거든. 근데 전부는 아니고, 그 예외가 제일 중요해. 표면에서는 안 보이고, 네 것이거든.
라이선스. 하이일드 신용 스프레드 계열은 대략 최근 3 년으로 잘려 있어. 뒤에 있는 지수가 라이선스 대상이고, 공개 배포는 창 하나만 실어. 이건 가정이 아니라 직접 확인했어. 공개 다운로드에서도 계열은 시작하는 데서 시작해. 어떤 엔지니어링도 이걸 못 늘리고, 차트만 보고 이걸 짐작할 사람도 없어.
외부 한계 옷을 입은 내 기본값. 정책금리 창은 40 년 남짓인데, 계열이 거기까지밖에 안 간다는 뻔한 설명은 거짓이야. 공개 소스는 그 금리를 1954 년부터 일간으로 발표해. 70 년 넘게. 창이 41 년인 건 이 엔진 FRED 헬퍼가 start 파라미터 기본값을 1985-01-01 로 두고 있고 아무 호출자도 그걸 안 덮기 때문이야. 같은 기본값이 1970 년대랑 1981 년부터 발표되는 환율 계열 둘도 조용히 잘라내고 있고.
이건 좀 붙들고 있을 값어치가 있어. 라이선스 경우의 정반대인데 표면에서는 구분이 안 되거든. 둘 다 "이 계열은 N 년을 들고 있다" 로 나타나. 하나는 권리자가 강제한 거고 어떤 엔지니어링으로도 못 늘려. 다른 하나는 쓰인 뒤로 아무도 다시 안 본 네 수집 계층의 한 줄이고. 숫자만 봐서는 둘을 구분 못 해. 그러니까 규율은 "창을 밝혀라" 로 안 끝나. 계열마다 그 창이 세상의 답인지 네 답인지 알고 있어야 해.
학술적 재구성. CAPE 입력은 1880 년대까지 닿아. 어느 학자가 긴 계열을 엮어서 공개했거든. 진짜로 희귀한 유물이고, 이 대시보드 게이지 하나가 한 세기 반에 대한 진술을 아예 할 수 있는 이유야.
맞춰서 자르면 되잖아?
본능적인 엔지니어링 수선은 제일 짧은 공통 창으로 전부 잘라서 모든 백분위를 같은 기간으로 계산하는 거야. 깔끔한 발상이고 여기서는 틀렸어. 내면화할 값어치가 있는 이유로.
한 세기 역사를 제일 짧은 이웃에 맞춰 3 년으로 자른다고 둘이 비교 가능해지지 않아. 이 데이터셋 전체에서 제일 값진 걸 파괴하는 거야. 진짜로 긴 계열은 희귀하고 비싸고 대체 불가능하거든. 그걸 겉모양 일관성이랑 바꾸는 거지. 독자가 얻는 건 없어. 이제 기간이 일치하고 둘 다 별말 안 하는 백분위 둘을 갖게 됐을 뿐이야.
대안은 계열마다 자기 역사를 온전히 두고 창을 데이터로 같이 싣는 거야. 그러면 화면이 그걸 보여줄 수 있고 어떤 소비자든 그걸로 따질 수 있어. 공개는 정보를 보존하고 정규화는 파괴해. 선택지가 그 둘이면 공개가 매번 이겨.
덧: 이 규율을 가르치는 독스트링이 자기 창을 틀리게 적고 있었어
아래 코드 블록은 이 엔진의 span_years 를 인용해. 창을 정확히 밝히는 게 주제 전부인 함수야. 그런데 그 독스트링이 3 주 넘게 장기 계열을 "155 년" 이라고 적어놨어. 자기가 얹혀 있는 함수가 145.7 을 돌려주는 동안. 열네 줄 아래야. 한쪽을 고치는 사람 화면에 다른 쪽이 같이 떠 있을 거리. 이 레슨은 그 오류를 그대로 인용한 채로 배포됐고, 2026-08-31 에 고쳐졌어.
고친 방향이 요점이야. 145.7 로 안 바꿨어. 그것도 내년이면 틀리거든. 155 가 틀렸던 거랑 정확히 같은 이유로 — 창은 자라니까. 고친 독스트링은 "~146 년, 계속 늘어남" 이라고 하고, 숫자를 다시 적는 대신 window_years 로 보내. 바로 그 함수가 계산하는 값이야.