개발

삐삐북 개발기 8편 — 통계와 카테고리: 내 독서 패턴을 데이터로

2026-05-29·2분 읽기
삐삐북 개발기 8편 — 통계와 카테고리: 내 독서 패턴을 데이터로

가장 많은 요청: 통계 기능

업데이트를 거듭하면서 리뷰에서 반복적으로 나오는 요청이 있었습니다.

"올해 몇 권 읽었는지 보고 싶다." "월별로 얼마나 읽었는지 통계가 있으면 좋겠다."

독서 기록을 쌓다 보면 자연스럽게 궁금해지는 것들입니다. 나는 얼마나 읽고 있는 사람인가. 어떤 달에 많이 읽고 어떤 달에 못 읽었나. 올해 목표를 달성하고 있나.

이런 숫자들이 보이면 독서에 대한 동기부여가 달라집니다.


연·월 단위 통계 구현

기본 통계 화면을 만들었습니다.

  • 연도별 읽은 책 수
  • 월별 읽은 책 수 (바 차트)
  • 총 읽은 책 수
  • 목표 대비 달성률

책 등록 시 읽기 완료 날짜를 기록하기 때문에, 이 데이터를 기반으로 통계를 낼 수 있었습니다.

처음 만든 통계 화면은 기능은 되는데 재미가 없었습니다. 숫자만 나열되는 느낌이었습니다.


카테고리 분류 추가

더 의미 있는 통계를 만들고 싶었습니다.

"올해 소설을 몇 권, 자기계발서를 몇 권, 에세이를 몇 권 읽었다"는 걸 알 수 있으면 어떨까. 내 독서 취향의 패턴이 보입니다.

책 카테고리를 분류하는 방법을 고민했습니다.

사용자가 직접 입력하게 하면 불편합니다. 자동으로 할 수 있으면 더 좋습니다.

알아보니 ISBN에 책의 분류 코드가 포함되어 있습니다. 도서관 분류 체계(KDC, DDC)를 따르는 코드가 ISBN에 들어있고, 이를 통해 책의 카테고리를 자동으로 파악할 수 있었습니다.


ISBN으로 카테고리 파악

ISBN 13자리 숫자에는 다양한 정보가 담겨 있습니다. 국가 코드, 출판사 코드, 도서 코드 등이 포함됩니다.

도서 분류 코드를 기반으로 소설, 시·에세이, 자기계발, 경제/경영, 역사, 과학 등의 카테고리를 자동으로 분류하는 로직을 만들었습니다.

완벽하지는 않습니다. 분류가 모호한 책도 있고, API에서 카테고리 정보가 제공되지 않는 경우도 있습니다.


커스텀 카테고리 설정

자동 분류가 맞지 않는 경우를 위해 직접 카테고리를 설정할 수 있는 기능도 추가했습니다.

앱에서 제공하는 카테고리 목록에서 선택하거나, 직접 커스텀 카테고리를 만들 수도 있습니다. "업무 관련", "추천받은 책", "재독" 같은 본인만의 카테고리를 만드는 분들도 있습니다.


통계가 독서 습관을 바꾼다

통계 기능이 들어가고 나서 흥미로운 반응들이 있었습니다.

"자기계발서만 읽고 있었다는 걸 통계로 보고, 소설도 읽기 시작했다." "작년보다 올해 더 많이 읽고 있다는 게 보여서 뿌듯하다."

숫자가 보이면 목표가 생깁니다. 목표가 생기면 더 하게 됩니다.

독서 기록이 그냥 일지가 아니라, 내 독서 생활을 돌아보고 개선할 수 있는 데이터가 됩니다. 그게 통계 기능이 주는 가치입니다.