増刷を機にこの3年間を振り返ると・・・
「ルーター自作でわかるパケットの流れ」の増刷が決まったと出版社から連絡がきました。2011年7月発売でしたので、もう3年も前のことなのですねぇ。
この3年間、ひたすらネットワークプログラミングの仕事をしてきました。この本を書くまでもそうだったのですが、それまでと、出版後を比べると実は私にとって大きな違いがあるのでした。
私は大学のアルバイト時代からCADシステムのプログラミングをしてきて、入社後もしばらくはCADシステムの開発販売をしていました。CADシステム自体にはあまり個人的な興味は湧かず、なぜかネットワークに興味を持ち、CADシステムにネットワークを無理矢理組み入れながら開発のモチベーションを高めていた感じだったかも知れません。その後、出向や請負の仕事をするようになり、たまたまネットワーク関連の仕事を請けたりしながら、ますますネットワークプログラミングにはまっていったのでした。
私自身がなぜかネットワークを好きになったこともありますが、仕事の面では、「プログラマーは実はネットワークが苦手という人が多い」ということもポイントでした。WEBやDBが得意な人はたくさんいましたが、ネットワークが得意なプログラマーはなかなかいなかったので、競争相手が少なく、少しできるだけでも頼りにされたのです。
社内でもWEBやDBをできる人は私以外にいましたので、私はますますネットワーク関連を中心にやるようになり、仕事をたくさんこなすほどノウハウも蓄積され、私のプログラマーとしての仕事スタイルが確立されていった感じでした。
本書を書いた頃までは、プログラマーとしてはネットワークはかなり詳しい方だと自分でも考えていました。
ちょうどこの本の内容とも関係があるのですが、回線事業者で使うような規模のシステムの開発にこの頃から着手していました。一般家庭や組織内で使うレベルのネットワークと、回線事業者でのネットワークは、規模も仕組みも技術もかなり違う部分があり、この3年間は技術的にかなり苦労しました(ちょうどその時期に次の著書「プログラムは技術だけでは動かない」を苦しみながら書いていたのでした)。「プログラムは技術だけでは動かない」と言いつつも、「技術もなければ始まらない」とも言えます。
目先の仕事を考えれば、べつに回線事業者レベルのネットワークプログラミングをやらなくても、ネットワークプログラミングの仕事はまだまだたくさんありましたので、わざわざ苦労をしなくても良かったとも言えます。しかし、私は自分がすでにできることを繰り返すことが嫌いなので、さらに難易度の高そうな分野に飛び込んだのでした。
まだその分野での結果はほとんど出ていない状態ですが、この3年間稼いでいなかったわけでもなく、ProDHCPをはじめとして、まいておいた種がそれなりにしっかりと稼いでくれていたのです。しかし、3年間私がそれだけをやっていたら、次の種がまけなかったわけで、常に自分にとっての新しい道を切り開いていかなくてはならないはずと私は考えているのでした。
ということで、実は本書の内容を遙かに超えるレベルのネットワークプログラミングをこの3年間で身につけましたので、今のレベルで見直すと「ちょっとイマイチ」という部分もそれなりにあるのですが、本をはじめとした情報はヒントや気づきを得るためのものだと私自身は考えていますので、その役目においては、本書は今でも珍しい内容ですので、役に立てることでしょう。
またいつの日か、さらにディープな内容も紹介したいと思いつつ、執筆の苦しさを考えると・・・?
いずれにしても、読者の皆様、出版社の皆様のおかげで、本書がまたしばらく生きながらえることができたことに感謝しております。