題名:Java Diary-10章

五郎の入り口に戻る

日付:1998/7/3

目次に戻る


SETI@Support-part4(Ver0.3+Q&A)

そうこうしているうちに、例のメーリングリストに面白い投稿がポストされた。なんでもこのSETI@homenに関する本を書こうとしている人がいるらしい。その人は「SETI@homeを巡る人間模様を書きたいと思います」と言って、いくつかの質問をなげかけていた。それらを以下に示す。

 

(1)SETI@homeで起きた事件あれこれ。(クライアントのバグ、MAC・Windows版公開でメンバー激増、サーバーのダウン、ワークユニット重複、トップページの書き換えなど)

(2)SETI@homeを始めてあなたの生活はどのように変わったか。

(3)SETI@homeのやりがいとは。

(4)SETI@home廃人(がいるとすれば)その生態とは。

(5)ハッカー文化におけるSETI@homeの位置付け。ハッカーはSETI@homeをどう受けとめているか。

(6)チームにまつわる人間模様。出会い、競争意識、メンバーのトレード、勧誘合戦など。

 (質問ここまで)

 これらの質問に対して自分が考えるところを書いてみようと思う。本来であればメーリングリストに投稿すべきなのだが、つれつれ書いていったら長文になってしまった。こんな駄文を長々と投稿したらそれこそ追放されてしまうかもしれない。HPに載せることで満足することにしよう。

 

(1)SETI@homeで起きた事件あれこれ:

プロジェクト開始直後にいくつかサーバー側のトラブルが起こったようだ。そしてそれはこのプロジェクトに対する反響が当初の予定を大幅に越えたところから発生している、と聞いている。

このプロジェクトのサーバー側の維持というのは一種悪夢のような仕事だと思う。参加者が少なければサーバーは楽だがプロジェクトとしてはうれしくない、逆であればプロジェクトはHappyかもしれないがサーバー側は大変だ。そして幸か不幸か現実は後者の状況にあるようだ。

世界中から何十万台ものコンピューターが不定期に接続を要求してくる。事前に参加者数を正確に想定することもできない。何かトラブルがあり、長期間に渡ってシステムがダウンする事があれば、参加者の熱は一気にさめ、解析能力は激減してしまうだろう。だから維持だろうが能力アップだろうができればシステムを完全にダウンさせないで行わなくてはならない。

私はこの方面の経験がほとんどないからこうしたことはかなり大変な作業の様に思える。(その道の人に言わせれば、「あたりまえだよ」となるのかもしれないが)これを4人のパートタイム作業者と二人のボランティアで運営するというのだ。

この話を聞いたとき、私は数ヶ月間、プータローになるかもしれない状況にあった。そしてもしそうなれば「ちょっくらBerkeleyに行ってボランティアで働いてみるべえか」と思ったほどである。何、一人でサーバーの立ち上げをやれ、といわれたら困ってしまうが、まあ段ボールから機器を取り出したり、段ボールを捨てに行ったりまあじゃまにならないくらいに手伝えることはあるだろう、と思ったのである。会社でやっていることもだいたいそんなもんだし。幸か不幸か私はプータローにならなかったのでこの構想は無に帰したが。

 

(2)SETI@homeを始めてあなたの生活はどのように変わったか:

最初のうちは、Macintoshバージョン特有の問題があり「プログラムをたたき起こさないと解析がすすまない」状況だった。だからその頃はやたらとコンピュータの前に座り、かちゃかちゃやっていたような気がする。このときは確かに「はっ」と気がつくと「俺は何をやっているんだ」という状況だった。いい年をして嫁をもらう気配もない男が日長コンピューターの前にすわって時々狂ったようにトラックパッドをいじっているのである。ハタから見たら鬼気迫る光景だったかもしれない。

そのバグがフィックスされ、ほおっておいてもちゃんと動作してくれるようになった。となると一気に手が掛からなくなった。となるともういちいちクリックを繰り返すなんてことはしなくなり、せいぜい夜寝ている間と、会社に行っている間、電源をつけっぱなしにしておく位がSETI@homeをやる前からの変化になった。最初は静かな部屋に響くハードディスクの音が気になったが慣れというのはおそろしいものだ。最近では「む。何か静かだ、、ということはよからぬことが起こったに違いない」と思うようになった。実際夏の盛りとなった最近では、温度が上がりすぎたせいだかどうだかふと気がつくと自動的に電源を切っていてくれるのだが。

会社でも仕事のかたわら解析をやらせているが、これは対して生活に影響を与えていない。他の人間はコンピュータの電源を落として帰るのに私のコンピューターだけは常時オンになっているのを不思議に思う人もいるかもしれないが、今の職場は基本的にあまり他人のことにかまわないところだから、誰からも質問を受けたことはない。バックで2本のクライアントを動かしているから多少他のアプリケーションがのろくなったような気もするが、どうせ表では大した仕事をしていないのだから支障はない。

さて、かのように私のSETI@Home生活は平穏に推移するはずであった。「自分でもちょっくら解析状況表示プログラムを作ってみるか」という考えにとりつかれるまでは。

それからの私の苦闘の日々は「Java Diary-SETI@Support」に書いた通りだが、こうした「苦闘」は私にとって楽しい物であった。こうした趣味のプログラムというものは自分が自由に設計して作成できるものだ。そしてこうした「自由な設計」の機会、というのは会社生活をしているとそれこそ10年に一度くらいしか巡り会えないものである。会社で巡り会う仕事というのは、だいたい決められた升目をきれいに塗っていくことのようなものだ。それでもそれをやることで給料がもらえるのであれば何を言おう。しかしたまには変わったことをしてみたくなる。

このプログラムを作ることを決めてから、必ずしもプログラムを作っている時間ばかりが増えたわけではない。間違いなく増えたのはハタから見れば大変異様だろうが「どんなプログラムにしてやろうか」と宙に視線をただよわせる時間である。全体の画面構成、どんな機能をもたせようか、とか、データの位置を示すグラフィックスの表示をどうしようか、とか。天体に関するものだから、恒星の一生をなぞってみようか、とか、あるいは逆にBlack holeをイメージしたグラフィックスを作ってみようか、とか。

こんな事をいろいろ考えてみたところで結局できるものはごらんの通りの何の変哲もないグラフィックス、画面、機能である。あれこれ偉そうな事を考えてみても所詮自分のImaginationと能力の及ぶ範囲はこんなものだ、と思い知らされる。なんだかんだと言いながらできたものは、あれやこれやのツールの寄せ集めに3本毛をはやして、骨を3本ほど抜いたようなものだ。何故こうなってしまうのか。

しかしこうした事を色々考える機会、というのはこのSETI@homeに出会わなければ到底得難かったものであることは間違いない。貧弱な私のImaginationではあるが、このプロジェクトは間違いなくそれを刺激したのである。

 

(3)SETI@homeのやりがいとは:

最初にやり始めた時、まずこのプロジェクトの構想に驚いた。確かに膨大な予算を使って大きなコンピューターを使って解析、とばかり考えがちなところであるが、インターネットを使って世界中に協力を呼びかける、ってのは(これまでにも暗号解読とかで例があったようだが)私には斬新に響いたアイディアだ。

今回のプロジェクトでは必ずしも答えがあるとは限らない。あるいはこれまでに試みられたSETIと同じように結局はからぶりに終わるのかもしれない。しかしその目的とするところはとても興味深く、そしてそれに参加するのにほとんど費用も苦労もいらない、ってのが気に入った。私はとてもずぼらな人間だから、頭の中でどんなに高尚な事を考えていてもそれがチョットでも面倒なものだとなるとたちまち挫折してしまうのである。

さて、かようなことを考えていてもふと気がつくと更新される自分の"Work unit received"をみて「おお。こんなに送ったか」と思ってみたり、Personal Statsをみて「おお。だいぶ順位が上がったわい」と思っている自分に気がつく。このプロジェクトの元々の趣旨は「あなたの余っているCPU Timeを貸してください」といったものだと思っている。となればあまり自分が解析したワークユニット数ばかりにこだわるも本来の趣旨からずれてきてしまっていることではあるのだが。人間どこかに目先の数字に一喜一憂する回路が組み込まれているようだ。

この「本来の趣旨」を考えて意図的にSETI@Supportから省いている機能もある。解析終了時刻予測がそれだ。これをインプリメントするのはそう難しいことではない。特にある解析状況表示プログラムの作者の方はその計算式まで丁寧に説明していてくれるのだ。しかし「余った時間を活用しよう」という事を考えた場合、この予測結果はあまり意味をもたない。なぜか?

SETI@homeクライアントにどれくらいCPUが使えるかはこの先ユーザーが何をするかで大きく左右される。クライアントが使えるのは所詮「余ったCPU Power」なのだ。これから他の仕事でばりばり使われるかもしれないし、逆にこれで使用者の仕事はおしまい帰りマースということであれば、SETI@homeに100%のCPU Powerをまわせるかもしれない。かのような次第であれば今までの傾向をいくら線形でのばしたところで意味のある数字はでてこない。-と一応ひねくれ者の私は考えてみるのだ。しかし本音を言えば時々「なんでこのプログラム(自分で作ったSETI@Supportのことだが)には解析終了時刻予測機能がないんだ」と思うこともあるのだが。かといって自分の妙な信条に逆らうわけにはいかない、、、というわけで心の葛藤の結果Ver0.3からは「解析終了までに必要なCPU Time」を表示するようにした。

 

閑話休題。SETI@homeについて書かれたある文章に「このプロジェクトに対する興味を2年間持続できるかどうか」という質問をなげかけたものがあった。私もそう思う。最初はワークユニットの解析を終了するだけでご機嫌になるが、だんだんそうした作業がルーチン化していき、とにかくワークユニット数を増やすことに血道をあげてしまうと、或日ふと「何をやってるんだ」と思ったりはしないかと。

最近SETI@Supportを作っているときにもそんなことをふと考える。すると何か他に解析意欲を刺激するようなものはないかと考えたりする。たとえばメーリングリストに「解析が終わった点を地図にプロットして楽しんでいます」という投稿がされたことがあった。SETI@Supportはそうしたちょっとした楽しみを刺激してくれるかもしれない。映画"Contact"にもあったが、地図上にピンが増えて行くのは結構(何故かは知らないが)楽しい物だ。プログラムの作者としては、はたして解析済みデータが100個とか1000個たまったときにプログラムがちゃんと動いてくれるかどうかちょっと不安ではあるが。-----をを。これを書いていて要改善点に気がついた。またなおさなくちゃ。

そこから一歩進んで何かできないかな、と馬鹿なことをいろいろ考える。解析が終わったところだけ背面にある絵が見えてきて、SKyMap一面の解析が終わると何かAttractiveな絵が見えるってのはどうだろう。Sexyな女性の写真なんかいいかな。。。何を不埒なことを。では、ハッブルから送られてきた写真とかいいかな、とあれこれ考えた末にこれではスクラッチカードかなにかのゲームではないかと思ってその構想をゴミ箱に放り込んだり。

あるいは解析済みのデータを結んで星座を作るってのはどうだろう、と思った瞬間に、そんなことをしてなんになると思ってまたもやゴミ箱に放り込んだり。こうして私の頭の中のゴミ箱は膨らむ一方だ。思えば世の中で「あっと驚くようなコンセプト」の製品にであうことがときどきある。たまごっちしかり、ポストペットしかりである。私はポストペットのユーザーではないが、単に電子メールを受信・送信すると思われていたメーラー。それにペットと遊ぶ、という要素を付け加えるなんてのは貧弱なImaginationの持ち主である私からみれば「あっつ」と驚くような話だ。そんなことがなんとかできないもんかな、とつれつれ考えてしまうのだが。

さて、最初の設問にもどろう。今の私にとってのやりがいは、解析に参加すること。それにSETI@Supportを作っていくこと、それらが半分半分になっているような気がする。解析は地道に進んでいく。そしてそれが進めばSETI@Supportのテストも進む。どんな改善をしてみようか、とあれこれ考える。この興味がいつまで続くかはわからないが、とにかく今はそうだ。

 

(4)SETI@home廃人(がいるとすれば)その生態とは:

私の知っている範囲に該当者はいない。

 

(5)ハッカー文化におけるSETI@homeの位置付け。ハッカーはSETI@homeをどう受けとめているか:

ハッカーなる人種は私の知っている範囲にいない。

 

(6)チームにまつわる人間模様。出会い、競争意識、メンバーのトレード、勧誘合戦など:

私は愛機であるPB2400を使って解析を行っているチームに参加している。しかしながらそうだからといって別にそのチームの人と交流があるわけではない。

だからちょっとずれたことを書いてみたい。こうしたチームでの参加、あるいは個人情報の表示、全体のなかでどの位置にあるのか、という表示などを考えるBerkeleyのチームの工夫は大した物だと思う。先ほど「2年間の間興味を持ち続けることができるか」という設問をしてみたが、おそらくはBerkeley側もそれは考えているのではないか。

 

またこんな話題もあった。私が所属しているメーリングリストでは「企業からの参加」について一時論議がなされた。米国のコンピュータ関連の企業はのきなみチームとして上位に名を連ねているのに、日本企業は2社だけだ、という内容である。

日本企業で-その中でも特に○○的だと有名な企業で-10数年働いた経験を持つ私としてはこの論議を読んでも「ではおれが一発」という考えはみじんもわかないようだ。今から10年前だったらどうかわからないが。。会社がこうしたプロジェクトに参加することに対して「面白いとは思うんだけど。。」と言いながらも、いい顔をしない理由は100も思いつく。そして仮に今働いている会社で大々的に参加しようと思えばそのうちの89ほどの理由が降ってくるのもまちがない。さわらぬ神にたたりなし。そんなことして何の役に立つ?全社をあげて不要経費の削減をしようとしているときに、わけのわからない計算にCPU Powerと電力とBand Widthを使うなどもってのほか、そんな暇があれば他人の仕事を手伝えよ、という声が私の耳の中で響く。

しかし、、、と考えずにはいられないこともある。

 

さて以上がなにやらまじった私の質問に対する回答である。さて、また新しいバージョンのリリースだ。また公開直後に「あわわわわ」とならないようにテストにいそしむか。

 次の章


注釈

いくつかの質問:いつも思うことだが、「質問」というのは多くの場合質問を発した人の「想定する答え」を反映していると思う。確かにあまりに「自由記述」的な聞き方をしてしまっては収集がつかなくなると思うが、これらの質問を眺めるとき、聞き手がどのような(あるいは期待)しているか、なんとなく想像が出来る気がする。本文に戻る