雑記帳 2005年 1月第2週

2005/01/02 Sun.

毎年12月31日深夜から1月1日にかけては地元の連中と遊びまわってるんですが、今年はついにそれがなかった。
まぁ20年ぶりだかの大晦日の大雪ってのはシャレにならんが、11年連続11回目の正月夜遊びは断念するハメになりました。
そう考えると、11年ぶりに家で新年を迎えたことになるんだよな。たまにはこういうイレギュラーなことになるのもいいだろう。
2004年1月1日の雑記を読んでもらえれば、普段はどんなことをやってるかってのがわかってもらえると思う。
単純に言うと「新年明けましてウォーキングラリー」って感じです。ひたすら歩き回ってあちこちの神社を巡るだけなのです。
どんなクソな企画でも10年も続けば立派な恒例イベントです。通称「TCP」にも10年くらいは頑張ってもらいたいものだが。

さて、実は年明けからこの二日間、凄まじく怠惰な生活をしています。1日なんて寝たのが朝10時で起きたのが17時だし。
今日も寝たのが朝の9時で起きたのが14時。何とか短い睡眠時間に抑えれば、夜には眠くなってさっさと寝られるという算段。
しかしながら、現在3日の午前3時でありながら眠気がなくて困ってます。明日はK岡と買い物に行く予定なんだけどな。
眠くないから遅くまで起きてて、寝たら寝たで前日の睡眠時間が少ないから爆睡するという罠。どうせいというのだこの状況。
明日は絶対靴を買う!ホントはS保とP.S.F.Aに行く予定だったんだけど、急にS保が来られなくなった。いつも予定ダメダメだな。

2005/01/03 Mon.

「ついに ねんがんの あたらしいタケオキクチのくつを てにいれたぞ!」

   : そう かんけいないね
ニア : ころしてでも うばいとる
   : ゆずってくれ たのむ!!

こんばんわ、ロマサガ風に挨拶です。今日は昼過ぎから新宿のマルイへスパークリングセール目当てで行ってきました。
昨日から始まったばかりという事でかなり人の出が多かったけど、とりあえず気に入った靴を探り当てられて満足です。
15時に集合ってことでK岡と待ち合わせしてたんだが、朝ってか昼に起きたらすでに14時。メシ抜きで急いで家を出ることに。
で、新宿東口の待ち合わせ場所に向かうとサークルで一つ下の代だった連中も来てて、行動を共にすることになってた。
自分が昼食を食ってないことを必死にアピールするも、団体行動という規律に負けてメシ抜きのまま買い物することになった。
向かう先はマルイメン。普段の自分ならシティを先に見るんだけどな。あっちの方が自分にあったものが見つかりやすいし。
セール対象ブランドを見ると、コムサやメルローズなどはどうやら5日からの開催っぽい。コムサはともかくメルローズは痛い。
上から順に見ていって、JUNMENでいい感じのセーターを発見。サイズがMだったため放置して、しばらく他のを見て回る。
5分くらい経ってからやっぱりさっきのセーターが気になって、サイズはとりあえず試着してみればいいかという事で戻ってみる。
……もうねぇし。たった5分でどっかの誰かが持っていきやがった。まぁきっとサイズが合わないってことで手っ取り早く諦める。
今日は靴目当てだったので、タケオキクチのビジネスシューズのコーナーで相当長い間あれこれ見て悩む。どれもいい感じだ。
何とか決断を下して27cmのを購入。14,700円也。この価格帯なら十分に満足できるモノです。今日の目標は達成できた。
他にもあれこれ見て回ったあげく、やっぱりJUNMENのセーターは今日は一着くらいは欲しいと思って売り場へ再び舞い戻る。
最初に目をつけたのとは別物だけど、薄いグレーをベースにした感じの柄のセーターを発見。直感で購入。4,280円也。

みんなが買い物を終えた後に俺が必死に食事に行きたいとアピールすると、N村が高田屋というそば屋を提案。そこに向かう。
かつ丼と蕎麦のセットを食して890円。安い割には味が結構いいと思った。機会があればまた来てみてもいいだろう。
メシを食ってその後はどうするかという話に。帰る連中は放っておいて、カラオケ組とボウリング組に分かれる。後者を選択。
自分とK岡とS藤(呼びなれないから海苔巻でいいや)はコパボウルへ向かい、1時間で2ゲームほどゲームを消化する。
待ち時間の間にタイピングのゲームを中級でやってみるも、偽ブラインドタッチの自分には相当ハードルが高かったと思う。
自分のスコアは143と138で、まぁ無難なスコアといったところ。2ゲーム目は後半がよければ180ペースだったんだけどなぁ。
2ゲームで1,600円かかったけど、何でこんなに高いんだ?新年だとかいって値段が普段と違ったのかな。いつもこうだっけ?
ゲームを終えてまだ20時半。帰るにはまだ早いってことで軽く飲もうって話になるが、海苔巻が帰るとか言ってるし。マジか。
車だからしょうがないってことで放置して、自分とK岡は靖国通り沿いのバー「TOPS HOUSE」だっけ?そこに行ってみる。
ソルティードッグとスクリュードライバーを片手にカマンベールチーズをつまみ、22時ちょい過ぎまであれやこれやと話し込む。
一杯が800円くらいしたけど、来たことのない店で飲むのは新鮮だ。カウンターに座って、こんな感じの隠し撮りをしてみた。

チーズは割り勘で1,900円也。ここはまた来たい候補。あまり新宿ってこういった店を知らんから、色々と見て回るのも面白い。
んで解散して多摩センに到着。のど飴が切れてたので買おうとするも、よさそうなのが無かったため、適当なので妥協する。
久々に面白い一日だった。帰宅して靴の履き心地を確かめる。微妙に横幅が少し狭い感じかな?どうせすぐに慣れるだろう。

2005/01/04 Tue.

今日になってようやく数人から年賀状が届き始める。さすがは俺の周りだけあって、1日に届くように出す人はいないようだ。
n-yutaka」氏からメールで画像の年賀状を一昨年くらいからもらってて、今年はそれを真似てみることに。やべ、手軽だな。
書き直しやらを気にする必要はないし、至極手軽にできてしまう。で、作った画像を1月1日にメール送信するようタスク設定。
……ホントはね、1月1日にね、ちゃんと送れてるはずだったのよ。でもね、何故かタスクが正常に動かなかったワケですよ。
今日届いた年賀状を見て、他に出し忘れてる人いないかなーと思ってメーラー見てみたら、実は送っていなかったという罠。
しょうがないから、今さらながらに送りましたよ、年賀状。頻繁にメールチェックする人ならともかく、ちゃんと気付くんだろうな?
ちくしょーめ、自分のだけは元日に届くという快挙を成し遂げたはずだったのに……。アホすぎて目から汁が出てきそうです。

で、明日からついに仕事が始まってしまう。またクソ寒い上に遠い青梅に行くのかよ。心の底から頼むから立川に帰らせろ。
どうせ職場に着いても、こんな新年早々やる気のある人なんてそんなにいないんだろうな。ダラダラやらせてもらいますよ。
それにしても、近年稀に見る怠惰な正月だった。真性の引きこもりはこんな生活を年がら年中やってるのか。尊敬に値する。
昨日は出かけたって書いたけど、太陽の光を浴びるのが3日ぶりだか4日ぶりだった気がする。うーん、腐りすぎですな。
むしろ小学校時代みたく携帯もメールも無い頃のように、連絡を取るなら外に出ざるを得ないって時代はよかったのかもな。
とまぁ、自分の惰性の責任を文明の利器に押し付けてみる。自分の仕事もこういう事象の一部を担ってるのだろうか……。

2005/01/05 Wed.

12月31日で切れていた定期を買わないといけないため、普段よりも5分ほど早く起床。朝に5分早いと、こうも違うのか。
多摩センから立川北までの1ヶ月定期は15,600円。しかしながら、噂のブラック企業は交通費に所得税がかかる罠。
ってかさ、普通に考えてありえないってのはもうわかった。でもな、税金って言って引いてる分、中間搾取してんじゃねぇか?
そこまで疑われても仕方が無いほどの北朝鮮体質。国に納める税金と偽って搾取とは、さすがウチの社長は将軍様ですね。
小作に着いて職場用のグミが切れていたことに気付き、ファミマで買っていく。最近同じのばっかり買ってて飽きてきたな。
仕事も仕事で相変わらず。検索フォームで入力フィールドにフォーカスがある場合、リターンキーで検索を実行したいらしい。
あのな、Javascriptなんかで書きまくるからメンドいことになってんだ。最初からHTMLで<FORM>使って書けよアホどもが。
いちいち<FORM>を追加するほどメンドいことはないので、onkeydownでevent.keyCodeから判定してsubmitするように修正。
さらに、検索フォームのページを開いてリターン押すだけでデフォルトの設定で検索できるようにして欲しいとか言ってくるし。
いくつか手段を考えたけど、幸いなことに検索ボタンにIDが振ってあったので、<BODY>にonLoad処理を追加して終了です。
検索フォームのページは左右にフレームで分かれていて、左フレームで検索すると右フレームに検索結果が返ってくるんです。
んで、今度は左フレームから検索して右フレームに結果を表示させたら、リターンキー再押下で再検索したいとか言ってるし。
あぁ、もうメンドくせぇ!最初からユーザー側に立ったまともな設計をしていれば、今さらこんな話は出てこないってーの!
そんなこんなで延々とJavascriptばっかりを触りつづけて、気が付けばそろそろ帰宅の時間。一体何なんだ今日の仕事は。

立川のクソ携帯会社のショップでバッテリーを注文する。半日で電池がすっからかんになるような携帯には用は無いのです。
ってか、普通はバッテリーくらい置いてないのか?注文すると5日から7日くらいかかるとか言ってるし。しょうがねぇな。
それじゃどんな機種のバッテリーならあるんだと訊きたかったが止めておいた。どうせ新しい機種のばかりなんだろうが。
あのな、最新機種のバッテリーを欲しがるヤツがどこにいるんだ。古いからバッテリーが老化して新しいのを欲しくなるんだ。
たかが3年位前の携帯のバッテリーくらい置いとけ。あぁ、古き良きJ-PHONE時代の機種には用はありませんかそうですか。
多摩センでいつも通りにカレーを食って、マツキヨでシャンプーと洗顔料と目薬二つを購入。そろそろ無くなる頃だったはず。
うーん、刺激が無い一日。仕事においても刺激は無いが、日常生活まで刺激が無いのは、頭の中身が凡化しそうになるな。

2005/01/06 Thu.

昨日は新しく買った靴を履いていったんだけど、微妙にサイズが違うせいか足が痛くてしょうがない。ちくしょーめ。
もうちょっと横幅に余裕のある靴を買ってた方がよかったかな。慣れるまで我慢しろってことでしょうか。これは残念。
今日は自分が本来担当するべきである現行システムへの追加機能の打ち合わせにいってきました。眠くて覚えてねぇな。
午後からだったんだけど、昼飯を食った後でいい感じで眠くなってる時に意味不明な話をされてもさっぱり理解できませんが。
とりあえずは急ぎの話でもなさそうだし、仕様がまだ固まっていないという事で話半分に聞いてました。半分も聞いてたかな。
JSPの修正も進んでます。DBに投げるMQLにミスがあるっぽいって事で、該当部分のMQLを片っ端から解析してたり。
MQLを直接投げるんじゃなくて、「eMatrix」が使ってる関数にMQLを各個セットするというやり方のため、解析に時間かかった。
共通部はヘタに触ると全部狂いそうなのが怖い。JSPでStringで定義してたのをStringBufferで条件分岐で書き換えさせる。
後は、以前やってたJSPへのグラフ出力。Java単体で生成するのはできるんだけど、JSPに乗せると動かないし。何故だぁ。
import部も何も変更してないのに、JSPだと500エラーになる。コンパイル通ってないし。Servletの理解が足りんのかな。
昨日は23時半に就寝という快挙を成し遂げたにもかかわらず、今日はやたらと眠かったな。しかし帰宅すると目覚める罠。
あー、携帯のバッテリーさっさと手に入らないかな。使ってないのに、出社して帰宅したら電池が残り1本になるって何だ?

2005/01/07 Fri.

ようやくローカルサーバー上でJSPでもグラフ出力が行えた。これで改修もデバッグも楽になる!どっちもしたくないけど。
それにしても「Tomcat」は奥が深すぎる。web.xmlとかserver.xmlとかはいい勉強になった。この辺は後々でも役に立つかな。
ってかさ、このweb.xmlがかなりのクセモノだったね。<servlet><servlet-mapping>の記述順で相当時間食われたっぽい。
使ってる「Tomcat」のバージョンは4.xだけど、<servlet><servlet-mapping>ノードが二つ以上ある場合、記述順がポイント。
普通だったら<servlet></servlet>を一つ書いたら<servlet-mapping></servlet-mapping>を記述するって思わない?
まさかノードの出現順ごとに書くなんて思いもよらん。一応記述順を間違っても動くっぽいけど、警告が出まくるのがウザい。
でも、web.xmlで拡張子が.javaのファイルをJSPっぽく表示させることができるのは面白いな。Servletクラス継承も覚えないと。
今までグラフ出力に使ってた.javaの内容をJSPにするとコンパイルエラーが出るって昨日書いたけど、ようやく原因が判明した。
Tomcat」のクラスローダーに肝心のjarファイルをコピってないじゃん。環境変数でCLASSPATHを通しただけじゃダメなのか。
ようやく今まで躓いていたimport部の問題が解決。さて、ここからバリバリとコーディングです。ここから頭の回転は速かった。
まずは肝心のグラフ出力を行うページに値を渡すフォームのページを作成。Perlで掲示板とか作ってたから、非常に簡単だ。
次に、「JFreeChart」を実装したJSPの作成。しかし、ここで思いもよらぬ問題が。request.getParameter()ってString限定?
CGI風に言うと$ENV{"QUERY_STRING"}ですな。変数への取得をしたいのだけれど、その変数がString型限定。マジか。
グラフに渡す値はパーセンテージなので、もちろん小数点つき正数です。やむを得ず、まずはStringに数値を突っ込む。
さてどうしたものか。もちろんこのままでは内部的に処理が行えない。何とかしてString型をdouble型に変換する必要がある。
ネットであれこれ調べて、BigDecimalというものがあると判明。これを通してStringの数値を何とかdoubleに変換する。
JSP特有の書き方にいくつか悩まされるも、何とか定時を1時間くらい過ぎたところで基本となる雛型が完成。長かったー。
フォームのページから数値を入力してsubmitすると、JSP側でその数値が反映されたグラフの画像が生成されるものです。
あまりややこしいバグ回避はしてないんだけど平気だよね?数値の部分に記号とか入れると落ちますが。まぁ放置だろう。

2005/01/08 Sat.

今日は何もしてない暇な休日だったので、ロクに書くことがないんだけどな。んじゃ昨日の続きの話でもしてみるか。
サーバー側でグラフの画像ファイルを生成してJSP表示する際に、もちろんファイルはサーバー内に生成されることになる。
これを、何とかして生成させずにJSP出力を行えないだろうか。以前はメモリ上に取り込んでとか言ってたけど、ありゃ無理。
そこで思い浮かんだのが、表示させた直後に削除しちまえばいいんじゃん?ってこと。ところが、致命的欠陥があったりする。
例えば、JSPがHTMLを吐き出してそれをブラウザが解釈して画像などがあれば取得しにいくってのが普通のやり取りになる。
ところが、JSP側でHTML出力後にファイル削除をすると、微妙にメンドいことになる。時間差というかレスポンスの問題かな?
JSPがHTMLを吐き出した後に削除だと、ブラウザがHTMLを受け取った受け取らないに関係なく、ファイル削除を行ってしまう。
んで、ブラウザ上では画像は表示できないというワケ。ファイル出力 → HTML出力 → ファイル削除は間違っていないけど。
そりゃそうだよな、ファイル削除されちまった後にその画像を読み込みにいってもどうしようもない。何かいい方法無いかな。
一つだけあるか。今作ってるシステムはユーザーがログインして使用する。よって、ユニークな名前で管理すりゃいいのか。
Aさんがグラフを生成してそのファイルがサーバー上に残ってても、次回のグラフ生成時にファイルの存在判定をすればいい。
前回生成したグラフが残ってれば、それを削除して新規作成を行う。これなら何とかなるか?それでもやっぱり問題は残る。
極端な話、ユーザーの数だけファイルがサーバーに溜められるワケです。バッチか何かで削除させればいいんだろうか?
こういうアイディア勝負みたいなところにも、プログラマとしての素養が試されてる気がします。ホントに適正あんのかな。