カテゴリ別表示

全体

最近の日記

仕事納め
12月らしく
年末
忘年会2
休み

最近のレス

なおき (12/9)
やす (12/9)
なおき (12/3)
しろへび (12/3)
なおき (11/25)

日記アーカイブ

2008年
1 2 3 4 5 6 9 10 11 12
2007年
1 2 3 4 5 6 7 8 9 10 11 12
2006年
1 2 3 4 5 6 7 8 9 10 11 12
2005年
1 2 3 4 5 6 7 8 9 10 11 12
2004年
1 2 3 4 5 6 7 8 9 10 11 12
2003年
1 2 3 4 5 6 7 8 9 10 11 12
2002年
1 2 3 4 5 6 7 8 9 10 11 12
2001年
1 2 3 4 5 6 7 8 9 10 11 12
2000年
4 5 6 7 8 9 10 11 12

管理人
naoki   [HP]
RSS FEED
149881
2003年3月の日記

2003/03/03(月)
3月
気がついたらもう3月です。
先週末は地元帰って友達と遊んでました。
今日は月曜だけどちゃんと会社行くぞっ!(←当たり前)

--- 延々と… ---
今日もひたすらコーディング。
にしても、おっそろしい位の量があるぜ。
こりゃ完全に設計ミスだ。とにかく初心者は何でもかんでもクラスを作りたがる。

同じことやろうとしてるのに、それをいくつもの側面から見て複数のクラスが出来上がる。
結局冗長な記述が山のように出てくる訳だ。
とはいっても、全体見渡して設計作り直してる程の余裕は無いのでこのまま続行。

--- 不吉な予感 ---
やっと今日になってVSSによるソース管理が行われるようだ。
が、アップされたソースが俺のだけっていうのはどういう事だ?
このプロジェクトはそれなりに大きいから、俺が所属してるチーム以外にも
複数のチームがあってそれらで成り立っている。

もしかして、全プロジェクトの中でコーディング進んでる人間が
俺しかいないって事か?
一体何なんだ…この現場は。そんなんじゃ締切り近くなってから地獄見るのがオチだぜ。

俺のほうはとりあえず順調だ。
が、勤務時間の9割くらいをコーディングに費やすのはさすがに疲れる。
そんなわけで今日も定時にあがる。
残業?集中力が持たないぜ、そんなに。

2003/03/04(火)
いつもの癖で…
今まで長い間月曜休みという習慣がついてたせいか
週始めの時間調整がどうもうまくいかない。
昨日の久々月曜出勤はなんとかなったんだけど、夜になってもなぜか眠れない。
結局明け方になってしまい、今日は行くのを断念。
まぁいっか、明日頑張れば(適当)

2003/03/05(水)
謎の消失?
昨日休んだ分を取り戻そうと朝からコーディング。
…と思ったらまた会議かよ。
これで午前中は潰れてしまった。

で、なんやかんやあって今まで作成してきたクラスの内
4つほどが必要なくなったらしい。それでもまだ7つあるんだけど。
一つの機能を実現させる為だけに11個もクラスがあったんだぜ。おかしいって気付けよ。

--- 無理だろ。 ---
今僕がコーディングしてる部分を10日までにテストまで完了してくれという依頼が来る。
別にそれは構わないが、テストまでやってる暇は無いのでそれは他の人間にやってもらう事にする。
しかも、11日には外部との結合テストをやるというスケジュールらしい。

冗談よせよ、周りの人間はまだ全然コーディング進んでないじゃないか。
結局俺がいくら頑張って終わらせてもその先に進まないことが目に見えてる状態では
やる気も失せてくる。が、それでも自分の請け負った仕事は全うさせるのが信念だ。
後倒しが暗黙の了解となってるような奴らの腐った風習まで真似したくない。

--- 次を目指して… ---
仕事中、営業の人から連絡があった。
なんでも次の仕事の面接があるから今週の金曜に来てくれとの事。
立場としては「SEがいる中で、その下につくSE」という微妙な位置らしいが
今より少しランクが上がったことは事実。
もちろんこれに決めた訳じゃないが。まだ4月までは時間があるからね。

2003/03/06(木)
それで完成?
僕とコンビを組んでいる人がテストを担当してる訳だけど、
ちょっと心配になったので進み具合を聞いてみる。
いくつかのクラスに関するテスト仕様書は完成したとの事。

で、見てみる。予想通り、
「○○メソッドを実行。正常に処理が完了すること」
みたいな小学生レベルのテスト項目がメソッドと同数あるだけ。
おいおい、こんなんやり方さえ教えれば小学生でも出来る作業だぜ。

それ以上に問題有りなのが、これで完了したと勘違いしてる所だ。
そのテストを実施するのもアンタだろ。
だったらその為のテストデータの作成やらテストプログラムの作成やら
やる事は山ほどあるっちゅーの。
あやうく気が付かずに先進むところだったぜ。

--- 初耳 ---
で、そこら辺をやってもらった上でテストしようとしたところ
またも問題発生。こっちで使ってる一部のクラスは既に別部隊が作ってて
それを利用するって言うじゃないか。
一体どうなってんだ。そんな大事なこと今になって言うなよ。

が、案の定とても使えるレベルまで達していない。
結局そのクラスの完成を待ってたら先に進めないので
こっちで用意してテストする羽目になった。あ?あ、面倒だぜぇ…

--- 立て続けに… ---
明日面接があるって話はしたけど、来週の月曜にもまた面接の予定が入るらしい。
しかも驚くことに、わざわざ向こうがこっち(勝どき)まで来てくれるっていうじゃないか。
月曜は忙しい予定だから、仕事の途中に抜け出して面接するって寸法。

今まで何回も面接は受けてきたけど、向こうから出向いてくるっていうのは初めて。
そんなに期待されてるのかと思うとちょっとプレッシャーだな。
やはり大幅な経歴書修正がモノを言ったか(笑)
まぁそんな嘘は書いてないし、何とかなるだろう。
さっさとこんな現場とはおさらばしたいぜ。

2003/03/07(金)
「通常」に戻った?
なんか最近暇だ。コーディングしようにも、
その部分のレビューが終わってないとかで手の付けようが無い。
結局、いつも通りの放置プレー状態になりましたとさ。

--- テスト開始 ---
レビューの済んだ箇所から別の人にテストをお願いする。
完全な正常系しかないという、おおよそ使えないテスト項目だが
これでも全くやらないよりはマシだろう。

が、彼はなぜか悩んでいる。しばらくして僕に話し掛けてきた。
「この部分にこのロジックがあるのでちょっと…」
なんかよぅ解らんが、要するに僕が作ったプログラムを見ていたら
自分の作った仕様書と違う部分があるというのだ。

--- 自己満足 ---
あのなぁ、確かに仕様書いたのはあんたかもしれんが
俺はそんな使えないモン見ながら作業してた訳じゃない。

第一、テストする人間が内部ロジックを気にする必要がどこにあるんだ。
テスターのやる仕事は、与えられた処理を実行してそれが正しい結果を返すことを確認するのみ。
内部がどうなってようが関係無いはずだ。

無駄なドキュメント作成といい、こういう事にこだわる理由が俺にはよく解らん。
別にここを完璧にしたところでアプリケーションの質が上がる訳でもないし。
結局は本人の自己満足的な欲求を満たす程度だよな。

--- 合理主義 ---
プログラマってのは合理主義な人間の方が絶対向いてる。
もちろん僕もそのうちの一人だ。
普通、合理的にすると色々なものが犠牲になったりするもんだけど
この業界ではその常識はほとんど通用しない。

どんな方法で作ったって、完成品が同じならばその二つは全く同じものだ。
それがデジタルの魅力。
合理性を高めれば高めるほど、その完成品を作るまでの時間は短縮され
より安定性の高い製品を作ることができる。

--- 完全な世界 ---
「絶対」が存在する、この世界。
所詮プログラムなんてものは、作られた通りにしか動けない無機質なものだ。
でもそれは言い代えれば「全てが自分の思い通りになる」という事でもある。

そんな閉じこもった世界でいくら自由になったって
面白くないと言う人もいるかもしれない。
でも僕はそれが好きだ。だからこの仕事を続けようと思う。

--- 面接 ---
さて、今日は仕事帰りに面接行ってきました。
なかなかやりがいのありそうな現場らしい。
正直、ちょっとしんどいかなというのが率直な感想。
僕以外の3人のSEは全員30代だっていうし、僕は現場の中でも一番の年下になるようだ。

なんか他のプログラマの人の日記とか見てると
僕と同年代でもSEやってる人は大勢いるのかも思ってたんだけど、
少なくとも僕らの周りの世界ではSEといえば30代になってからなる人が多いらしい。
確かに、そんな簡単になれるもんじゃないからね。

…って、まだ決まったわけじゃないんだけど。
向こうとしては3月中旬くらいから働ける人を捜してたらしい。
っつーか、なんでそういう情報が俺んとこ回ってこねーんだ。
俺は当初っから3月末の契約だったっちゅーの。これだから派遣の仕事は嫌なんだ。

場所は蒲田らしい。ということは、もしここに決まれば
地元軍団がこの付近に3人集結ってことになるな。
そうなったら一丁飲み会でも開きますか(笑)

2003/03/08(土)
春ですか?
昨日まで雨も降ってメッチャ寒かったのに今日はかなり暖かいぞ。
考えてみたらもう3月だもんなぁ。
ようやく俺の季節が巡ってきたって訳だ(嘘)

--- 僕と音楽 ---
NHKで、ある女性ミュージシャンのドキュメント番組をやっていた。

いつからだろう、僕はメジャーの音楽をほとんど聞かなくなった。
それはインディーズのライブに行き始めてからかもしれない。
音楽を楽しむインディーズに比べて、売れることを意識するメジャーの音楽に
嫌気がさしてきたのも事実だ。

そして僕が社会人になってから。
インディーズのライブに行くこともほとんど無くなった。
最近では、音楽に触れる機会すら無いのが現実。
だけど別に僕は音楽に興味が無くなった訳じゃないんだ。

--- 鬼束ちひろ ---
彼女が出てきた頃、僕は既にメジャー音楽にあまり興味を示さなくなっていた。
もちろん彼女とその歌の存在は知っていたし
正直、彼女の声にはかなり魅かれるものがあった。

そんなことも忘れ時は流れ、今日また彼女の歌声を聴いた。
何年ぶりかに、歌に感動した。
失くしかけていた、僕の音楽を好きな心が蘇った気がした。
どんなに時が経っても、どんなに間が空いても、
僕が音楽を好きな気持ちは変わらないんだなって再確認できた瞬間だった。

2003/03/10(月)
かなり気になる…
最近、JR高田馬場駅のホームでは
ドアが閉まるときになぜか「鉄腕アトム」の音楽が流れる。
なんかのキャンペーンかとは思うが、やけに気になるのである…

--- さ?て、何しようか… ---
また月曜の朝になると体調が悪くなる病が発動してしまった(嘘つけ)。
というわけで今日は休み。
せっかくだから買い物に出掛けることにする。

食器類を揃えようと思ってたんだけど、なぜか興味はグラス類の方へ(笑)。
ワイングラスとか実家に置きっぱなしだったのでまた買うことにした。
最近たまにワインも飲んだりするのだ。意外と好きなことに気づいたからね。
あとは色々…証拠写真を下に載せときます。

……って、お前はショットバーでも開くつもりかっ(笑)!


2003/03/11(火)
実力社会
いきなりこんな堅いタイトルで始まって失礼。
だけど、どうしても書かずにはいられなかったので書くことにする。

テレビでコンビニ舞台裏のドキュメントをやっていた。
なんか最近テレビネタ多いな。家にいるのがバレバレだ(笑)
他店との競争に勝たなければ生き残れない世界。
正真正銘の実力社会がそこにはあった。

--- 技術職 ---
前にも書いたけれど、僕が今いる業界は実力社会ではない。
でも僕は、実力社会を望んでこの業界に入ったんだ。
「技術職 = 実力社会」という僕の単純な考えは甘かった。

アスリートでさえも生半可な実力だけではやっていけないこの時代、
今の日本で実力社会な場所はごくわずかだ。

--- わずかな人々 ---
数々のドキュメント番組でよく取り上げられる人種を考えてみる。
経営者、アスリート、アーティスト、…
けど悲しいかな、そのどれも僕には向かないだろう。

経営者に必要な、時代の流れを読む力も才能も僕には無い。
アスリートに必要な、強靭な肉体や反射神経も持っていない。
アーティストに必要な、生まれ持って研ぎ澄まされた勘や能力も無い。

僕に一番向いてるのは、頭を使った技術的な仕事だと思っている。
そうしている時は幸せだし、今までもそういう分野で
人に劣っていると感じたことも無い。

--- 僕の選ぶ道 ---
だけどその分野が、僕の望む世界とは少し違っていることに気付いた。
おそらく研究者になれば、僕が望むような世界に少し近づいていたのかもしれない。
だけど僕はその道を2年前に捨てたばかりだ。
意味の無い学校の授業が大嫌いだった僕は学校を辞めてこの世界に飛び込んだ。

こんな事言ったら学校の先生方に怒られるかもしれないが、
僕は勉強なんてものは「やれば出来る」程度のものだとしか思っていない。
前から言っているように、僕は無駄な作業を嫌うのだ。
やれば出来るようなものにわざわざ時間を費やすことを、無駄としか思えないのだ。

「1から10000まで数えて」って要求を実行するような人なんていないでしょ?
そんなのは他に取り柄の無い奴等にやらせとけばいい…
って、こんな事言ってたらマジしばかれるな(笑)。

--- 僕の喜び ---
だから僕は、自分の能力が発揮できる場所に行きたかった。
「誰でもやれば出来る仕事」ではなく、「僕にしか出来ない仕事」をしたい。
それが技術者にとっての最大の喜びだ。
そしてそれを極めていくことに、僕はこの上ない幸せを感じる。

Oracleの資格を取るための勉強なんて全くやる気はしないけど、
Rubyの学習なら知らない間にやっているしApacheの設定だって簡単に出来る。
それは他の人から見たら「勉強」に思えるかもしれないけど
僕からすれば「好きでやってる事」なのだ。

僕は「努力」「忍耐」という言葉が嫌いだけど
休みの日に1日10時間コーディングをすることを苦に思ったことは無いし
それを努力だとも思わない。

--- 好きこそものの… ---
他の人から見たら、自分の好きな事にしか興味を向けない僕を
「何て我儘な人間なんだ」と思われても仕方無いかもしれない。
でも僕はその生き方を変えるつもりも無いし
それで世の中を渡っていけないとも考えていない。

よく、「好きなだけじゃ仕事はやっていけない」って言う人、いるよね。
じゃあそいつに聞いてやるよ、好きなこと以上に何が必要なんだい?

--- 才能って何? ---
おそらくそいつはこう言うだろう。
「その仕事への才能が必要なんだよ」
確かに、それは間違った意見じゃない。でも、正しい意見でもないんだ。

何かを全身で全力で好きになる。それはすごい才能なんだ

アンリミのラブファイトという歌からの抜粋だ。
僕はこの歌詞を聞いて、すごく共感できる所があった。
そう、一つのことをそこまで好きになれること、それはもの凄い才能なんだって事。

--- 本気で好きな事 ---
だから僕はこう言いたい。
「自分が本気で好きな事を仕事にしようよ」
仕事への愛情が無ければ、決して良い方向へは進まない。

だから、自分の好きなことをしよう。絶対、そこに道は開けるんだ。
本気で好きな事が見当たらない人は、多少のストレスに耐えながら
適当に仕事をしてお金を稼いで下さい…

--- Professional ---
僕は生まれながらの専門家(Professional)気質だと思ってる。
オールマイティなんて性に合わない。
一つのことにより深く入っていくのが僕の性分なのだ。

まだ僕も仕事を始めてから2年足らず。
徐々に自分の望む場所に近づいていくつもりだ。
その為には乗り越えなきゃいけない壁も山ほどある。
そんな時、現実から逃げ出さずに耐える事も必要だよね…

2003/03/12(水)
景色良好
今通ってる勝どきって場所はなかなか景色が良い。
緑も多いし、青空も綺麗だ。
こんな大きな空が見渡せる場所が東京にもあるとはね。

ただ今午後3時。
暇なので、現場の近所を散策中の僕がお送りしました。
…ってそんなオチかいっ(笑)!

2003/03/13(木)
締切前夜
今作ってるプログラムのデモを今日中に作りあげなくちゃならないらしく、
現場は一番忙しい段階に入っている。
というのに僕は一生懸命、完全に仕事に関係無い
elispプログラムの作成に精を出す(笑)

今回のテーマはデモ版作成。
皆は、僕の作ったユーティリティプログラムを使って
その上位プログラムを組んでる。
で、ユーティリティの方で何か問題が起きたら僕が修正をするって段取りなのだ。

--- アドバイザー ---
つまり僕が直接担当するプログラムは無いってこと。
1時間に1件くらい、しょ?もない質問に答えるだけの仕事は
暇な事この上ないが、幸い今日は他にやることが見つかったので
9時過ぎまで残業してみた。

現場では食事摂らないことにしてるので、さすがに帰る頃にはお腹が空いてきた。
明日は、前々から延期になっていた面接が昼過ぎに入る予定になっている。
相手先のマネージャーがわざわざ勝どきまで来るっていうので
近くのファミレスで面接って形になるらしい。
「作業期間:長期」って前フリが気になるが、まぁ軽い気持ちで受けてみようっと。

2003/03/14(金)
結局これか…
今日あるはずだった面接、相手がいきなりドタキャンするという暴挙に出やがった。
確か初めは月曜にあるとか言ってたんだよな。
当然のことながら、こんなクソみたいな相手はこっちからお断りだ。

来週にはまた別の面接を入れてもらった。
今度はこんなとんでもない相手ではないことを祈るぜ。

--- 当然の結末 ---
昨日までに完成する予定だったデモ版。
当然のように今日になってもまだ完成の目途すら見えていない状況だ。
ほんと頭悪いよなこいつら。なんでギリギリになって慌て出すのか理解不能。

それまでに山ほど時間あったんだから、もう少し事前に手を打つこと位しろよ。
そのせいで俺まで巻き添いを喰らうことに。
明日も出てくれだとさ。

はいはい。最初で最後だし、その願い聞いてやるよ。
ただし時間はPM1?7時しか出れないということは先に伝えておく。
そうじゃないと何時まで経っても帰れなくなる事は
目に見えてるからね、過去の経験から。

--- 明日の目標 ---
そんなわけで、明日は久々の休日出勤。
もう既にやる事は決めてある。昨日からずっと取り組んでいる
elispプログラムの続きをやるのだ。

以前にも手を出していたDBアクセスツールの開発なので
結構しんどいが、やりがいはある。
6時間の内、1時間程度を奴らのサポートに充てれば事は足りるだろうし
思う存分プログラミングするぜいっ!

2003/03/16(日)
ロボット出現?
サーバのログを眺めていると、なんかやたらにスケジュールのページを
調べてる奴がいる。どうも変だと思ったら、どうやらロボットの仕業らしい。
画面内にある全てのリンクを調べただけでは飽き足らず、
その先のリンクまで調べ始めた。

…そして今、奴はついに現在より1年後の「2004/03/31」のページまで到達した。
googleより遥かに極悪だな。こうやってうちの回線を麻痺させる気か。
スケジュールのページは延々と未来のページまで見れるような作りになってるので
このまま放っておいたら一生アタックを受け続けかねない。
仕方無いのでApache側で拒否させるようにした。

…が、それでもまだ止まらない。拒否されてるのにまだ続けるとは
ポンコツロボットもいいとこだ。もはや実名公表の必要有りだな。

http://www.almaden.ibm.com (66.147.154.3)


こいつが正体だ。なるほどIBMか。
10秒に1回のアクセスを延々と続けるその姿勢には脱帽だぜ、全く。
明日の朝までにはアタックが終わってることを祈ろう。

--- M$の翻訳 ---
いつも思うのだが、なぜM$製品の日本語訳は
あんなにも解りにくいものが多いんだろうか。
とにかくあらゆるメッセージが意味不明だけならまだしも
別の意味を連想させるような紛らわしいものばかりだ。

例えば、.NETの開発でプログラムを修正してビルド(make)しようとすると
こんなメッセージが出る。
「このプログラムは古い形式で作成されています」
は?

「ソースが修正されているのでビルドし直します」
ってことを言いたいんだろうに、「古い形式」って何だよ。
ホント、M$の翻訳担当者はもっと日本語の勉強した方がいいぜ。
それとも、これすらお前らの策略か?何企んでるのか知らんが。

--- ちょこっとメモ ---
Emacsのパッケージにrecentf.elというのがある。
これは過去に使ったファイルの一覧を表示してくれるという
まぁ普通のエディタでもよくある機能なのだが
Emacsにはこれが標準で付いていない。

で、仕方無く外部から取ってくる訳だが
いくつかのバージョンがあるらしく、間違って取ってくると
Meadow上で動かないやつだったりする。

http://www.djefer.com/info/emacs/package.htm

そして今日ようやく探し出したのがこれだ。
これならMeadow上でrecentf-modeが使える。
てなわけで。また忘れると困るのでメモっておくことにする。

2003/03/17(月)
嵐の後
昨日がデモ版の締め切りだったらしく、
現場は嵐の後の静けさのごとく人が少ない。
午後になってようやく人が集まりだす…俺も休んでよかったかもなぁ。

--- 暇 ---
究極に暇だ…ネタも尽きた。
幸い、夕方過ぎに無駄会議があったので少しは暇をつぶせて良かったぜ。

2003/03/18(火)
朝一
今日は朝から面接です。
田園都市線に乗って、えらい遠くにある宮崎台という所まで。
通勤方向とは逆ルートらしく、メチャメチャ空いてる車内はかなり快適だった。

内容は学習パッケージの開発。
勤務場所は雪が谷大塚とかいうこれまた全く聞いたことのない駅。
そこで二次面接があるとの事…だったら最初っからそっちでやれよ。
面倒な事させやがって。それで落ちたら無駄になった電車賃はどうしてくれるんだ。
全部自腹切ってるこっちの身にもなってくれ。

--- 午後一 ---
午前中は面接があったので、現場は午後から行くことにする。
午後一で着く予定だったのだが、結構遠くて30分ほどの遅刻。
昼飯おごってもらってたから予定が少しずれたのだ。

早速会議をやってるらしい。ふぅ、あんたらホント好きだねぇ。
せっかち君が作ったどうしようも無い設計書にチャチャ入れながら会議は進行。
結局また練り直してレビューするらしい。

--- 新人さん? ---
その会議に見慣れない人が参加している。
どうやら今日から来た新人さんらしいが、何せ年は結構上のようだ。
おそらく30台後半って感じかなぁ。

そんな人が僕のサポートにまわるって事らしい…ちょっと困ったぞ。
さすがにここまで年離れてる人の上に立つのはやりにくい。
でも、おそらく僕が辞めた後は彼に引き継ぐ事になると思うので
放ったらかしにしておく訳にもいかない。
まずはどのくらいの実力があるのか見極めてからそこら辺を検討、だね。

2003/03/19(水)
システム停止
うむむ…しまった。
昨日のケーブル回線工事でどうやらIPアドレスが変わってしまったようだ。
というわけで、今日は家に帰るPM8時頃までサーバが停止してしまいました。
今後はこういう事の無いようにしなくては…

2003/03/20(木)
毎回恒例?
さて、今日は暇だったのでEclipseのページに追記してみました。
最新のMC2版を落として、新しく追加されたコマンドを中心に。
さらに色々と便利になったようだが、あいにく今はJavaのプロジェクトじゃないので
使い道があまり無いのだ。

--- もうすぐ春だし… ---
去年の暮れ頃から延々と続いてきた僕の冬眠期間(笑)。
そろそろ春になるし、ライブでも行くかぁ!
ってことで、今年第1弾のライブは4/6に決定。

横道坊主とN★M★Aの最強コンビとあっちゃ、もう行くしかない。
ちなみにN★M★Aとは中村敦さんが現在結成しているバンドのことである。

場所は熊谷VOGUE。
…ふと思ったのだが、この日は日曜日。
果たして俺は次の日会社に行けるのか(笑)?

この為に次の仕事の開始を遅らす訳にもいかんし。
っていうか、まだ次の仕事決まってないのでその可能性はあるのだが。

2003/03/21(金)
動く世の中
戦争が始まった。
僕はアメリカの味方でもイラクの味方でも無いが
世界がとんでもない方向へ進まない事を祈る…

--- 当然の結果? ---
松井がヤンキースのレギュラーを勝ち獲った。
ライバル争いをしていたホワイトがトレードに出されたのだ。
多少の不安はしていたけど、振り返ってみれば3割3分を超す打率にホームラン3本。
日本での実力はここアメリカでも見事に通用した訳だ。

--- 3連休 ---
せっかくの休みなので買い物に行く。
どうにも台所が狭いので食器置きが欲しいなぁ、と前々から思ってたのだ。
前回は新宿のハンズに行ったんだけど、えらい混んでたので今日は池袋のハンズへ。
予想通りそんなに混んでなくて良かった。

2段になっている食器置きがあったのでそれを買う。
で、この前のように写真をアップしようと思ったのが…

--- またも不具合 ---
なぜか取り込みがうまくいかない。最近うちのWindowsがまたイカレだした。
最近再インストールしたばっかだっていうのに。

そんなにEドライブにWindowsインストールすることがいけない事か?
確か以前にもそんな経験あるんだよなぁ。
IEでフォームに文字入力するだけで死ぬし…うちのPCは一体どうなってるんだ。
ちょっといじっただけですぐ動作不安定になるとは全く使えないOSだぜ。

早くCanonもLinux用のドライバ出してほしいね。
プリンタではいくつか出てるらしいけど、
デジカメだとまだ個人でパッチ当てたりする必要があるらしいのでパス。
そんな事に時間割きたくないのだ。

--- 地域特有? ---
なんか知らんがここの近所で買ったワインは
必ずといっていいほどコルクが脆い。抜いてる途中で「もげ」ちゃうのだ。
2件ある酒屋、そして今日はスーパーで買ったのもそうだったから
店の問題ではないようだ。この地域特有の現象か?

だから仕方無くコルクは過去に「正常」だったコルクを流用してる。
別にこれ自体は洗えば何回でも使えるものだからね。
なんか貧乏っちいが、他に良い手段が見当たらないもので。

--- 職業病? ---
最近、酒と共に料理にもまた興味が出てきた。
既製品ばっかだと飽きてくるし、かといって
一人でバーやレストラン行くのも嫌いだし。
残る選択肢は「自分で美味いものを作る」って事になる訳だ。
何でも自分で作ろうとするその精神は職業病なのかもしれないなぁ。

今日はカルボナーラを作ってみる。
初めて作ったにしては、意外とマシなものが出来た気がする。
もっと難しいものかと思ってたから。

色んなページにも書いてある通り、これって食材の質がそのまま味に出るね。
今日のはベーコンが安物だったせいかその点が今一だったように思える。
ちょうど買ってきたワインも料理に使えたし。
問題はこの残った生クリームをどうするかだ(笑)

2003/03/22(土)
Xi
こんなものを発見した。
Extend it!の略らしい。ちなみに「ザイ」と読みます。

これは今流行りのWebアプリケーション作成技術で、
より簡単に記述できる事が最大のウリになっている。
「HTML上にロジックを記述しない」という点ではStrutsと似たような部分があるが
StrutsはJSPの拡張であるのに対してXiは完全な独自仕様だ。

--- 気になる事 ---
便利なのは解るが、気になるのはそのスピード。
そこで、簡単なWebページの表示時間を計測してみる。
約200ms…やっぱりちょっと遅いな。
おそらく毎回XML解析をしてるんだろう。

純粋なApacheが4ms、Servletで20ms、eRubyで100ms位だから
ここまで遅いと興味は薄れてくるね。
プログラマの僕からしたらロジックがHTMLの内部にあろうが外部にあろうが
さして気にはならないし。
しばらく僕のページはeRuby + JSP(Servlet)の構成でいくことになりそうだ。

--- Ming ---
Mingとは、フリーのSWF作成ライブラリ。
以前にはこれを使ったアンリミのロゴをトップページに貼ってたので
「あれ?いつの間になくなったんだ?」
というUnlimited Islandマニアの方も多かろう(いるか!)

別にこれを外したのは僕がアンリミのファンを辞めた訳ではなく、
ニューマシンにMingの作成環境が無かったからなのだ。
アンリミのサイトも移転したので、いつまでも
古いアドレスにリンクさせとくのは失礼だからね。

--- Ming/Ruby ---
で、何故ニューマシンでMingを使えないかと言うと
このMingというライブラリ、PHP上からしか使えないからだ。
いや、正確に言えばRubyのインターフェイスも用意されているのだが
かなり過去に作ったものらしく現在のRubyでは動かない。

新しいマシンにはPHPを入れたくなかったので放置してきたのだが、
この度Ming/Rubyというプロジェクトが別サイトで活動してるのを知った。
しかもJaMingという、日本語フォントを使えるMingも開発されてるらしく
無性に使いたくなってしまった。

まずはアンリミのロゴをRubyで作り直してトップに貼り直してみましたが、
「Flashあると重くなるから嫌!」という人はレスに書いてくれれば
別の場所に置こうかと思ってます。

--- 原因判明 ---
デジカメを認識しなかった原因がわかった。
必要なサービスが働いていなかったらしい。
そういやこの前、要らなそうなサービス片っぱしから切ったんだっけ。
「Still Image Service」ってヤツを切ったのがまずかったらしい。

にしても、なんでこのサービスだけ説明欄に記述が無いんだ?
こんなもん必要無いと思うよな、普通。
そして今だにIEの不具合は直らない。
おそらくskkime入れて色々いじってるうちに壊れたんだろう。
しょうがないので今はNetscape入れて対処してる。

これを機にOperaでも使うかな…
ただこれだとクルクルカウンターが見れないのが残念だ(笑)

そんなわけで、これが昨日アップしようと思ってた2段式食器置きです…


2003/03/24(月)
復帰
久々に嬉しいニュース。
バレーボールの大懸郁久美が現役復帰だ。
まずあり得ないと思っていただけに驚いたけど。
一刻も早い全日本への復帰を望んでます…

--- 2週もたず… ---
先週は月曜から会社行ったんだけど、今日は早くも身体がそれを拒否(笑)
まっ、いいさ。行ってもやる事なさそうだし。
今月末にまた提出物があるそうだから、月末はまた忙しくなるのかな。

--- Strutsに苦戦 ---
今後の為にと思って、本格的にStrutsをやり始める。
が、恐しく難解なその作りに唖然とする。
覚えてしまえば簡単なのかもしれないが、とにかく動きが読めなくて苦労する。
公式ページにあるドキュメントも相当解りにくい。
サンプルも複雑すぎるし。

なんかこんな努力してまで覚える必要があるのかって感じすら覚える。
まぁ幸い今日は休みなので時間を気にせず取り組めるが。

--- 数時間経過… ---
ふぅ、ようやく何となくだけど理解できてきた。
とにかく面倒な部分が多いが、Strutsの最大のメリットはその保守性の高さ。
有名なMVC(モデル・ビュー・コントローラ)デザインパターンを再現した作りになっている。

MVCって何だよ、って方も多いと思うので簡単に説明します。
ロジック部分(モデル)と表示部分(ビュー)を分けるのが目的。
コントローラというのは、それらを制御するStrutsライブラリの事。
EJBだとサーブレットコンテナとか呼ばれてるやつ…って余計紛らわしくするな(笑)

--- 役割分担 ---
今までのPerlを使ったようなCGIだと、一つのプログラムの中に
ロジックもHTMLもごちゃ混ぜになった状態だった。
さすがにこりゃまずいという訳で、JSP & Servlet のような技術が誕生した。

これならばロジック部分はServletに、表示部分はJSPに分けて記述できるので
HTMLの知識しか無いデザイナーとプログラムの知識しか無いプログラマが
共同でWebコンテンツを作成することが出来る。

--- 拡張タグライブラリ ---
時間が経つにつれ、これだけではまだ不完全という事が判ってきた。
この方法でも結局JSPの中に少なからずロジックに関する部分が残ってしまう。
とてもとてもMVCモデルを再現してるとは言い難い状況にあったのだ。

しかし、Jakartaは偉大だった…かどうかは知らないが
既にこの状況を打開する為の手段をJSPの規格に盛り込んでいた。
それが「拡張タグライブラリ」だ。
これを使うと、JSPで使用するあらゆるタグを独自に拡張できる。
この拡張タグライブラリの機能をフルに使って作成されたのがStrutsという訳。

--- 数々の機能 ---
Strutsでは、コンフィグファイル内に色々な情報を書き込むことで
JSP内にロジック記述をしなくて済むようにした。
これによってJSP側にはリンク先のURLすら記述する必要が無い。

リンク先で行うロジック に応じた解りやすい簡易名をJSPに記述し、
それをコンフィグファイルで実URLに変換する。
もちろんここら辺の面倒な処理は全てコントローラ(Strutsライブラリ)が行ってくれる。

そしてStrutsがかなり力を入れている部分に国際化処理がある。
コンテンツで使われる全ての文字はメッセージファイルを別に用意する事で
各言語に対応したメッセージを何の苦労も無く表示させることができる。
ただ、その為の準備は当然必要になるから
国際化の必要が無ければ直接JSP内に文字を埋め込むことも可能だ。

--- もう少し… ---
まだStrutsを使い始めたばかりなので、
修得にはもう少し時間が掛かりそう。
いずれJavaのページはStrutsで置き換えようと思ってるんだけどね。

開発をWindows上のEclipseからも行えるという点は便利だけど
なぜかここからだとEUC-JPへのエンコードが失敗する。
原因は不明だけど、それ追及してたらまた明日も会社行けなくなっちゃうので(笑)
この辺でさよ?なら?。

2003/03/25(火)
大忙し?
今日はやる事がいっぱいあるぞ。
もちろん現場の仕事とは全く関係無い事なんだけど(笑)
だって5日ぶりに行ったのに何もやること無いんだもん。

ただいまEclipseのPreferences一覧を作成中。
調べてみると、色々と便利な機能があることに気付く。
次こそはJavaの仕事就いてバンバン使いたいなぁ。

--- 暖 ---
おっ、今日は雨だってのに相当暖かいぞ。
いよいよ本格的に春到来かな?

--- 宅配便 ---
やっと届きました。
別に俺はBerman's Materialとかいうナイスな通販ページを見付けて
山ほど注文してしまうような事はしてないぞ(笑)

思うんだけど、東京出てきてから色々と不便になった事が多い。
酒屋にしてもそう。実家の頃は車でちょっと遠くまで出向いて買うことが出来たけど
電車移動がメインのこっちの生活じゃそんな事も出来ない。
結局はこうやって通販に頼ってしまうんだよね。
だからってバイク買う気もなれないし…意外と都会暮らしは不便なのだ。

2003/03/26(水)
バグ発生?
なんか近くのメンバーが騒いでいる。
どうやらDB処理でバグが出て困っているらしい。
ちょっと聞いてみると、なんとDBのプライマリ・キーに「レコード登録時刻」を使ってるらしい。

おいおい、そんなアホな設計あるか?
プライマリ・キーっていうのは「レコードを一意に定めるためのキー」のことで
通常は連番方式で付けていく。つまり、最初にDBに登録するレコードが1で
次に登録したら2とかいう具合にする。こうすればキーは必ず一意に定まるからね。

--- 完全なる設計ミス ---
作成時刻がキーになってるって事はつまり
同一時刻に複数のレコードを作成できない事になる。
そんな事あり得ないって?とんでもない。コンピュータが扱える時間の単位なんて
タカが知れてるんだぜ。例えば、もしOracleが秒単位の精度しか持ってなかったとしたら
一つのレコードを登録したら次の登録まで1秒も待たなくちゃいけない。
そんな馬鹿な話は無いよね。

一応Oracleはミリ秒単位で時刻を扱えることになっているが、
1レコードを登録するのに1ミリ秒掛からなかったらどうなるか。
そう、連続して登録作業を行ったときにそれらが同一時刻を示すことになる。
そうなると、同一のプライマリ・キーを持ったレコードは登録できないから
一意制約エラーが発生する。

--- 気付いとけよ… ---
1レコードを登録するのに1ミリ秒も掛からない事があり得るなんて
現在のCPUの速度を考えたら解りそうなものじゃないか。
それくらいの事、設計段階で気付いてほしいね。まったく。

--- 信用しちゃダメ ---
このバグに対処する為、そのメンバーはこんな処理を入れようとしていた。
「レコードを挿入したら1ミリ秒以上のウェイトを入れる」
一見、この作業は間違っていない。
だが実際には、このロジックを入れたプログラムは正しく動作しない。

なぜなら、Oracleの「現在時刻取得関数」は
1ミリ秒以上の間隔を開けて呼び出しても同一時刻を返したりする
いい加減なものだからだ。
そう、初めっからOracleが用意した関数なんて信用して使っちゃ駄目だって事だ。
前にも話したけど、Oracleの関数やJDBCには他にもバグが潜んでるのだ。

もっとも、そこまで厳密に時刻取得をしなければならないという
設計そのものが一番駄目なんだが。
現在作成しているのはデモ版という事で、DB設計を変えるような時間的余裕は無いらしい。
という事はつまり、他にも多数こんなアホな設計されたテーブルが山ほど存在するって事だ。

--- 正しい対処法 ---
そこで彼らは次の手を考えた。
「もっと多くのウェイトを入れよう」
ここまで読んだ方なら、これが間違った対処法であることは気付いてると思う。
一体どれくらいのウェイトを入れたらOracleは異なった時刻を返すのか、
なんて事はどのマニュアルを見たって当然載っちゃいない。

「50ミリ秒待てば大丈夫みたいだ」なんて事を言ってる。
正気か、こいつら(笑)。いくらデモ版の為の応急処置とはいえ
そんなファジー(死語)な発想をプログラムの中に持ち込まんでくれ。

こういう時の正しい対処法は、レコード挿入前に一度現在時刻を確認することだ。
そこで前回の時刻と同じなら異なった時刻を返すまでループさせる。
この方法なら「確実」に同一時刻のレコード登録を避けることが出来る。
え?もしOracleが次の時刻取得関数で「過去」の時刻を返したらどうなるって?
そんなときは…Oracle社に抗議の電話でも掛けて下さい(笑)。

--- 面接 ---
仕事帰り、またも面接だ。
もうすぐ4月になるし、そろそろ決めないとまずいよなぁ。
と思っていたら。まぁ何て神様はイジワルなんだろう。
メジャーリーグ開幕が4/1からじゃないか(笑)

一体俺にどうしろと?
………できれば4/7くらい仕事始めたいなぁ(希望的観測含)

2003/03/27(木)
助かります…
いま開発してるのはWindowsのセキュリティ関係ってことで
WindowsAPIをよく使う作りになっている。
ご存じの通り、このWindowsAPIってやつはメチャクチャ酷い作りになっている。
一応.netやM$のWebページにリファレンスはあるんだけど、
あんまり使われないAPIは英語でしか用意されてない上にサンプルも無いので困る。

そんな時に役に立つのが、過去に僕と同じような経験をした人達が残したページ。
Googleで検索するだけでほとんどの情報は探す事ができる。
ホント、時間を惜しんでこういった情報を残してくれた彼らには感謝するぜ。

--- Javaパフォーマンス ---
あんまりにも暇なんで、Javaのパフォーマンスに関する調査なんぞをしてみる。
こういう情報ってほとんど英語のものしか無いんだよね。
ここまでJavaがあらゆる場面で使われるようになった割には
重要なパフォーマンス論について触れられているページは限りなく少ない。

もっとも、Webアプリケーション他多くのシステムでは
パフォーマンス低下の最大の原因は別の部分にあるんだけどね。

--- 最重要課題 ---
それがDB設計だ。
設計者は、構築しようとするシステムに応じて
適切なDBを設計しなければならない。

誰かの言葉を借りれば、最適なDB設計というのは
「アプリケーション稼働時のSQL文発行回数そのものさえ減らす」のだ。

多くの場合、DBというのは実行プログラムとは別のマシンに用意されている。
このときSQL発行はTCP/IPを通して行なう為、それ自体が大幅なタイムロスになるという訳だ。
つまり、SQLの発行回数そのものを減らす事はかなりのパフォーマンスアップに繋がる。
SQL文のチューニングをする前に、きちんとしたDB設計をする事こそが最重要課題なのだ。

--- 話は戻って… ---
まぁそんな訳で、今の時代はプログラムよりDBのチューニングの方が大事なんだけど
だからといってプログラムのチューニングの必要性が薄れた訳では全く無い。
最終的にはプログラムのチューニングをしてこそ
最高のパフォーマンスを得られるという事実に変わりは無い。

昔からプログラムを組んできた僕にとっては、最適化は得意な分野でもある。
Javaから入ってきたような人だと、
そもそもどういう処理にどれくらいの時間が掛かるのかが解らないから
パフォーマンス改善など到底出来ないプログラマも多い。
とんでもなく無駄の多いロジックを平気で組んでたりするからね。

--- 全てが揃った世界 ---
プログラムを組む上で、必ず必要になってくる機能というのがある。
メモリの確保/開放処理、ファイルの入出力処理、等々。
昔はそれらを全部自分で作らなければならなかった。

でも今はそうじゃない。Java言語はメモリ処理を自動で行なってくれる。
Java標準ライブラリでプロパティなんかを使えばファイルの入出力処理も必要無い。
さらにフレームワークを使えば、もはやプログラムを完成させるために必要なことは
ほんの少しのロジックを書くだけになってしまう。

何もかもが用意されている。だから彼らに出来る事は、与えられた資源を使って
プログラムを組み立てる事だけだ。
しばらくすると、今よりもっと色んな機能を備えたフレームワークが登場する。
一生懸命マニュアルを読んでサンプルプログラムを理解して、
必死になってそのフレームワークを使いこなすことが彼らに与えられた使命だ。

--- あくまで道具 ---
そんなんで楽しいか?あと十年もしたら、その程度のことは
人工知能が全てやってくれる世界がくるかもしれない。
そうなったら、彼らは全員お払い箱だね。

いつの時代になったって、プログラムを作るのは人間だ。
コンピュータを使って絵が書けるようになったって、そのグラフィックソフトを使って
最終的に絵を完成させるのは人間の仕事。
コンピュータはあくまで「道具」に過ぎないんだから。

--- いつの日か… ---
僕はプログラマという極めて論理的な考えが重要な職業ではあるけれど
一番大切なものは人間の感性だっていう考えは常に持っている。
だから感動を求めてスポーツを見るし、音楽を聴く。

残念なのは、今の僕が人に感動を与えられるような仕事をしてないって事だ。
でも、いつか何らかの形でそういう事ができたらいいな。
そしたら、僕はどれくらい幸せな気分になれるんだろう?
ちょっと楽しみだな…

2003/03/28(金)
日本vsウルグアイ
昨日はこれを観るために5時過ぎに帰る。

徐々に良くなってきてるとは思うよね。
初戦はホームでジャマイカに1-1。
次はアウェイでアルゼンチンに0-2。
そして昨日はホームで2-2。

昔の日本代表は「決定力不足」って言葉に代表されるように
とにかく点が取れなかった。
最近はちょっと変わってきたね。点を取られても取り返せるようにはなってきた。

でも問題なのは「先に点を取られる」ということ。
それもそのはず、昨日の日本代表はトップ2と中盤4人が全て海外組。
一方ディフェンス4人は全員Jリーグ組だ。
守備の弱さが目立つ試合が多いのも当然の結果といえるかもしれない。

--- 幸か不幸か… ---
次の仕事が決まりました。
しかも4/1から…あ?あ、これで俺のメジャーリーグ開幕試合観戦計画(in自宅)は
見事にダメになった訳だ。

場所は虎ノ門。まぁ今の所よりは近いかな。電車で45分位かかるらしい。
でも乗り換えが一つ増えるから微妙なとこだなぁ…

2003/03/30(日)
久びさのライブ
昨日は実家に帰るついでにライブを観にいくことにした。
中村敦さんが現在組んでいるバンド「N★M★A」と
僕自身初となる横道坊主の対バン。
本当は来週の熊谷に行く予定だったんだけど、日曜の夜に熊谷から帰ってきて
次の日仕事行くのもつらいんで今日にしました。

敦さんのライブはまぁいつも通りというか、
正直最近の彼のライブにはあまり感動できない自分がいたりする。
だんだん方向性が僕の感性からずれていってるのだ。
まぁこればっかりは好みの問題だから仕方の無い事なんだけど。

--- 最大の収穫 ---
で、昨日が僕にとっての初だった横道坊主。
なんかもうすげぇ良かった。
こんなに熱いライブを体験したのは久しぶりな気がする。
しかも、それがワンマンでもない1時間弱のライブで味わえたんだから凄い。

僕はそんなに彼らの歌を知ってる訳じゃなかったので
楽しめるかどうか不安はあったんだけど、ライブが始まったら
そんな不安なんか完全に吹き飛んだ。

--- 選ばれた2曲 ---
そして、僕が知ってる数少ない彼らの曲の中から
2曲を演奏してくれた瞬間はかなり感動した。しかも2曲続けて。
「夏の日の少年」、そして「CRY」。
まるで僕の為に選曲してくれたんじゃないかって錯覚するくらい(笑)良かったね。

でも、この歌を聴いていて気が付いた。
なぜ彼らがこの2曲を歌ったのか。
この2つの歌に共通しているテーマ…そう、それは戦争なんだ。
僕が今日この場所に来たのが偶然の一言で片づけられないような、そんな気がした。

--- 久びさに… ---
そんなわけで、敦さんと横道、2バンド合わせて観たので
約3時間半以上立ちっ放し。
なのに何故俺にはその後地元に帰って、友達の家で
朝までサッカーゲームする元気があるんだろう(笑)。

明日は今の現場最後の日です。
何事も無くすんなり終わることを期待しよう。

2003/03/31(月)
最後の日
さて、今日でこの現場ともお別れです。
最後だから引き継ぎとか色々面倒かと思ってたらそんなの全く無し。
結局今日は何もしなかった。
Javaの研究に没頭してたから暇にはならずに済んだけど。

向こうの人にカードを渡して帰ることにする。
別れ際、「また何か縁がありましたら…」とかいう業界の決まり文句だか
何だか知らないが言ってきたので適当にあしらっておく。
もちろん心の声は、「絶対ねぇよ」だけどさ(笑)。
こんなレベルの低い現場に世話になることなど今後一生無いことは確実だ。

--- 次はどうでしょう… ---
で、明日からは早速新しい現場だ。
やる内容は詳しくはわからんが、とりあえず最初の1ヶ月くらいは
もう大体完成してるプロジェクトのバグ取りになる様子。

それがケリ付いたら、別のプロジェクトを発足するグループを立ち上げるらしい。
とはいっても、これも内容はCからJavaへの移植。
今まで動いてたシステムをJavaに移行するという。よくあるパターンなのかな?

--- 仕様起こし ---
今まであったCのソースを読んで、そこから仕様を起こしていくという手法らしい。
経験の無い分野だけど、それに近いことは毎回のようにやってるから大して不安も無いな。
で、仕様を起こしたらそれをJavaのプログラムとして組み立てていく。
コーディングするのは僕だけじゃないから、ある程度ちゃんとした設計書を作る必要があるとの事。
ホントはそんな事せずにどんどんコーディング進めたいところだけどね。
それやっちゃうと他のメンバーの仕事が無くなっちゃうからそういう訳にもいかない。

一番問題なのは、元々の仕様が腐ってた場合だ。
もしそうだと、いくら原本を忠実にJavaに移植したところで
また不具合が発生するのは目に見えてるからね。
そんなときに、自分で良い方向に仕様を修正していく事が可能なのかがまだはっきりしない。
営業の人の話だと、そこら辺は柔軟に応じてくれる現場との事だけど。

--- 1時間のずれ ---
某公社関係の仕事だということで、朝は9時厳守らしい。
まぁその分終わる時間も今までより1時間早くなる訳だから
どちらが良いとは一概に言えないけど。

いや、明らかに今回のがつらいな。
行きは通勤ラッシュ、帰りは確実は座れない。
帰りに色々なトコ寄れる位の時間があるのが唯一のメリットかな。

2003/04/01(火)
やばっ…
今日は新天地初日。
やばい、非常にやばいぞ。この現場は。
まるで僕が初めて行った現場みたいな超ド級の初心者メンバーだらけ。
ネットには繋っていないし、アホみたいなテスト項目表の数にはウンザリさせられる。

なんかこのままだと確実に嫌になってしまいそうなので
営業の人に「早々に辞めたい」と連絡を入れる。
もちろん契約の事があるから今すぐにという訳にはいかないと思うけど
一刻も早く抜け出したいというのが本音だ。

はぁ、新学期早々ついてないぜ。
これが全部エイプリルフールのいたずらだったら良いんだけど…
現実はそんなにうまくいかないようだ(笑)



Limyweb