megamouthの葬列

長い旅路の終わり

中国のIMCO TRIPLEX SUPER

ベランダに差し込む風は冷たく、衣服や皮膚をなんなく素通りして、肉体の芯と、対応する私の精神の核心を怯えさせた。

私は煙草に火をつけようとして、愛用のオイルライターであるIMCO TRIPLEX SUPERを探したが、いつも置いてあるガーデンテーブルの上には見当たらなかった。
結局のところ、それは枯れ果てて無残な様相を呈している植木鉢の中に見つかったのだが、軽くもないIMCOが風に煽られてこんなところまで飛んだとは信じられなかった。

私はIMCOを拾い上げて、ステンレス・スチールに刻まれた造形を何気なく眺める。

それは冬の低すぎる太陽に光って、時には安っぽく、70年代の不良がゲームセンターで仲間にひけらかしているようにも見えるし、時には気だるく、アイリッシュパブで労働者の野太い手に握られているようにも見えるのだった。

*

今の中国製IMCOの美点はつまるところ、この造形の「凝り方」にある。あくまで「凝り方」であり、質感が良いとは言いがたい。
ステンレススチールは、重厚とは程遠く、何かの拍子にバラバラになりそうな危うさがあるし、握った感覚も「悪くはない」と言った程度のものだ。

程よい重さでは、ある。あるにはあるのだが、本当にライターとしてちょうど良い重さというだけで、その機能や機構の必然としての重さ、という印象を不思議と受けない。
重量計で測れば、オイルを染み込ませたフェルトを含めて正確に○gと出るであろ、という重さである。

散々けなしてきたが、これにはそれなりの理由がある。
このIMCO、点かないのである。

買った当初は、良かった。
オイルライターといえばZippoだが、それと違って、IMCOはワンアクションで着火する。
蓋の端を軽く抑えると、バネが跳ね上がって、カチャッという小気味良い音を発し、同時に回転したヤスリから火花が散り、開いたばかりの芯から吹き上がった揮発したオイルに着火する仕組みである。

私は届いたIMCOの蓋を子供のような無邪気さで何度も跳ね上げ、不思議な機構の結果としての炎を見て楽しんだ。

しかし、2日ほどすると、火花ばかりが散って、炎が上がらず、点くのは5回に1回という有り様になった。
フリント(発火石)の減りが早いのかもしれない、と考えて、まだ充分長さの残っているフリントを捨てて、新品に入れ替えてもみた。
そうしても最初の数回、着火するだけで、しばらくすると、また点かなくなるのである。

*

点かないライターというものがこれほど不快なものだとは、正直その時まで思っても見なかった。

Zippoライターを使ったことのある読者はいるだろうか?
おそらくZippoが点かない、という事を経験されたことがある読者は少ないだろう。
フリントが摩耗して数mmになってしまっていたり、オイルが切れていたりするのなら別だが、あの大げさな蓋を跳ね上げ、ヤスリを回転させれば、確実に着火したことだろう。

実のところ、Zippoもヤスリの回し方が悪ければ、点かないこともあるのだが、それでも、もう一度力をこめて回せば確実に点火する。

反面、IMCOは、着火に失敗すると、一度蓋を閉めなければならない。
また、Zippoのように「力をこめる」ということもできない。あくまでヤスリを回すのはバネで出来た「機構」の役割で、点くか点かないかに、人の技が介在する余地がない。
自然と、カチャッカチャッと何度も蓋を開け閉めすることになり、蓋が跳ね上がるあの小気味よい音が、一転、なんとも惨めな、失敗のリズムを刻むことになる。

すっかり嫌気のさした私は、傍らの100円ライターを使って煙草に火をつける。
そして、このライターとしての機能を半ば失ったIMCOを恨めしげな目で眺めるのである。

*

諦めが悪い私は、それでもネットでIMCOについて調べても見た。フリントは純正のものもいいがWINDMILLのものも良い、とある。
また機構が複雑なので、ヤスリやオイルタンクのこまめな掃除が必要である、ともあった。

調べている最中に知ったことだが、IMCO TRIPLEXというライターの原型はオーストリアで1912年に作られたのだという。Zippoは第1次大戦が終わった後だから、それより古いことになる。

私はここで、IMCOの造形の「凝り方」に合点がいった。

喫煙に加えて、結婚できない男の特徴のほとんどを兼ね備えている私は、少しばかりミリタリー系の趣味も嗜んでいる。

上から見た時、IMCOは銃口を抱いた拳銃を正面から見たような形をしている。オイルタンクに至っては銃弾そのものだ。
蓋を開けるバネと、フリントを押し付ける2種類のバネ。基本的には蓋とヤスリだけしかない単純明快なZippoの機構との対比は、ドイツを代表とするヨーロッパの兵器とアメリカの兵器の発想の差そのものだと思ったのだ。

美しく巧妙だが、壊れやすいヨーロッパ的な合理性と、無骨だが大量生産が効き、結果的には丈夫で実用的なアメリカの合理性。

その対比が、ライターにも現れているのである。

*

またレビューやマニアのブログなどを見ると、今のように中国で作られるようになる前のIMCOも当たり外れが激しく、点かない個体はとことん点かなかったそうだ。

なるほど、この個体は「外れ」であったということか。

と私は納得した。
そして、返す返す鉄製からステンレスになった中国のIMCO TRIPLEX SUPERの造形を眺めて、「上手く出来てるのになあ」と独りごちるのである。


冬の風が、ベランダで立ち尽くした私を責めたてている。私は2本目の煙草をくわえた。
手にはIMCOがある、半ば無意識に蓋を手をかける。祈るでもなく、諦めるでもなく、ただ無心に蓋を跳ね上げる。

私のIMCOがその小さな風防の中で、こっそりと炎を上げた。


フェティシストの先輩はいくじなし

私が今のように酒飲みでなく、駆け出しのPerlプログラマだった頃、先輩がいた。

私達が仕事のコードを書いている時、先輩は聞いたこともないフレームワークのテストをしていたり、英文のサイトを読んで大半の時間を過ごしていた。
たまに気が向くと、私のような新米プログラマー達にDBマイグレーションが簡単にできる方法や自作のフレームワークアーキテクチャを優しく教えてくれたりしたが、それらは全て当時の私達の理解を超えていて、正直、どう反応していいものやらわからなかった。

1

ある時、私達のプロジェクトが炎上した。
納期ギリギリで、システムが出来るには出来たのだが、挙動が不安定で、何より実行速度が極度に遅く、想定のユーザー数をさばけなかったのだ。

社長が出てきたり、顧客との悶着があったりした末、納期が再設定され、先輩がプロジェクトリーダーになり、私達がそれを手伝うことになった。

のんびりした様子で先輩は私達のコードをざっと眺めて、まずそれを褒めた。
「ちゃんとモジュール化されているし、DBコネクションが複数張られることもない」
「思ったより悪くないね」と先輩は微笑んだ。

そして、笑顔のまま、それらのコードを全て放棄した。

2

先輩が重視したのはとにかくシンプルさだった。

例えば失敗したシステムには、私が書いた拙いORマッパがあった。
Userオブジェクトを生成して、saveメソッドを呼び出すと、userテーブルに書き込まれる、といったアレだ。
先輩は「こういうのは結局使いにくいんだよ」と言って、全てのテーブルについてfetch_user、add_userのような関数を作るように命じた。(今で言うとトランザクションスクリプトだ)

また、生真面目にBEGIN、COMMITといったSQLを発行していたものを、トランザクションオブジェクトを作って、そのbeginメソッド、commitメソッドを呼び出すようにした(commitせずにオブジェクトが破棄されるとrollbackする仕組みだ)

しかし、その実装を見た私は驚いた。RDBMSトランザクションに加えて、システム全体で単一のロックファイルを使った排他制御が行われていたのだ。

せっかくRDBMSトランザクションを使っているのに、なぜジャイアントロックをするのか。こんなことをすればユーザーが何かを更新する度に、全てのテーブルの読み込みが待たされることになる。
私は当然懸念を表明したが、先輩は「これで十分」と言って聞かなかった。

こんな調子で、予定通りシステムは出来上がった。想定の性能も出て、問題らしい問題は全くなかった。


私は半ば感心し、半ば挫折した気分だった。
なぜプロジェクトが成功したのかもよくわからなかったし、何より、私達が書いたコードは全て捨てられてしまった結果がこれなのだ。
まるで、0点の答案を返されて、追試で答えだけを教えてもらって合格点をもらった。そんな気分だった。

3

先輩が会社を辞めたその後も、あの時の先輩の判断について私は考え続けた。

ORマッパについては、そもそも出来がよくなかったし、もし、使い続けていたらひよっこの私達には使いこなせないか、習得やバグ取りに時間をとられることになっただろう。
なにより私達は、fetch_userでuserデータを取り出し、update_userでデータを書き換えることに何の疑問も抱かずにすんだ。

ジャイアントロックについては、正直ずっと釈然としなかった。
実際、後のバージョンで、必要に迫られて私はそれらを全て除去した。(ご想像の通りサーバーの台数が増えてファイルロックが使えなくなったのだ)

しかし、データ不整合が起きたと聞いた時(結局、それは誤解だったのだが)、真っ先に自分の実装を疑わなくてはいけない羽目に陥った。

先輩は常に正しかった。と私は数年後に思った。

私達ひよっこPerlプログラマーという手数、次は絶対に失敗できない重圧、納期、それら全ての要因を考えた上で、全てが「ベストの選択だった」としか言いようがなかった。

4

齢を重ねた。

私の歳はとうに当時の先輩の年齢を超えている。
経験も、まあ努力の差や、私の怠惰な性格を差し引いても同等かそれ以上になるだろう。
本当なら、私は当時の先輩の境地に達している筈である。

だが、今だに私は先輩がわからない。

後輩や誰かが書いた無駄に複雑でバグだらけのコードを見ても、先輩のように全てを破棄する決断を下すことができない。
これはこれで動いている以上、どこか正しいのではないか、と、思ってしまう。

生産性を増大させる見込みのあるフレームワークアーキテクチャを見分けることができない。
新しいフレームワークを見ても、将来性や導入(学習)のコストを考えて、二の足を踏んでしまう。

私ができるのは、せいぜい、前任の某が使っていたのが回ってきたから、という理由でフレームワークを選んだり、クイックハック気味にバグを取ったり、あんまりひどい時はコードを少しリファクタリングしてわかりやすくするぐらいのことだ。

今でも私は、先輩のように、あの故郷を目指してただ一直線に突き進む鳥のように、速やかに、迷いなく、何かを決めるということができない。ただの一つも。

5

しかし、とも思う。
自分の才能の無さを棚に上げれば、先輩は一種のフェティシストだったのではないか、と思うのだ。
シンプルさやミニマルな実装に対する偏愛があっただけだったのではないか、と。

私は先輩の鮮やかな開発を見た。まるで最初から最後まで全てをわかっているような決断の速さと、狂いのなさを見た。
反面、今の私はどのような開発現場にも使える「銀の弾丸」が存在しないことも、また知っている。
納期やクライアントの理不尽さに対抗するには、手段を選んではいけない事を知ってしまってもいる。

今の私にはシンプルを愛する先輩がその後も、どんな状況でも上手くやれた、とまで言い切ることができない。

6

ダーティーなクイックハックを行う時、こういう時、先輩ならば、と私は何度も自問したものだ。
それでもなお先輩はシンプルを追い求めるだろうか?と。

おそらく追い求めるだろう。営業の虚をついて、以前のコードを全て破棄するぐらいのことは平気でやってしまうだろう。
なぜなら先輩には「確信」があるからだ。一切のバグを出さず、所定の時間で、自分の好みに実装を作りかえるぐらいわけはない、と本気で考えているのだ。

私にはついぞその「確信」は芽生えなかった。
私はただ迫り来る波をうまくかわせればいいとだけ思っている臆病なサーファーだ。

だが、プログラマとして生きていくにはそれで必要十分なことだったように思う。

風の噂で、先輩は私よりずっと早くプログラムを辞めて、ITとは何の関係もない仕事についた、と聞いた。

フェティシストは「完全」を知っている。だが、それ故に生き続けるのも難しのかもしれない。
私は「不完全」なシステム開発の汚濁を生きた。だからこそ、まだ立っている。
まあ、抜け出せなくなっているだけかもしれないのだが。


ただ今でも、私がコードを書く時、必要以上に複雑になっていやしないか、と少し怯えている背中から、私の先輩はあの時の笑顔のまま、私のコードを見てくれているのだ。


筋少の大車輪

筋少の大車輪

本当に好きなことを見つける方法

ちょっとした論評めいた物を書こうと思って、プロットから書き出してるが、最近「書く」絶対量が減っていて、文章がすっかり下手になってしまっているので、練習がてら一発書きする。


最近、何もする気が起きないし、仕事も簡単なものがポツポツ来るぐらいなので、昼寝したり、日が暮れるとマイスリーを飲んですぐに寝てしまう生活をしている。

眠ると夢を見る。
私の夢の20%ぐらいは大学絡みのもので、他の大学に入り直すためにセンター試験を受けなおしたり、昔いた大学で単位が取れないことに絶望したりする夢だ。きっと中退していることが、それだけトラウマになってしまっているのだろう。

今日は、私が美大生になった夢だった。

夢の中で私は見知らぬ女性とテレビを見ている。女性はポツリと私に言う「芸大ぐらいは出ておきなさいよ」と親に言われたのだ、と。彼女の父親は昔、油絵をやっていて、彼女が小さい頃から絵を描くのを応援した。
「今思うと、父は自分の夢を私に託したのだと思う」と彼女は言った。そしてつけ加えた。
しかしもう、絵を描き続けるのは嫌なのだ。と。

私は息を呑んで、彼女に自分も同じようなものだ、と言いかける、そこで目が覚めた。


実際の私は芸術を好んではいたが、美大や芸大に入るほど、真剣に音楽や美術をやっていたわけではなかった。
学校の進学希望の書類にも、有名な大学の就職に有利そうな、潰しの効く学部を書いておいた。
そんな私の態度を見て、担任はすこし呆れたような顔で「もっと自分が行く大学や学部について調べたほうがいい」とアドバイスした。

私は担任の言葉を鼻で笑った。その頃、私は大学で勉強する、という行為をほとんど無意味なものだと考えていた。
法学をやったからといって、弁護士になるのは一部だし、経済をやって大手企業に入ったところで、やらされるのは営業という名のお客のご機嫌取りだ、と知っていたからだ。

ようするに、有名な大学を履歴書に書けさえすれば、いい会社に入れるのだろうし、親もそれを望んでいるし、だったら好きなことをやるために、聞いたこともない大学に行くなんて馬鹿げた話だ。というのが当時の私の考え方だった。

私の家族は皆、そこそこ有名な大学を出ている。母だけが無名の地方大学を出ていた。だが、それは貧乏のせいだ、と彼女は言い張った。
「私の家が裕福だったなら、私は東大や京大ぐらいには入れた筈だ」
というのが彼女の口癖だった。なので息子である私にも「順当に」有名大学に入るよう要求した。

私はというと、そこそこ真面目に勉強しさえすればテストで良い点を取れることは知っていたので、そのうち「順当に」有名大学に入って、「順当に」大手企業に入るのだろうな、と漠然と考えていた。

当時から好きなことはあった。音楽がすきだった。プログラムを書くのも好きだった。人と話すのが好きだった。文章を書くのが好きだった。

でも、本当に好きなことがあったとしても、才能もないのにそれを生涯の仕事として探求することなど愚か者のすることだ。「真っ当な」人間は本業の合間に趣味で、ほんのちょっとその「好きなこと」の片鱗を垣間見て、それで満足するものなのだ。
つまりは本当に、人生など、安易で、クソくだらないものなのだ。まったくお母様の言うとおり、と私は考えていた。



母と私の、この世の中を舐めきったプランは、私が20歳ぐらいの時までは「順当」に進んでいた。だが、以前から書いているとおり、私は途中で契約を破り、大学を辞めた。
そして今、大手企業の営業どころか、無名のフリーランスプログラマになって、聞いたこともないような大学の出身者や、高卒の人たちと一緒に仕事をしている。


大学を辞める前後、「後悔するぞ」と色々な人に言われた。私もそうだろうな、と思った。

だが、あれから20年近い日々が過ぎ、今だに後悔はしていない、後悔するとしたら母親の口車に載せられて、自分の好きなことをないがしろにして、履歴書にして2行たらずの体裁にこだわったことだけだ。

私は今、本当に好きなことをやっているし、やってきた気がしている。
プログラミングで生計をたてているし、色々な経歴の人と話してきたし、反吐を吐くほど音楽をやった。そして今、こうして文章を書いている。

もし、私が進路調査票を書こうとしている若い自分に会ったら、こう言うだろう。
「本当に好きなことをやれる人生を考えろ」と。

だが、それも無理なことだろうな、という思いもある。18かそこそこの若者に「本当に好きなこと」を問うても、そんなものは「ない」に決まっているからだ。


自分が、それを本当に好きなのかどうか、それは好きなことをやってやってやりきった、探求の末にわかるものだからだ。


納期に追い回されながら、一日13時間ぶっ続けでプログラムを書き続けて、それでも完成せずにクライアントから嫌味を言われた時。

あるいは、フレーズの良し悪しが全くわからなくなるまで、演奏を録音し続けたのに、完成した曲が自分の心を全く動かさなくて、絶望した時。

または渾身の小説を書き上げてブログに掲載したのに、ブクマの一つもつかない時(ここ読者に対するメッセージ)

それでも、もう一度立ち上がって、それをやり続ける気が自分にあるかどうかでしか、本当に好きかどうかはわからない。


本当に好きなことを見つけるのは難しい。しかしほんの少しでも「好き」と感じたのであれば、それを見分けるチャンスが与えられたのだと考えることはできる。
人からやれと言われたり、周囲になんとなく勧められたところには「本当に好きなこと」は、決してないからだ。

なので、そういった「好き」の芽を大切に育てること、それが「本当に好きなことを見つける」方法と言えるかもしれない。


ただ、そういった人生が「幸せ」かどうかは別問題だ。好きなことを探求し続けることが、いい人生だとか、そんな事は一言も言っていないことに注意してもらいたい。

ただ、望むと望まざるにかかわらず、こういった生き方をすることで、ある種、自由で壮絶な人生を送れることは保証する。


私が、夢の中の女性に伝えたかったことはそういうことだった。と早朝の私は思った。