나의 책꽂이, 양말 서랍, 옷장 관리 방법
규칙을 통해 노력을 최소화하는 물리 레이어 컬렉션 운영 방법
책꽂이 관리 방법
다 읽은 책은 아래로
올해(2019년) 1월 1일부터 실천하고 있는 원칙이다.
다 읽은 책은 아래로, 아직 읽지 않은 책은 위로.
다음과 같이 실천할 수 있다.
- 책꽂이 가장 아랫단을 다 비운다.
- 다 읽은 책은 가장 아랫단에 꽂는다.
이 방법의 좋은 점은 다음과 같다.
- 책을 찾을 때 검색 방향을 고려할 수 있다.
- 다 읽은 책을 찾으려면 아래쪽부터 찾으면 된다.
- 반대로 안 읽은 책을 찾으려면 위쪽부터 찾으면 된다.
- 1월 1일부터 시작했기 때문에, 한 해 동안 얼마나 많은 책을 읽었는지를 쉽게 알아낼 수 있다.
기능별 분리
- 책은 항상 특정 영역의 오른쪽으로만 집어넣는다.
- 몇몇 예외도 있을 수 있음.
- Most Recent Used 책을 따로 관리한다.
내 책상과 책상 옆의 책꽂이를 단순하게 그려보았다.
책꽂이
+-----------+---------+---------+
| 1 | 1 | 1 |
+-----------+---------+---------+
| MRU | 2 | 2 |
+-----------+---------+---------+
| 3-A | 3 | 3 |
+-----------+---------+---------+
+---------+
| |
| D | +---+
| E | | |
| S | | |
| K | +---+
| | 의자
+---------+
책상
- 아직 안 읽은 책들
- 조만간 읽을 책들
- MRU space: 최근에 읽은 책들. 이 칸은 책상에 앉았을 때 오른손이 가장 쉽게 접근할 수 있는 칸이다.
- 다 읽은 책들
- 3-A: 다 읽었지만 별로였던 책들. 버리거나 팔 책들.
MRU 컬렉션은 다음과 같이 관리한다.
- 내가 방금 잠시라도 읽은 책을 다시 꽂는다면 MRU에 꽂는다.
- MRU 컬렉션에 책을 넣을 때는 가장 오른쪽으로만 책을 넣는다. 그러므로 가장 왼쪽에 있는 책이 MRU 컬렉션에서 가장 오래된 책이다.
- 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)의 왼쪽에서 꺼내 입는다.
- 꺼낸 옷을 입고 싶지 않다면
- 비착용 집단의 오른쪽으로 넣는다.
- 비착용 집단의 크기가 일정 이상이 되면 장기 보관 옷장으로 옮기거나, 적절히 선별하여 버린다.
- 착용 집단의 크기가 일정 이하로 줄어들면 장기 보관 옷장에서 옷을 꺼내온다.