ガベージコレクションで考える効率的な部屋の掃除法

部屋の片付けと、住居に対する考えを綴るエントリ前編。議論が雑なのは許してちょ。

部屋の掃除とガベージコレクション

部屋を掃除するのが苦手だった。よく考えてみると、そもそもモノが収納を超えていることが原因。

モノを減らすにはどうすればいいんだろう。こんまり先生の本によれば、「トキメかないものは捨てろ!」という話らしい。僕も読んだ。今ならKindle版も出ている。

人生がときめく片づけの魔法

人生がときめく片づけの魔法

だが、俺にはなんでもときめいて見える。ときめきトゥナイト。こうなったら、オッサンが得意と言われているIT業界の知識を援用するしかないで!

コンピュータプログラミングの世界には、ガベージコレクションという用語があります。不要となった資源を解放するための機能です。ガベージコレクションの実現方法は大きく分けて3つあります。ざっくり紹介します。

ポストイット法

全ての資源を利用する前に、利用者がポストイットを貼り、利用後にポストイットをはがすようにします。ゴミ捨ての際には、ポストイットが1枚も貼ってないものを捨てます。

厳密に対応しないんだけど、職場の共有冷蔵庫などをイメージしてください。「ポストイット貼ってないものは金曜日の15:00に捨てます」みたいなルールあったりするでしょ?

共有冷蔵庫のように、ゴミ捨てのタイミングは定時にするのも一つのやり方。このやり方のいいところは、ポストイットが1枚もなくなった時点でまめにゴミ捨てをすれば、いらないものをすぐ捨てることができるところ。

しかし、ポストイットをいちいち貼ったりはがしたりするのは面倒です。また、ポストイットのはがし忘れなどのリスクがあります。

捨てないものリスト法

今使っているものをリストアップし、使っているものが使っているものを列挙し、さらに使っているものが使っているものが使っているもの…とたどっていき、使っているもの=捨てないものリストを作ります。捨てないものリストを作成したあとに、そのリストに載っていないものを捨てる方法です。

炊飯器使っているんだったら、米びつと計量カップと茶碗が必要で、茶碗は食器棚が必要で…というイメージです。

想像のとおり、モノの数に比例して、たどっていくのに時間がかかるようになります。また、あくまで「捨てないもの」リストなので、捨てるものをもれなく探してまわる必要があります。

引っ越し法

引っ越し先を決めます。当面必要なものを持っていきます。「捨てないものリスト法」のように、使っているものが使っているものも持っていきます。

そうやって、必要なものが新居に揃ったら、旧居にあるゴミを全部処分してもらいます。これが、「引っ越し法」です。

「捨てないものリスト法」と似てはいますが、捨てるものをいちいち探す必要はありません。あくまで使っているものだけを持ち出せばよいのです。

また、使っているものを移動するので、新居において、そのものにふさわしい置き場所に置くことができます。ゴミ捨てだけではなくて、整理整頓もできるわけです。

どのガベージコレクションを掃除に適用するか

ガベージコレクションは、「今まさに使っている」もの以外を捨てる機能です。よって、部屋のように、「いつかは使うかもしれない」ものには直接適用できません。

「ポストイット法」は、今まさに必要なものを判定することしかできません。よって、部屋の掃除には適用できません。仮に適用できたとしても、とても手間がかかります。

「捨てないものリスト法」は、「いつかは使うかもしれない」というものにも拡張可能です。この手法を部屋の掃除に適用すれば、捨てないものリストまでは作ることができるでしょう。しかし、リストに載っていないものを見つけ出して捨てる、なんてことをやれる人だったら、やっぱり部屋はいつもキレイに掃除されてますよね。

「引っ越し法」も、「いつかは使うかもしれない」というものに適用可能です。しかも、引っ越しは、荷物が多ければ多いほど引っ越しの手間も金額もかかります。また、業者に引っ越しを頼むと、締め切りが設定されます。これらの制約条件のおかげで、「使っているものリスト法」とは異なり、「いつかは使うかもしれない」という基準を厳しくしつつ、適用することができそうです。

引っ越し法はすばらしいけれど

今回アメリカに引っ越したことにより、知らず知らずのうちに「引っ越し法」を採用していた僕。船便と航空便の厳しい制約が功を奏しました。おかげで部屋は片付いた。

しかし、引っ越し法はそう簡単に使えるものではありません。一時的であっても、家が2つ必要だからです。

引っ越し法を簡単に行うようにするためには、どうしたらよいでしょうか。気軽にかつ低コストに引っ越せる環境を整えたいところです。なんとかオッサンが唯一持っているITの知識を援用できないでしょうか。

次回、Immutable Infrastructure編へつづく

ガベージコレクションのアルゴリズムと実装

ガベージコレクションのアルゴリズムと実装