책꽂이 관리 방법

다 읽은 책은 아래로

올해(2019년) 1월 1일부터 실천하고 있는 원칙이다.

다 읽은 책은 아래로, 아직 읽지 않은 책은 위로.

다음과 같이 실천할 수 있다.

  1. 책꽂이 가장 아랫단을 다 비운다.
  2. 다 읽은 책은 가장 아랫단에 꽂는다.

이 방법의 좋은 점은 다음과 같다.

  • 책을 찾을 때 검색 방향을 고려할 수 있다.
    • 다 읽은 책을 찾으려면 아래쪽부터 찾으면 된다.
    • 반대로 안 읽은 책을 찾으려면 위쪽부터 찾으면 된다.
  • 1월 1일부터 시작했기 때문에, 한 해 동안 얼마나 많은 책을 읽었는지를 쉽게 알아낼 수 있다.

기능별 분리

  • 책은 항상 특정 영역의 오른쪽으로만 집어넣는다.
    • 몇몇 예외도 있을 수 있음.
  • Most Recent Used 책을 따로 관리한다.

내 책상과 책상 옆의 책꽂이를 단순하게 그려보았다.

        책꽂이
       +-----------+---------+---------+
       |     1     |    1    |    1    |
       +-----------+---------+---------+
       |    MRU    |    2    |    2    |
       +-----------+---------+---------+
       |    3-A    |    3    |    3    |
       +-----------+---------+---------+
+---------+
|         |
|    D    |  +---+
|    E    |  |   |
|    S    |  |   |
|    K    |  +---+
|         |    의자
+---------+
   책상
  1. 아직 안 읽은 책들
  2. 조만간 읽을 책들
    • MRU space: 최근에 읽은 책들. 이 칸은 책상에 앉았을 때 오른손이 가장 쉽게 접근할 수 있는 칸이다.
  3. 다 읽은 책들
    • 3-A: 다 읽었지만 별로였던 책들. 버리거나 팔 책들.

MRU 컬렉션은 다음과 같이 관리한다.

  1. 내가 방금 잠시라도 읽은 책을 다시 꽂는다면 MRU에 꽂는다.
  2. MRU 컬렉션에 책을 넣을 때는 가장 오른쪽으로만 책을 넣는다. 그러므로 가장 왼쪽에 있는 책이 MRU 컬렉션에서 가장 오래된 책이다.
  3. MRU 컬렉션이 물리적 공간을 다 채우면 가장 왼쪽 책을 뽑아서 다른 책꽂이 칸으로 옮긴다.
    • 만약 과거에 다 읽은 책이라면 책꽂이 아래쪽(3)으로 가고
    • 아직 다 읽지 않은 책이라면 책꽂이 위쪽(1)으로 옮기면 된다.
    • 조만간 다시 읽을 것 같은 책이라면 옆(2)으로 옮긴다.

그 외의 공간은 다음과 같이 관리한다.

  • 책을 구매하면 1 영역에 꽂아둔다.
    • 1에 책을 꽂을 때도 오른쪽부터 책을 꽂도록 한다. 구매한 순서를 알 수 있다.
  • 지금 읽고 있는 책을 다 읽은 다음 곧바로 읽어야겠다는 생각이 드는 책이 있다면 2 영역으로 옮겨둔다.
    • 2에 책을 꽂을 때도 오른쪽부터 책을 꽂도록 한다.
  • 3-A 영역이 꽉 차면, 비운다. 나눔/중고판매 등을 활용한다.
  • 3영역에 책을 꽂을 때는 중요도 순서로 꽂도록 한다.
    • 오른쪽으로 갈수록 좋았던 책, 다시 읽고 싶은 책이 위치하도록 꽂아둔다.
    • 이렇게 하면 읽었던 책을 다시 읽고 싶을 때 오른쪽부터 찾으면 빨리 찾는다.
    • 왜 오른쪽 방향 위주인가? 가장 왼쪽은 책상 밑으로 들어가기 때문에 책을 넣거나 꺼내기가 귀찮기 때문이다.

활용

위의 방식을 사용하면 다음과 같은 활용이 가능하다.

  • 최근 약 1주일간 글을 쓰며 참고하고 있는 책을 찾으려면 MRU 컬렉션을 오른쪽에서부터 탐색한다.
  • 과거에 다 읽은 책을 다시 읽고 싶다: 책꽂이 아래쪽, 오른쪽부터 탐색한다.
  • 새로운 책을 읽을 때가 되었다: 책꽂이 가운데, 오른쪽부터 탐색한다.
  • 미뤄둔 새로운 책을 읽을 때가 되었다: 책꽂이 가운데, 왼쪽부터 탐색한다.

양말 서랍 관리 방법

┌────────────────────┐
│ ssssssssssss       │
│ ∨           ∧      │
└────────────────────┘ 서랍
s: 양말

서랍을 사용하면 양말을 Queue 구조로 관리할 수 있다.

방법은 아주 단순하다.

  • 양말을 서랍에 넣을 때 가장 오른쪽으로만 넣는다.
    • 새로 구매한 양말, 세탁/건조가 끝난 양말을 반 접어서 가장 오른쪽에 세워둔다.
  • 양말은 왼쪽에서만 꺼내 신는다.

이렇게 하면 모든 양말이 회전하게 된다. 즉, 양말을 골고루 신을 수 있게 된다.

속옷도 같은 방법으로 관리한다.

페이지 인덱싱

포스트잇 플래그를 사용해 점진적으로 인덱싱을 하는 방법이다.

책장에서 책을 하나 찾아볼 때마다 플래그에 날짜를 적어서 찾은 페이지 위에 붙여놓는다. 한 번 찾은 곳은 또 찾게 될 가능성이 높으므로, 시간이 충분히 지나면 강력한 인덱싱이 된다.

어떤 책을 많이 참고했는지도 자연히 알 수 있게 된다.

옷장 관리 방법

2015년 9월에 처음 생각해서 조금씩 개선하여 2019년 10월 현재까지 사용하고 있는 방법이다.

최초 버전

┌────────────────────┐
│--------------------│ 옷걸이 봉
│ cccccccccccc       │
│ ∨           ∧      │
└────────────────────┘ 옷장
out           in
  • c: 옷

다음 방법을 사용한다.

  • 옷을 옷장에 넣을 때 가장 오른쪽으로만 넣는다.
    • 새로 구매한 옷, 세탁/건조가 끝난 옷을 옷걸이에 걸어 가장 오른쪽에 걸어둔다.
    • 옷걸이 봉이 있으므로 오른쪽에 옷을 넣으며 걸려 있는 모든 옷이 왼쪽으로 조금씩 밀려가게 할 수 있다.
  • 옷은 왼쪽에서만 꺼내 입는다.

이렇게 하면 옷도 회전하게 된다.

이 방법을 처음 생각했을 때, 이제부터는 아침에 무슨 옷을 입어야 할지 고민을 안 해도 되겠다는 생각에 뛸 듯이 기뻤다.

영역의 분리

하지만 한동안 사용해 보고 다음과 같은 문제가 있다는 사실을 깨달았다.

  • 계절에 안 맞는 옷이 튀어나올 때가 있다.
  • 입기 싫은 옷이 튀어나올 때가 있다.

그래서 다음과 같은 방법을 추가했다.

┌────────────────────┐
│--------------------│ 옷걸이 봉
│ ccc P cccccc       │
│       ∨     ∧      │
│ No  | Yes          │
└────────────────────┘ 옷장
  • P: 영역 구분 포인터

옷장 관리 방법은 양말 관리 방법을 확장한다.

  • 옷을 옷장에 넣을 때 가장 오른쪽으로만 넣는다.
  • 옷걸이 하나를 포인터로 삼는다.
    • 포인터 옷걸이로, 비착용 집단(No)과 착용 집단(Yes)을 나눈다.
  • 옷은 착용 집단의 가장 왼쪽에서만 꺼낸다.
  • 꺼낸 옷이 계절에 맞지 않거나 별로 입고 싶지 않은 옷이라면?
    • 비착용 집단의 가장 오른쪽에 걸어둔다.

이 방법을 쓰면 적절하지 않은 옷을 생활하며 자연스럽게 수집할 수 있다는 장점이 있다. 즉 나중에 시간을 내서 한꺼번에 안 입는 옷을 선별할 필요가 없다. 옷장 대청소(Full GC)를 안 해도 되는 것이다.

  • 옷장을 1~2달 정도 사용하면 비착용 집단에 내가 이제는 별로 좋아하지 않는 옷들, 계절에 맞지 않는 옷이 수집된다.
    • 비착용 집단의 크기가 적당히 커지면, 선별하여 장기 보관용 옷장으로 옮기거나 버린다.
    • threshold는 주관적으로 정한다.

영역의 세분화

하지만 이 방법을 한동안 사용하다 보니 다음과 같은 문제가 있었다.

  • 상의와 하의를 의식적으로 구분해, 두 옷장을 하나의 옷장으로 구현한 것처럼 사용한다.

따라서 다음과 같이 Yes 영역을 상의(Tops)와 하의(Bots) 영역으로 분리하였다.

┌─────────────────────┐
│---------------------│ 옷걸이 봉
│ tbt P tttttt  bbbb  │
│       ∨     ∧ ∨   ∧ │
│ No   | Tops  | Bots │
└─────────────────────┘ 옷장
  • t: 상의
  • b: 하의(바지)

최종 규칙은 다음과 같다.

  • 상의
    • 상의 영역(Tops)의 오른쪽으로 넣는다.
    • 상의 영역(Tops)의 왼쪽에서 꺼내 입는다.
  • 하의
    • 하의 영역(Bots)의 오른쪽으로 넣는다.
    • 하의 영역(Bots)의 왼쪽에서 꺼내 입는다.
  • 꺼낸 옷을 입고 싶지 않다면
    • 비착용 집단의 오른쪽으로 넣는다.
  • 비착용 집단의 크기가 일정 이상이 되면 장기 보관 옷장으로 옮기거나, 적절히 선별하여 버린다.
  • 착용 집단의 크기가 일정 이하로 줄어들면 장기 보관 옷장에서 옷을 꺼내온다.