日々のつぶやき(99/07/1〜)

1999/07/29(Thu)

げげ、もう木曜日だよ。何かやっているつもりで色々動いているんだけど、あんまり成果が出ないのであせりまくり。

入社前の内定者、特にプログラム初心者が読めるような本をしらないかと社内の伝言板に書いたら、いくつか反応があった。


「パソコンプログラミング入門以前」毎日コミュニケーションズ 1,600円

プログラミングの基本的な仕組みやポインタとメモリの関係などについても多少解説

してあります。

近所の本屋に問い合わせてみたら在庫があったので、早速入手して読んでみる。不満点がないわけではないが、全体としてはプログラム初心者に読ませる内容としてかなりまとまっている印象を受けた。特に前半、いちいち身近な例に引き寄せて分かりやすくしているのがいいと思った。さすがに後半は詰め込みすぎで、「プログラミング初心者がここまで分かるんか?」と思ったけど。(^_^;

他にも「分かっている人にはCode Completeを」とか「マーフィーの法則」とか「初心者であってもK&Rは読ませるべき」という意見があった。しかし個人の趣味で読ませるにはいいだろうけど、全員必修となるとさすがになぁ。(^_^;

なかなかMacの作業が進まない。ちょっと大きめのオフスクリーングラッフィックに対してNewGWorld()をすると時々失敗してしまう。深まる謎。(^_^;

1999/07/28(Wed)

今日は本社の「偉い人」が来るということで、部下持ちクラスの人はネクタイをして来ていたりして、なんかいつもちょっと会社の雰囲気が違う感じがする。で、「偉い人」が社内を歩き回るかもしれないということで、先週から部屋の片づけが行われている。いつ来るんだと思ったが、結局部屋の入り口あたりでちょっとうろうろして引き上げていったらしい。な〜んだ。(^_^;

Office2000がらみで障害報告があったので、その再現調査を行う。障害内容は、Word2000で、フランス語とかドイツ語のアクセント記号付きの文字の文字を含むRTFファイルを読み込ませると、その部分で文字化けしてしまうというものだった。やってみると確かに再現する。RTFファイルの間違いかな?と思って調べてみたが、特に間違っていないように思えるし、Word97/98でも一太郎でもWord Padでもちゃんと読める。Word2000だけがちゃんと読めない。これはWord2000のバグに間違いないだろうということで、Microsoftに問い合わせるように窓口担当者にお願いする。これも結構ひどいバグだよなぁ。(^_^;

Mac。1000 x 2300 くらいの画面に対してNewGWorld()(画面処理用のメモリ要求)を発効すると、メモリ不足なんだか、リソース不足なんだか知らないが、エラーになって返ってきてしまう。メモリ割り当てが30M程度じゃ足りないのかな。よく分からん。(^_^;ここではまってしまって、一歩も進まず。(^_^;

1999/07/27(Tue)

書きなぐり日記…はいつものことか。(^_^;昨日やっとコンピュータゲームを出来るくらいに調子が回復。今日はWWWページを書けるところまで来たのか、挑戦中。

うちの会社は中堅よりちょっと(というかかなり)小さい電子機器メーカーの子会社だ。そして、新入社員は一旦本社で採用されてから、うちの会社に出向というパターンを取る。そんな訳で、その来年度入社予定者に対する入社前研修に何をやったらいいのかという会議が親会社側の工場で行われた。

14:00から2時間程度の予定なのだが、移動の時間を含めたら半日はつぶれてしまうし、仕事を始めるエンジンのかかりが遅い、移動が嫌い、会議が嫌いの3拍子揃った私の場合、これだけでもう一日コーディングをやる気力がグ〜〜〜〜〜と失せてしまう。当然乗り気の会議じゃない。で、うちの会社から一緒に出席予定だった二人は何だかんだと逃げてしまうし、嫌だと思っても一応全体の案みたいなのを持っていったり参考文献について一通り調べたりしたんだけど、その程度で他の出席者から「いやぁ、なんか真剣にやってますねぇ」と言われてしまう。最初、嫌味かと思ったんだけど、それを言った人は本当になんにも事前に調べてなかったらしい。(^_^;なんだか馬鹿らしくなってきて、後は野となれ、山となれで、言いたいことを言う。

出席者は部長・課長クラスばっかりなんで、よっぽど黙っていようかとも思ったけど、別に喧嘩してもいいやと思って開き直ったので、後で考えると「生意気な奴」と思われたろうなぁ。(^_^;;;

相変わらずMacバージョンは苦戦中。つってもガンバルモードでやるしかないんだけどさ。

最近のマイブームは"Y.M.O."。結構好きだったんだけど、リバイバルCDが出ていたので一気にがしがし買い込む。それをmp3に変換して…というのは実は初体験だっただけに、結構はまったりした。(^_^;(仕事中は耳栓をすることはあっても音楽を聴きながらというのは滅多になかったので。)この前、SNAKEMAN SHOWのCDを買ってきて、周りに聞かせてその反応を試しているところ。

1999/07/16(Fri)

今週の中ごろには最低限認識エンジンだけでも動かす予定だったのが、未だに認識エンジンを動かすまで至っていない。すごくあせる。が、どうせ「人生なんてララ〜ラ〜ララララ〜ラ」という私には蛙の面に小便かも。「だって〜しょうがないじゃない。」大体ユーザーインターフェイスとは独立しているはずの辞書モジュールに、MessageBox()系統の関数がばらまかれているとか、辞書モジュール自体がEndianに関する機種依存性をかかえているなんて、私の限定された想像力(要するに頭が悪いということ)じゃ、思いつかなかったんだもん。(;_;)

で遅れを取り戻すべく、何とか移植作業を進めようとしているのだが、せめてWindows版のソースファイルとデータの流れだけはなるべく同じにしたいので、ソースファイルを追っかけていったが、これがめちゃくちゃすごく大変だった。色々な人がソースをいじっているのと、その場の成り行き、時間がなかったなどの制約などがあったのだろう。とにかくデータの流れが追いにくい。

データの流れを追っかけていくうちに、コメントを含めてだがかなりに頻度で長〜い関数にぶち当たる。まあ100行程度は可愛いもので、「何か妙に長い関数だな」と思ってカウントしたら600行近い関数だったので、ぶったまげた。(^_^;

別に書き直しが主な目的ではないが、読んだ部分については後でFeedbackしなくちゃいけないだろう。まあ、今は処理の流れを自分の中で消化するのが目的なので、そんな長い関数の中を読むにしても、とにかく必要のあるところだけ…、と思って処理の流れを追ってみる。が、これだけの長さになると、必要なところをざっと拾い読みするだけでも、「よし、この流れが把握できた!」と金田一シリーズの等々力警部並みに理解する頃には、「あれ、そもそも何を調べるつもりでこの流れを追う気になったんだっけ?」と最初の目的を忘れてしまっている。(^_^;

昔から私は物覚えが悪くて、大学時代に400行以上はあった関数のソースファイル(昔のある8bitコンパイラでのprintfのソースコード)を読んだ時にも、不思議なフラグやら何やらが一杯入っていて、それらの意味が頭に入りきらずに、「こんなものは一部の天才の書いたものだから一般人の私が読めなくても仕方ないさ」と思っていた。去年、200行とか300行の関数がゴロゴロしているモジュールを引き継いだ時にはあまりにひどすぎて解析不可能な関数を除いて「こんなプログラムが存在していることは許せないィィィ」(JoJoの不思議な冒険調で読んで下さい)という感じで、ばしばし書き直した。

が、これだけみんながバシバシ長い関数を書いているのを見ると、ひょっとして「長い関数をすらすら書いて、読み解ける、バグがあってもすぐに直せる。」というのが現代プログラマの必須条件で、私はその意味でも落ちこぼれなのかもしれないと思うようになってきた。才能がないというのは以前からはっきり分かっていたことだけど、「小さな関数をこつこつ積み重ねて、1つの関数はざっとソースファイルを見ると(詳しくは分からないにせよ)大体やっていることが分かるのが、正しいプログラム」と信じてきただけに、その進行がゆらいで来ているような気がする。

とにかく、何といわれようが、私には600行近くもある関数を1時間以内に読み解けるような才能も、たとえいくら努力したとしても、今後も能力がつけられるとはとても思えない。まあ、ちゃんと機能単位に分割してくれれば、新人研修の発表前に実際やったとおり、一晩で1万行程度はなんとか読めると思うけど、自分で600行近くもある関数を書けといわれたら、何かのツールを使わない限り絶対不可能だぞ…。辞めたほうがいいのかな、プログラマ。(_ _;;

1999/07/15(Thu)

やっぱり作業が遅れている。昨日頑張ったせいで、何とか辞書関連のモジュールがコンパイルしてリンクできるようになった。後はカラー画像を2値化するモジュールをコンパイルして、今まで作業をしてきたモジュールを結合するコードを書けばいいだけだ。結合するコードといっても、結局今まで作ってきたモジュール内の関数を順序正しく呼び出せばいいだけなので、プロトタイプ程度に動かすんだったらそんなに大した手間じゃない。

カラー画像を2値化するモジュールはざっと見たところ、移植性で問題が出てくるところは少なそう。実際には「そのまんま」だと問題がありまくりなのだが、このモジュールを利用する前に呼び出されるモジュールで色々細工をした -- その細工は同僚のIさんに任せておいた -- ので、このモジュールは理論的にはほとんど手を加えずにコンパイル、リンク、実行できるはず。まだ実際に動かしてはいないが、一応ちゃんとコンパイルできて、リンクも出来た。つまり、文字認識エンジンを初期化し、画像ファイルを読み込み、認識エンジンを本格的に起動する直前まで来た訳で、諸般の事情(SF大会が間に挟まった(^_^;)でかなり遅れたが、認識エンジンが動きだすというのを1つのマイルストーンにしていたので、ちょっとほっとした。

ところが、試しに現状でどこまで動くのか試しに動かしてみたら、辞書の読み込みモジュールでエラーが発生してまともに動かない。当然のことだが、辞書の読み込みモジュールは私が書いた訳じゃないから、すぐに原因になるところなんて分かる訳がないし、ソースファイルの量だって1000行や2000行どころではない。ちゃんと数えた訳じゃないけど、どう見積もっても1万行はありそう。一瞬途方に暮れたが、とりあえずトレースしながらざっと読んでみることにした。実はこのモジュールは以前クロスコンパイラを使ってではあるがほとんど手直しなしで、Mac上に移植出来たと聞いていたので、多分こっちの単純ミスだと思っていた。まあ、マクロを定義し間違えたとかのエラーなんだろうと思って、結構気楽にトレースを始める。

エラーのおきる所は比較的すぐに分かった。辞書をメモリに読みこむ時に「これ以上メモリを確保できない」というエラーが発生している。が、前後10行くらいを見渡してもマクロ定義とかこっちで移植用に用意したWindows互換APIサブセットに関する問題は見つからない。いよいよあせる。(~ ~;;アプリケーションに割り当てるメモリをかなり大きめに増やしてみても、全然駄目。やっぱりメモリを確保できずにエラーになってしまう。高々1MByte程度の辞書ファイルを読み込むのに30Mbyteメモリを割り当てても読めないなんて、なんか変だ。で、変だ変だと思いながら、何回目かの実行の時、ふと気がついた。「なんか妙に大きなメモリを要求してないか?」ここで、はっと気がつく。「このモジュールってひょっとしてEndianを全然考慮してないんじゃないの?」

Endianが問題になるとすればファイルから数値を読み込むところ。エラーの出るあたりからざっと目grepで、ファイルからの読み出し部分を探してみたら、ありました、ありました。ものの見事にEndianが問題になるところが。(^_^;

>

WORD wNumClaster;

<細部を省略>

_read(hFile, &wNumClaster, sizeof(wNumClaster));

ものの見事にEndianが引っ掛かるコードである。まさか辞書ファイル関連のモジュールでEndianが引っ掛かるようなコーディングがしてあるとは予想できなかった。(x_x;;もっともこの部分が書かれた時にはWin31の名残が色濃く残っていた時だったし、Macに移植なんてその時には考えられもしなかったから、仕方がなかったんだろう。で、そのやり残した問題を片づけるのが今日の私の仕事だった訳で、おかげでまたまた「順調に遅れかたが増した」状態になった。(^_^;とにかくファイルから何かを読み出している部分をピックアップしてEndianの問題がないかどうかチェックして、あったらちゃんと書き直すという地道な作業をしいられた。で、実はこのEndianを考慮していないソースコードを書いたとされる人と、こんな会話がなかったとかなかったとか…。

vyama「これってコンパイルさえ通れば動くなんてウソじゃないですか。この作業分は確実に遅れますよ。どうしてくれるんですか?(;_;)」
Nさん「その作業分を含めてスケジュールを組んだんだから、遅れは許さない。さっさと遅れを取り戻さんかぁ!!」

合掌。(^_^;;

1999/07/14(Wed)

あいかわらず作業が遅れている。まあ、「順調に遅れている」と言った感じか。こんなことではいかんなぁと思って、今週はシャカリキになって移植作業を進めているんだが、いかんせん未だによく分かっていないところが多くていろいろとつまずく。今日つまずいたところは驚くなかれ、なんとファイルのコピーだった。(^_^;

ちょっと信じられないのだが、MacOSにはファイルのコピーを直接サポートするようなAPIが存在しない。(移動はサポートされている。)じゃあどうやってファイルのコピーをするんだというと、AppleのFTPサイトとかCodeWarriorにあるMoreFilesと言われるライブラリをプロジェクトの中に取り込むことでファイルのコピーを行う。そのライブラリ関数のプロトタイプがこれ。



pascal	OSErr	

FSpFileCopy(

    const FSSpec *srcSpec,

    const FSSpec *dstSpec,

    ConstStr255Param copyName,

    void *copyBufferPtr,

    long copyBufferSize,

    Boolean preflight

);

何やら見慣れない構造体があるが、引数の解説をすると、FSSpecというのはWindowsでいうところのファイルやディレクトリのフルパスにあたる。Macではフルパスによってはファイルの一意性が保証できない、つまり同じフルパスを持つファイルが2つ以上存在できる。で、FSSpecという構造体を使うとファイルを一意に特定できるようになる。Str255というのは第1バイトに文字列の長さが入り、その後その長さ分の文字が続くというPascal文字列を表す。Paramというキーワードは要するにポインタということ。後の引数はファイルのコピーで使うバッファなどの指定なので、説明は省略。戻り値のOSErrは、エラーが起きた時のエラーコードを返してくれるという意味(エラーが起きなければnoErrを返す)。要するに日本語で引数の説明をすると、


戻り値 エラーコード

FSpFileCopy(

    コピー元,

    コピー先,

    ファイルの名前,

    その他もろもろ

);

という感じの引数になる。ファイルの名前の指定がなんで必要なのかわからなかったのだが、その部分の説明を読むと「コピー先のファイルがリネームされる場合に必要」と書いてあった。とりあえずリネームしなくてもいい場合に動くようテストしてみたかったので、この引数はとりあえず無視(NULLを渡す)。で、サンプルプログラムを作って動作を確認してみたのだが…、エラーになって全然動かない。(^_^;

この関数から返されるエラーコードを調べると、「ファイルの指定が変」ということ。ところが、コピー元はちゃんと存在しているし、コピー先の指定もいくら調べてみても間違っていない。う〜む、一体どうなっているんだろう?

こうなったらFSpFileCopy()の中をデバッガでトレースしてみるしかない。Macプログラミングど素人の私が見て、なにやらいろいろと使った事のないAPIが使われていたのでかなり腰が引けたが、とにかく他に手だてがない。トレースしてみると、コピー先のファイルタイプを調べているところでエラーになっているようだ。コピー先のファイルはないはずだからなんでコピー先のファイルタイプを調べるんだろう?と思って、はっと気がついて、コピー先を指定するんじゃなくて、コピー先のフォルダを指定するように実行途中でデバッガで書き換えてみた。そしたら、エラーで引っ掛かっていたところが正常に終って、調べてみるとファイルのコピーが正常に終っていることが分かった。

一体どうして何だろう?と変に思って、もう一度引数の説明を読んでみる。



srcSpec         input:  An FSSpec record specifying the source file.

dstSpec         input:  An FSSpec record specifying the destination

                        directory.

ええぇぇ。第2引数にはコピー先のファイルじゃなくてフォルダ( = この文脈ではdirectory)を指定するだってぇ?じゃあ、つまりあれかい?さっきの日本語で引数の説明を繰り返すと、


戻り値 エラーコード

FSpFileCopy(

    コピー元のファイル,

    コピー先のフォルダ,

    (ファイル名を変更するなら)変更後のファイルの名前,

    その他もろもろ

);

ということだったのかぁ。うぅぅ、こんな変なファイルコピールーチンは見たことがないぞぉ。(と言い訳(^_^;)教訓。ドキュメントはざっとでいいから一通り読みましょう。(x_x;;)

さすがにこんな間抜けな失敗をするわけがないと思って、Macの師匠Sさんに「かくかくしかじか。私って大間抜けですね。」と話したら「そういえば君の同期入社のHが同じ所ではまっていたと思うぞ」と言われた。石橋を叩いても渡らないような彼がはまるくらいだから、道あると思えば後先考えずがりがり進んでしまって、行く道がなくなってから、はたと困るような私がはまるのは当然といえよう。もっとも何の自慢にもならないけど。(^_^;;これで半日以上つぶれてしまう。

この問題がクリアーされた後、文字認識用の辞書を読みこむルーチンの移植に取り掛かる。(ちなみに今私が所属しているのは画像ファイルの中から文字部分を取り出すというOCRという分野のプログラムを作っているところ。)で、その辞書アクセスモジュールをコンパイルしてみたら、でるわでるわエラーの山。(^_^;ユーザーインターフェイスがらみでない場所で、なんでこんなにエラーが出るんだと思って調べてみる

まず分かったのが、ファイルを指定するLPSTR型引数がモジュールのかなり深い所まで引数として指定されていること。HFILE型か、HANDE型でファイルの情報をやり取りしている部分が多いだろうと(勝手に)思っていたので、これはかなりショックだった。当然その部分は書き直さないといけない。(x_x;;もう1つはファイルがないとか、ファイルが(何らかの理由で)開けない場合に、MessageBox系統関数を使ってユーザーに対してエラー通知をしている所。MessageBox系統関数は確かにWindowsだといつでも使えて便利だけど、Macにはこんな便利なエラー通知関数がないので、自前で作るしかない。今週中にエンジンを動かす予定の私としてはいずれやらなくてはいけないが、現状ではMessageBox系統関数の互換関数を作っているような時間的余裕も、さらには実力もないし、将来別のプラットフォームに移植する時に確実に問題になる部分なので、別モジュールに分離すべきだろう。

で、移植性やWindows版に今やっている作業を反映して移植性を上げるための作業をしていたら、あっという間に一日が終ってしまう。げげ、今日中にはもうエンジンが動きはじめているつもりだったのにぃ。しくしく。(;_;

1999/07/13(Tue)

Macへの移植作業。Windows版からソースをあまり変更せずに持ってこれる部分の移植が続いている。この部分が終れば、後は本当にMacのフレームワークに合わせた移植というよりは新規コーディングの部分になるはずだ。本来の予定ではとっくの昔に、Windows版から持ってこれる部分についてはやっつけてしまう予定だったし、明日は現在の進捗状況と今後のスケジュール展望について、上司のNさんとミーティングを持つことになっているので、何としてでも今日中に作業を終らせてしまいたいところだ。

ところが、原因不明のリンクエラーがあって全然前に進まない。ある関数が存在しないとリンク時エラーが出るのだが、ソースファイルを見てもちゃんとその関数はコンパイルされているはずだった。

状況を詳しく説明すると、そのリンクエラーの出る関数はShared Libraryの中の関数だった。今日付け加えた関数だったので、関数を書き加えた後、ビルドして、メインのプロジェクトに組み込んでいたのだが、そのメインのプロジェクトをビルドした時に、リンカから、「そんな関数はライブラリにない」と言われてエラーになるというものだった。色々条件を変えてやってみたつもりだったが全然効果なし。時間がないのに、本当に思ったように進まなくていらいらする。

3時間ほどうんうん考えていて、やっと原因が分かった。確かにリンクされるべき関数のソースファイルはコンパイルされていたのだが、実はコンパイルしていたのは、バックアップファイルのプロジェクトだったのだ。(^_^;だから、今日書き換えたワーキングファイルの内容は当然反映されていない。で、メインのプロジェクトはワーキングフォルダでやっていたんで、リンクエラーが出るのは当前。(ワーキングフォルダの当該プロジェクトはビルドされていなかったんだから。)ワーキングフォルダの全てのプロジェクトをリビルドしたら、何事もなかったかのように問題が解決した。くぅ〜オレのバカバカァ。(T_T)

それが片づいてから、認識エンジン周りのファイルアクセスに関する部分の移植作業を進める。認識エンジンの初期設定部分がちゃんと動くところまで確認した後、認識辞書のアクセスモジュールに手をつける。で、ここでいきなり大ハマリ状態になる。認識辞書がプルパスで指定されるというのが認識辞書モジュールのほとんど至るところで仮定されていて、しかもこのモジュールでユーザーに対する警告ダイアログまで出す作りになっていた。実はMacでは"フルパス指定ではファイルの一意性を保証できない"という世にもまれなファイルシステムなので、この部分を徹底的に書き換える。おまけにそのフルパス指定をMessageBox()関数の表示に利用していて、そのMessageBox()関数が辞書アクセスもジュールの至る所にばらまかれているものだから、修正に手間取る。

なんとかその修正を済ませたのだが、もうそれ以上動作確認をする気力も起きず、今日は帰宅。家に帰っての課題は「この状況の言い訳をどうやってするか」の一点に尽きる。が、まさか辞書アクセスモジュールがMessageBox()がてんこ盛りだなんて思わなかったし、"フルパス指定でファイルの一意性を保証できる"という仮定がこんなに下位の関数にまで徹底して浸透しているとは思わなかったんだよぅ。せいぜいopenするのは、数ヶ所で、後はHFILEかなんかで、一旦オープンしたファイルを回していると思っていたんだよぅ。だから1時間くらいで何とかなると思っていたんだよぅ。(←単なる泣き言)

1999/07/12(Mon)

東芝のサポートの対応のまずさがとうとう新聞ネタになった。東芝の広報担当とかは色々言っているけど、いくらユーザーのテープに問題があったとしても、あの対応はないだろうしね。それに、あれだけ証拠がばっちりだと言い訳も出来ないし。

先週さんざんてこずらせてくれたMacOSは今日は順調に動いていた。まあ、何回かRebootしなくちゃいけない羽目には陥ったが(^_^;、これは私が無限再帰パターンを作ってしまったのが原因(再帰にするつもりじゃなかったのに、間違って再帰になってしまったパターン)なので、そんなに文句は言えないだろう。しかし、その程度でRebootせにゃならんとは…。

今やっているのは、基本的にはWindowsからMacの移植。だからHU/Iがらみは全面的に新規に書くとしても、例えば画像ファイルの読み込み・書き込みなんかの部分とかHU/Iからは理論上分離できる部分はなるべくWindowsで動いているソースファイルをそのまま使いたい。実際は何の変更点なしというのは無理だが、できる限りソースファイルはWindowsとMacで共有化したい。という訳で、なるべく変更点がないようなモジュールを選んで移植作業を慎重に進めている。

ところがにっちもさっちも行かないのがファイルシステムの問題だ。UNIXやWindowsだとフルパス指定をすれば(そのファイルがあるかないかは別にして)、そのファイルが一意に定まる。私も結構色々なOS(初期のパソコンOS, CP/M, OS-9, Linux, OS-9など)をいじってきたと思うのだが、その中で唯一Macのファイルシステムは違うんである。

一応FsSpec構造体というファイルを一意に特定できるモノはあるのだが、この中にはボリューム番号(Windowsで言えばドライブ番号みたいなもの)が含まれていて、これがブート時に(実はBoot時に限らないが)番号とドライブの対応づけが変わるんだという。Windowsで言えば、今日はc:\fooにあったデータが、次回ブートした時にはd:\fooにある可能性もあるということである。で、Windowsだったら、その関連性を修復するのはユーザーなんだが、Mac流プログラムではプログラマーの責任なんだという。ひ〜ん。どうやってファイルの関連性を追いかけるんだよぅ。(しかし、原理はよく分からないがそのファイルの関連性を追いかける手段があるらしい。今の私には想像がつかない。(^_^;)

仕事の合間に、新人相手に部署のプレゼンテーションを行う。この手のプレゼンテーションは「はったりが命」だと思っているので、思いっきりぶちかます。(^_^;とはいっても5分ほどのプレゼンテーションなので、あんまり詳しくは話せないが、とにかくインパクトがあること、分かりやすい(と錯覚させる(^_^;)ことを目標にプレゼンテーションをした。ほとんど学生時代のサークルの特に体育会系の勧誘活動のノリ。

こんなプレゼンを上司のNさんとか同僚とかが聞いたら目を回すだろうなぁと内心思いつつ(^_^;、5分間の予定を1分半ほどオーバーしてプレゼンテーション終了。まあ、この位の時間オーバーは許容範囲内だろう。で、その他のプレゼンテーションを聞いていたら、勧誘は勧誘でも文科系のノリだったので、これは私のプレゼンテーションは勧誘としてはちっとまずかったかな?と思った。まあ、前日までにプレゼンテーションを済ませていた人達が結構「もう一回プレゼンテーションしなくちゃ…」なんて言っていた(お世辞120%増しだろうが)ので、まずまずかな。

1999/07/11(Sun)

SF大会の後始末が残っている。で、事務所入り。これでも一応会計関連の仕事をまかされたので、こりゃ残務整理が大変だなとげんなり。それでも何とか黒字になりそうな感じなので気は楽だけど。今まではとりあえず前日・当日の入出金関係だけの把握で精一杯だったのだが、色々数字を突き合わせてみると、やっぱりそこかしこに矛盾が出てくる。これを何とかしなくちゃぁ。(;_;)

1999/07/10(Sat)

久しぶりのお休みのような気がする。嵐が去って平凡な生活が戻ったという感じ。10時半頃目が覚めたが、そのまま3時頃まで惰眠を貪る。ああ、なんて平和なんだろう。

かなり遅めの昼食を食べていると、SF大会事務所から「遊びに来ないか」という電話が入る。で、当然遊びに行く。で、その後夜になってから勢いでCHOMBOさんの家になだれ込む。いい迷惑だったろうが(^_^;、CHOMBOさん宅で一晩明かす。

1999/07/05(Mon)〜1999/07/09(Sat)

1999/07/05(Mon)〜1999/07/09(Sat)

SF大会で体力を使いはたし、ほとんど生ける屍。スケジュールが目に見えて遅れているのだが、頭働かない、身体動かない状態で、おまけにMacOS動かない状態にまでなってしまって、MacOSの再インストールやら何やらで全然仕事が進まない。

SF大会の他のスタッフもみんなそんな状態なのかな?(^_^;;

1999/07/04(Sun)

この日も会場内を走りまくり、慌てまくり、失敗しまくり…。もう疲れているなんて感覚さえ麻痺している感じ。実は私は徹夜はしない主義で、仕事でさえも朝6時位までがんばるのは制定ぎりぎり。その後は8時間なり気の済むまで寝ないと体質的に駄目な人間だ。しかし、この日は一度仮眠でもとろうものなら絶対爆睡してしまうことが本能的に分かっていたので、眠らなかった。

朦朧とした意識の中でのエンディング。といってもエンディングの時もオープニングの時もトラブル窓口に張りついていたし、企画をやっている最中もトラブルの火種はないか、会場内をうろついていたので、企画もほとんど見ていない。でもやっと終ったんだ…。

エンディングが終ってから、それまで運営スタッフとしてぺこぺこ頭を下げていたうっぷんをはらすかのようにがんがん呑みはじめる。(^_^;;打ち上げパーティーでは主要スタッフの通称「羽山さん」が感激のあまり泣いているのを見て、思わずもらい泣き。(酔っぱらっていると私は異常に涙腺がゆるくなるのだ。(^_^;;)昨日はホテル全面貸しきりだったが、今日は3Fが貸し切り状態なので、「さぁ〜!スタッフの宴会じゃ〜〜〜〜〜。」

残念ながら私はそのスタッフの宴会では10時過ぎには撃沈、爆睡状態になった。宴会では結構楽しいことが色々起こったらしいのだが、残念至極。でももう体力が続かなかったのよ。(^_^;;;;

1999/07/03(Sat)

SF大会当日。興奮していて眠れなかったのだろうか。かなり眠い。本部に未連絡のキャンセルなどがないことを確認して出発予定だったが、ロープを買ってきてくれといわれたので、店が開くまでは松本を動けない。(が、よく考えたら白馬とか大町あたりで買ってもよかったのだ。すでに脳味噌が死んでいる状態だということがよくわかる。)

そして、会場入り。その後の事は経験の密度が濃すぎてとても書ききれない。とにかく会場内を走りまくり、慌てまくり、失敗しまくり…。ああ、これ以上はとても書けない…。とかいいつつ、やっぱり後で何か書くんだろうな。(^_^;;

1999/07/02(Fri)

SF大会前日。今日は無理を言って会社を休ませてもらった。とてもじゃないが準備で会社に行っていられない。(^_^;;イベント関連の業者に行って、当日の打ち合わせと、入金作業。各種の振り込み作業やら、当日必要となるであろう現金の引き出しなどを行う。

その後、自宅に行って万が一のためのバックアップのために自宅のコンピュータ2台を車に運び込む。が、運び込む予定のマシンで別の自宅マシンから引っこ抜いた手持ちのSCSIカード経由で、これまた自前のMOを認識しないので手間取る。おまけにビデオカード関連のツールが一般保護エラーを起こしてしまうし…。まあ、多分使うことはないだろうが、前途多難のような気がする。

その後、とある場所(^_^;にあるマシンを車に積みこむ。このマシンにはソースファイルや何やらが入っているので、そのバックアップを取ったり外に出しちゃまずいファイルなどを調べたりで、またまた時間がかかる。

夜。誰もいない事務所。機材も何もかもめぼしいものはすっかり会場に運びこまれている。会計のシートをチェックしようにも、ノートパソコンなどというブルジョアの持ち物は持っていないし、車からパソコンを持ちだす元気も既になかった。事務所から外に出てタバコを吹かしていると(事務所内は禁煙なのだ)、厚い雲の間に暗い空がちらほら見えている。晴れてくれればいいのだが。

1999/07/01(Thu)

SF大会開催直前。会計の資料をまとめて参加者から入金の過不足をチェックしないといけないのだが、もう頭の中はそれだけで精一杯。会計の前任者が作った当日入出金のデータと大会参加のデータベースを突き合わしてみると、矛盾点がぼろぼろ出てきて、収拾がつかなくなっている。一体どっちを信用すればいいんだょ〜?(;_;)

実行委員長以下が今日から会場入りするので、私は事務所に泊まり込みでキャンセル連絡などを待つことにした。荷物などの運び出しをおろおろしながら眺めているとは情けないが、既に寝不足で頭がパニックを起こしているもんなぁ。(^_^;

今日白馬入りするスタッフが去った後、彼らが明日参加者に支払うべき現金を事務所に忘れていることに気がついて慌てて追いかける。幸い何とか追いついて、現金を渡す。

その後、同じく実行委員会のスタッフの通称「くぼまん」がやってきたので、ビールを飲みながら一晩過ごす。


1999/6 のぶつぶつ

1999/8 のぶつぶつ

日々のつぶやき 目次

作者(vyama_at_janis_dot_or_dot_jp)への感想・意見など。
spamよけのため、_at_や_dot_は適宜@や.に入れ替えてください。

目次ページ