見出し画像

[#33] 「Friends of "X"」なんてことをやってみたその理由

初出: MacPower 2003年 4月号

先月予告したとおり、渋谷のビール屋さんでプログラマー展を行うことになった。3月の6〜8日なので、皆さんがこの記事を目にするころには終わってしまっているはずだ。やってよかったー、と祝杯をあげているか、あーなんか失敗だったなー、と反省しているかはわからない。なんとか成功させたいなという気分ではあるし、たぶん気持ちよくビールを呑んで無事終了している気もする。しかし、今この時点では、出展作品がまだ完成しておらず最後の追い込み時期を迎えている。こんなこと始めなきゃよかったという反省でいっぱいである(笑)。

始めたきっかけというか動機の1つになったのが、昨年宣言してしまった「Finderを作るぞー」ということ。言ってみたら賛同してくれる人も多く、メーリングリストを作って話し始めたまではよかったのだが [*1] 、実際にみんなで一からモノを作ることの大変さも、やはり感じられた。

そもそも、共同作業というものには、走り出すと止まらなくなり、それにより新しいアイデア, バグの修正などが次々と出て、物事がずんずん進むというメリットがある。今回のように、皆が自分の空いた時間を使って参加してくれるというような場合には、有効な方法なのであろう。

しかし、それは最初の一歩を踏み出したあとの話だと思う。この最初の一歩をみんなで踏み出すことは、なかなか難しい。まさに足並みがそろわないのだ。結局たたき台となるべき最初のブツがある程度かたちになってからでないと、なかなか共同作業で進めるというのは難しいモノだと実感。まず最初にある程度まで誰かがかたちにしたあとで、こんなん作ってみたんだけど、どうでしょ?という持っていき方がよかったのかなー、という反省がある。プロジェクトになってしまってからだと勝手が許されない雰囲気というのがあるし、人間関係も気にしなくては、という足かせも発生してしまう。

まぁ、おわかりのとおり、これらはプログラミングの共同作業に限ったことではないだろう。みんなでアイデアを出し合うときも一緒だし、呑み会である程度誰かに仕切ってもらったほうがスムーズに進むのとも似ている。物事を進めるには、言い出しっぺに強力なリーダシップが備わっているか、あるいは物事の段取りをあらかじめ決めておかなければいけないのであろう、ということである。参加者のみなさん、すみませんでした。というわけで毎度のごとく前置きが長くなったが、「Friends of "X"」をやるにあたって自分の中で掲げた目標が、Finderを目指すたたき台を作ろう!であったのだ。

実際Finderを作ろうとすると、いろんな知識を結集させないといけない。我々がMac OS XのFinderにダメ出ししている部分は、多くはそのコンセプト的な部分と、そこから派生するインターフェースの使いにくさである。しかしその裏では、マルチタスクで動作するファイル管理 / ハードディスクなどのデバイス管理 / スムーズに動作するサーバー管理など、クリアしなくてはいけない足回りの処理が多い。イベントまわりの扱いが大きく変わった状況でこうした課題に立ち向かっていくには、オレの経験は少なすぎる。そう考えたのである。

仕事の中で得られる経験というのは制約に満ちている。今後どんなにMac OS Xの仕事が増えていったとしても[*2]、クライアントの意向を無視した仕事が出来るはずもなく、またその意向が自分のしたい方向と一致していることも滅多にないモノである。その仕事の中から得られるモノは、もちろんたくさんある。しかしそれは、自分がしたいと思って得た知識とは別種のモノである。次元が違うと言っていいだろう。

実際、自分のMac OSのプログラミング知識も、学生時代に行っていた自分のためのプログラミング、つまり興味があるからモノを作り、またそのために調べていた時代の経験が一番大きい。その財産でいまだに喰っていけているとも思う。やはり、したいことをする。そのために調べる。そして作る。これが自分の血肉となるのである。ありきたりの言葉で申し訳ないが、これが実感だ。Friends of "X" には、もう一度そういう経験をしたいという意味もあるのだ。

これだけ偉そうに書いてきたのだから、さぞやスゴいモノが出展されていることだろう。うーん、期待させちゃうなぁ······でも、申し訳ない、現時点で Finderのたたき台となるべきモノが出せる確率は限りなく低い。準備期間が足りなかったわけではなく、ちょっと興味の方向がずれてしまい(笑)、Finderじゃないものを作り始めてしまったからなのだ。昨年のWWDC からずっと気になっていたけど勉強する機会を作れなかった「Rendezvous」に手を出したのだ。

Rendezvous とは、ネット上にあるサービスを、アドレスとかを入力することなく見つけることが出来る機能だ。iChat でも使われているのでおなじみだろう。なんの設定もせず、しかもサーバーも立てていないのに、LAN内にいる人を見つけ出しチャットができるのは同機能のおかげなのである。

これって実際、Apple Talk では当たり前の機能だったわけだが、Mac OS 9までのネットワーク環境は不安定で、デバッグがとても大変だった。Open Transportの時代でさえ、デバッグ中にちょっと変なことをするとリブートしなくてはいけない羽目に陥り、やる気がなかなか持続しなかった。

しかし、時代はMac OS X。いろいろ文句はあるが、ネットワークの安定度はMac OS 9の時代とは比較にならないほど高い。素直に「UNIXさん、ありがとう」とお礼を言いたい。速いし安定しているしデバッグもホントに気楽に行える。しかも、Perlなどでも簡単にサーバーなんか書けちゃうので、実装テストも簡単お手軽。ようやくへテロな環境を遊べる余裕がでてきた。これから楽しい時間が待っていそうだ。

バスケ(http://www.saryo.org/basuke/)
今回は結局、何が言いたかっていうと、たぶん、Finder出せなくてごめんなさい、ということでしょう(笑)。あー、「Friends of "X"」まであとちょっと。プログラムは果たして完成するでしょうか?ちなみにお題は「iMacホームサーバー化計画!」です。

[*1] 話し始めたまではよかったのだが - MacPeopleでも取り上げて頂きました。予告を守れなくてごめんなさい(笑)。
[*2] 増えていったとしても - というほど仕事がたくさん来ているわけではないんですが(笑)。いや、むしろ少ないぞ。もっとMac OS Xの仕事を!Cocoaの仕事を!もうClassicの仕事はしたくないぞ!······いや、多少ならします(笑)

編集・矢口和則

この記事が気に入ったらサポートをしてみませんか?