はじめに
オークファンには技術書購入の制度があります。
Software Design / WEB+DB Pressを定期購読しているほか、会社の技術スタック・メンバーの興味・新規テーマなどの観点から、これぞと思った書籍を購入して、オフィス各所の本棚に蓄積しています。IT企業でたまに見かける 「オライリー全巻購入!」 みたいな偉業はできませんが、月数冊ほど書籍が増えています。
ところが、模様替えによって本棚の一部が立ち退きを強いられました。
そこで、これを機に本棚を購入して、既存の書籍の大部分を集積して整理する話が持ち上がりました。私は本棚の調達と構築を任せていただき、オークファンにある技術書を整理することにしました。
「たかが本棚」と思ったかもしれませんが、いざ数百冊の書籍と向き合うと、いろいろ気づいたことが出てきましたので、それを記します。
準備
退避
本棚はオフィスの四か所に存在しました。ミーティングスペースに二か所、執務スペース近くに二か所です。
後者の二か所を移動することになったため、書籍を全部取り出します。同時に、書籍のバーコードをスキャンして書籍リストを作ります。
このリストは、ゆくゆくは書籍貸出システムを作り、その入力に転用したいと思っています。
書籍は置いておくだけでは意味がなく、読まれてナンボのもの。記録をつけて貸し借りできる環境を作ることで、書籍もフル活用できるはずです。特にリモート勤務の社員が多いため、誰がいつ借りたかを記録することは必須でした。
状況把握
本棚の中身を眺めてみると、本棚に技術書だけが入っているわけではないことは分かりました。
誰かが持ち込んだビジネス書、会社で購入した新書、部活動備品のボードゲーム、貸し借りするマンガ……など、地味にカオスを極めていました。
そのため、まずは技術書とそうでないもの、会社のものと私物を峻別するところからのスタートです。これには全社へ協力を仰ぎ、私物の本は外に出してもらいました。
残りの本棚も空にして、技術書とビジネス書に集約します。今回は技術書本棚がメインですが、ビジネス書の本棚も整備してあります。
書籍選定
技術はバージョンアップや時代の変化とともに陳腐化します。技術の方が本の先を行くことは、今では当たり前になっています。
そのため、社内で使用していない技術に関する古い書籍は、定期的に処分します。今回は本棚を全取り換えするタイミングだったので、数十冊の本を除籍します。
同時に、社内で使用しているレガシー技術スタックに関する本は、古くても残します。これは、レガシー環境ほど、ウェブサイトが先に消滅する可能性が高いためです。
あとひとつ、特定の技術に特化しない古典も、積極的に残します。たとえばジェラルド・ワインバーグ『スーパーエンジニアへの道』など。
技術書は必要があって選ぶものですから、表紙が薄くなってきたりページが色あせた本からは、その時代の課題が見えます。
オークファンでは、それがPerlと正規表現でした。「リャマ本」の別名を誇るオライリー「初めてのPerl」と「詳説 正規表現」が数冊積んでありました。これらの本は、古くとも残します。実際オークファンの中にはまだPerlが生きていますし、数年後に入る人が触る機会もあるでしょう。
本棚選定
本棚の調達も並行して進めました。検討要素は、積載量と価格とスペース、そして耐震性のバランスです。
図書館のような書架は定番ですがちょっと高い。安価なメタルラックを使うと多くの本が入ることは分かっていますが、奥の本は取り出しにくいし、耐震性にも不安。
というわけでニトリに落ち着きました。
再配置
新しく届いた本棚に書籍を入れてゆきます。
これが一番難しいのです。実はいまでも終わっていません。
数百冊ある技術書を、どう並べればいいでしょうか?同じジャンルの本は同じ場所でいいと思いますが、それらのまとまった本を、どういう位置関係で並べるか?
本を並べるたびに、一度立ち止まって考えてしまいました。
私が事前に考えていたのは、以下のポリシーです。
- デザイナー寄りのことは左側
- インフラ寄りのことは右側
- レガシー寄りのことは下
- ビジネス寄りのことは左上
(´-`).。oO(うーん……曖昧なポリシーですね……)
実際、本を入れてゆくごとに何度も悩みました。この悩みは、書籍をリスト化した時点で考えるべきだったとは思いますが、どのみち、おそらく考えていた通りに配置することはできなかったでしょう。
内容の話もありますし、物理的サイズの話もあります。二次元に並ぶ書籍リストを三次元に変換してしっかり並べるのは、とても大変でした。
結果
Software Design / WEB+DB Pressは、電子版が出たら古い号を除籍する運用を検討中です。毎月増える本ですが、必要な情報が古い号にあったりするので残しておきたいですよね。
上にあるサイン色紙は、TKO木下さん・山田麻莉奈さん・長谷川玲奈さんのサイン色紙です。
上記の方々と社内で収録したテレビ番組で、いつのまにかADを担当し、その中でプロジェクトマネジメントを学んだ話も、機会があればどこかで語ろうと思います。
気づいたこと
入門書系が弱い?
本がそれっぽく並んでいますが、入門書系が少ないかもしれません。
二枚目の左上は初心者ゾーンになっていて、『プログラムはなぜ動くのか』などなど置いてますが、これで新卒エンジニアの課題に対応できるだろうか?
足りない本がある
これだけ集めても『リーダブルコード』がありません。『Webを支える技術』など、個人的に必携だと思っている書籍も、実は足りませんでした。
書籍リストを作っていた時点では、このことに気づかなかったのです。それは、リストには何を書いていないかが分からない という弱点があるためだと思います。
三次元で一覧化することで、ようやくそれが見えました。
あと、メインで使ってるPHPに関する本が、意外と少ない……。ちょっと整え直しましょうか。
技術書本棚は生きもの
ここまで整理しても、これで完成ではありません。状況に合わせて本を見繕い、本を購入して配置し、返却された本を適切な位置に並べ、誰かが適当に置いた私物の本を突き返し……と、メンテナンスを続けることで本棚は生き続けます。
このサイクルが止まると、誰も参照しない紙の集積物ができあがってしまいます。参照されない本は負債となり、物理的にスペースを圧迫するだけです。
最後に
「この本が足りない!」「この本とこの本はまとめておくべきだ!」など、書籍に関するツッコミがありましたらぜひお願いします。予算の範囲でいろいろ増やしていきたいですね。