雑記帳 2005年 5月第3週

2005/05/15 Sun.

就職活動相談室の次はIT業界フレッシュマン相談室になるんでしょうか。むしろ誰か俺の転職の相談に乗って下さい。
さて、昨日書いた彼の件だけど、寝て起きたらメールが届いてました。起きたのは13時くらいで、彼のメールは9時頃。
……えっと、決定的に二人の休日における生活時間帯が違うことを証明していませんか?午前中に起きるのは至難の業。
ってか、SEやPGならまだしも、営業活動の話となると俺に聞かれても激しく困る予感。とりあえず簡単にまとめてみようか。

もともとIT業界での営業をしたくて入社した彼は、社長の辞令によってSEを目指すべく他のソフト会社に出向することに。
これは大きなチャンスなのかもしれないと思いつつも、果たしてこれに従うことが正しい道なのかの見切りが付かない。
とりあえず、ここはゼミの知り合いの先輩でプログラマの人がいるから、少しばかりでいいから話を聞いてもらおうかなー。

多分、意味合い的にはこんな感じ。えっと、早速突っ込んでいいですか?SEになるために他のソフト会社に出向ですか?
もちろんPGやSEに限らず、営業だろうと何だろうと現場の知識というものは必要だと思う。でもな、一つだけいいか?
俺は営業という活動をするにあたってどういった道筋を経てそういう職種に就くかは全く知りません。これが大前提です。
んで、次にいきますか。出向の辞令に従うことが正しい道かわからない?目の前にそんなにたくさん道があるんですか?
そもそも彼が入社するまでにこの業界をどこまで学べたのかが疑問だ。自分が取捨選択できる選択肢は少ない業界です。
しかもまだ一年目、さらに研修期間も終わったかどうかも怪しい時期だ。そんな新人が、何を基準に取捨選択できる?
俺だって西新宿に行けと言われりゃ行くし、有楽町に行けと言われれば行くし、品川だろうと青梅だろうと行きますよ。
まず第一に知っておいて欲しいのは、業務知識が皆無に等しい新人を業務に起用するのはなかなか難しいということ。
本来ならば研修を受けさせられていてもおかしくないこの時期に、自分を抜擢してもらえただけでもいいと思わないのか?
自分の例を挙げてみる。入社後の4月から西新宿に駆り出されていたが、もちろんいきなりコーディングなんてしません。
最初はほとんどがテスト要員。試験項目表に従って延々とテストを続けるだけの要員です。これが大体3ヶ月程度だった。
ただ、自分の周りはほとんど支社内で研修を受けさせられている連中ばかり。少なくとも現場に出た自分は優位にある。
そんなテスト要員としてしか意味の無い自分も、もちろんそのまま延々とテストだけをやるつもりなんか全くありません。
VSSにソースが上がってれば差分を見てバグの推測をしたり、故障表が出れば自分が直さなくとも原因を追究してみます。
飲みに行けば同期と同席せずに先輩が話す仕事の愚痴やら相談やらを、何も知らない振りをして盗み聞かせてもらいます。
何でもかんでもゼロから手取り足取り教えてもらえるはずがない。今いる環境で何ができるかを考える必要があるのです。
どの類の業務知識系の本にも載ってると思うけど、一番困るタイプとして挙がるのは「自分は特別だ」と思っている輩。
俺のやりたい事はこうだと内心で思いつつも、現状の業務には自分が何でこんな事をしなきゃならんのだと思うタイプ。
別にここまではいい。最も困るのが、以下のパターンだと思われる。身近にも絶対いると思うぞ、こういった類の連中は。

「俺のやりたい事はこんなことじゃない。今の業務は目指す道とは違っている。日々の仕事が不満でたまらない」

「お前はその目指す道のために何をしてきて何ができるのか。不満なのは能力不足によるストレスではないか。
そもそも与えられた業務をロクにこなす事もせずに、果たして自分の希望が上に通るとでも思っているのか?」

「……(てめーに何がわかるってんだ。こんな業務じゃ俺の能力なんか発揮できるワケがないだろうが)」

約束します。絶っっ対にこういうヤツはいる。最低限の課題(この場合は現状の業務)をこなさずに希望だけ通したがるヤツ。
この例を先述の彼の話に置き換えてみよう。彼は以前(ってか去年の4月11日)にあって話をした時に、こう言っていた。

「何か大きなモノを作る一端を担ってみたい」

よく覚えてます。何故覚えてるかも覚えてます。話や目的が抽象的過ぎて、現状との間にある手段が不透明すぎるからです。
彼が以前のこの考えを基にして日々の業務をしているのだとすれば、それは企業側からすればある意味では不要な人材だ。
約1年前、彼は業界研究においてすら不完全だった。そして1年経った今も、相変わらず現状に活路を見出せないでいる。
かなり辛辣な表現となったけど、現状の認識が甘いままでは上へ昇ることは無理だと思う。その辺を教える必要があるな。

……それにしてもわかんねぇな。何だよ「正しい道」って。そもそも最終目標は果たして彼の眼に映っているのだろうか?

2005/05/16 Mon.

              _          _
        _,. -‐-`' ``'‐、,.‐'"´,. =ニ`
        ,.‐'"´           __`ヽ
       /               ``''‐、
.      /                 `''‐、
       i            , /i  、     ヽ‐-ヽ
.      !       /| /| / ! .!ヽ..ト、  、.ヽ
     |       /''l/、l/_, l/ _,.ゝ' ゝ、 iヽ!   ちょっと待て・・・・!
      |      ノ`''‐ 、._/   /_, ‐'´ !.\!
     !  ,.-、 r' =。=== _  ,=。===,!     その追加機能って・・・・
     /   { ‐、!|  ` ー-‐' ''  \--‐' !
.    /    !( r||.        r __  \'/|     随分前からある
   /.  ,、 ゙ー'|!、  ,..-‐───; 7゙│      既存画面の機能改変か・・・・・・?
  /_,./ l    │\ `ー-----‐'´/!\i
  ̄ .!  1    l  ヽ、   ー一 ./ |  |`'‐、   いらないっ・・・・・・・・!
    |    i、   l.    ヽ、    / |  .|   `'‐、
.   |    ヽ  i       ヽ、.イ │  |      似たような機能は
.    |    |ヽ  !.       | !  !   .|          作り飽きた・・・!
   |      |. ヽ. i、        | W1  │
    |  ,. ‐'´\|ヽi.ヽ、    ノ|/`‐、  !
    !.‐'´      |     `'ー-‐' .|     \!

何つーか、とりあえずメニュー数を増やせばいいと思ってませんか?こんな誰も使わないっぽい機能作ってどうすんの。
とりあえず先週から取り掛かった機能がほぼ終了、テストもある程度済んだのですが、もちろん次の仕事があるワケで。
今度はDBの更新をMQLで行なうんですか。ってか、こんな妙な言語を使わせるならAPI仕様書の一つでも用意してくれよ。
JSPの作成枚数が今回は少なくて済みそうだ。4枚でいいのかな。一応最低限の設計だけはささっと済ませてしまう。
月曜日からそんなに飛ばして仕事をすると木曜日くらいにくたばりそうなので、今日はかなり早めに切り上げる事にする。
昨日あまり寝てないってのもあるけど。いかんな、最近睡眠時間が短くなりすぎてる気がする。頭の回転率が低下しそう。

先週くらいから唇の端が切れてて痛い。しかも、食うたびに口を開けるからその度に切れて、延々と治らない状態が。
おそらくはビタミン不足だろうと思うけど、毎日錠剤飲んで補給してるんだけどな。やっぱ薬のビタミンじゃダメですか?
舌を噛んだ時にも治りが遅いする気がするし。ってか、基本的な体機能が落ちてきてやいませんかねぇ?危なさそうだ。
食生活を改善するのは至難の業だろうし、まずは睡眠時間を長めにとって常に体力を保持しておくようにしないとな。

2005/05/17 Tue.

            _____
      r'ff77"/////〃〃∠=:、      フ ア ツ ク
.     レ'''‐-!!!-‐::''"::::゙::ヾ:三三l       lニ    l
.    l::::::::::::::::::::::::::::::::::::::::l:三三!    ! U C K
    |;:、:ニニニニニ:::::_;;::、:::::::l三三l          ユ ー
.    l´\゙ll::!:::lLニ-‐'' ̄::::::|三三ト、       ヽ/
    }==。ァ ::,, ==。== ::::::r;=、ミ|. \      l  O U
.    l.`ニ! ::::: `ニ二´  :::::rニ||:ミ!  ヽ、._
 _,... -‐1 ! :::::_┐ヽ._    ::::::-リ ミ|   l
     l/゙= ---─っヽ  ::::下ミ:ミミ|   | ぶっ潰すぞ………
      l ` ̄ ̄´  | .::::::|:: ヾ:ミ|   |
       ト、 ゙゙゙゙ ........_;;:::-‐':::   >|   |  バグめら……!
   , --、 |  ` Tヾ ̄::::::::   / |.    |
  l;';';';';';}|.    | \    ./   |     |
.  〉-y'´|   _|   \ /    |_    :|
  /7./ .>'' ´ |   / \     | `''‐<

一体何なんだこのFrameWorkは?使いにくい上にAPI仕様書も無く、こんなんまともに使えてたまるかってーの!
そもそも、MapListに入れれば項目別にソートが可能という便利な機能なのに、実装するまでの道のりが長すぎる。
ってか、トークンと改行で区切ってStringTokenizerを使った後に手動で並び替える方が処理として楽っぽいな。
と、ソートに関する機能で不満があるワケです。表の項目をクリックすると、項目を昇順や降順でソートしてくれるもの。
そもそもMapListを使うとなると、データの扱いがメンドくさくなるな。"|"と改行区切りのStringTokenizer大好きかも。
ってかさ、項目をクリックするとソートしてくれるのはいい。でも、その度にJSPをいちいちリロードするのは無意味じゃね?
むしろJavascriptで配列か何かに入れておき、DHTMLで再描写した方が遥かに速くなると思うんだが。間違ってないよな?
他にも有効そうな手段があるにもかかわらず、今までのやり方があれこれだから今後もそれに合わせてって、アホかと。
確かに枯れた手段の方が安定性はあるかもしれないけど、とりあえず動けばクライアントなんて誤魔化せるんだから。
ちなみに、この業界で「枯れている」とは「長い間多数の人が使いこんでいて安定している状態」を指していたりします。
いくら枯れているとはいえ、実装までに時間食ったらデバッグの時間が減るだろうし、どっちでも変わらないのかな。

さて、今日は正体不明のNullPointerExceptionで悩まされた。結局解決していないけど、解決方法も不明ときたもんだ。
ってかね、何も間違ってないように見えるんだけど。どっかで根本的なミスでもやらかしてんのかな。激しく困りました。

<!%
    class DB {
        (略)
    }
%>
<%
    DB db = new DB();
    MapList mapResult = db.getResult(引数略);
    db.sortResult(mapResult, "ascend", "name");
    (以下略)

かなり激しく簡略化するけど、こんな感じのソースがあるとする。インスタンス作ってメソッド呼んでMapListを取得する。
その後にクラス内のメソッドを実行して、ソート順とソートキーを指定してMapListを渡してソートを実行するだけのもの。
で、クラス内のメソッドを呼ぶ部分でNullPointerExceptionで落ちているというワケ。何でこんな現象が起こるかわからん。
インスタンスもMapListnull判定してみたんですが、どちらもnullではありません。でもNullPointerExceptionで落ちます。
……明日は一日中この辺のバグと戦うハメになりそうだな。解決方法がわかれば早いのだが、調査手段すらも思いつかん。

2005/05/18 Wed.

   , '          ,ヘ. ト、 、.._  / r‐、ヽ.
  / ./     ,イ/ /`メ.`ヽv::\ \\r 、ヽ       下らねぇ……!
. / //     / !' v/ / ,    :::\ \ 、リ l         不具合は下らねえっ……!
,'/ / .,イ ,  / l _,/ /!./ /     ::::\.ヽ._ノ         動けばいいんだよ……!
.  ! / l ,イ ./、.U \/ l∠.=;-‐   v u:::::\'、           動けば……!
  |/ |/ W  `''‐、,, '~U~ ~′    :::::::|ヽ.   ト.   ともかく動けば……
           /      u ノ> uj ::::| ヽ   | i      デバッグが可能になり……
.           / v ‐, j /'´    :::|;   !.   |. !      進捗が進むんだ……!
            /   イ   / v   u:::|;;   !   | !    いつまで不具合調査してんだ
.        / , ‐'´ノ _,/ u      :::|;;  |.  |. !     オレはっ……!
          ー''´    ̄  \_/`! u  v::|;;;  |  |  |

よくわからん不具合に妨害されながらも、何とか必死で進捗を進めて、それなりに仕事していると思われる自分がいる。
昨日書いたNullPointerExceptionのバグ原因は、どうやらそのJSP内でincludeしている別のJSPの使い方に問題があった。
もっと簡単に言うと<jsp:useBeans>ってヤツです。Beanなんて滅多に使わんから、この辺のことを失念していたよ。
Sessionを使ったりと色々ややこしい場面もあったけど、何とかFrameWorkによるソート可能な表の出力に成功したっぽい。
とりあえず、現在の開発に置いての進捗は6割を突破したと言ったところか。今週中に終わらせられればいいんだけど。
で、この時点でとにかく検索結果の表示が終わった。今度はこれの値を色々と変更した結果のDBへの登録作業に入る。
SQLならば話が早いんだけど、残念ながらMQLを使用。マニュアルがあることはあるんだが、読みにくいしワケわからん。
しかもそのマニュアルが「ユーザーコース」「プログラム開発者コース」「ビジネス管理者コース」とかの種類がある。
どう考えても「開発者コース」が最も詳細を載せているはずだが、必要な情報があちこちに分散してて本当に読みにくい。

今日は週の真ん中の水曜日。水曜日は比較的早めに帰ると決めている日でして、19時には職場を出ちゃうのが習慣。

2005/05/19 Thu.

                , -─- .、
        _,/ ,;;    '' \    コピペだっ・・・!
        \ \ ,;      ,, ヽ
        ,イ,.へ、 ヽ、         |  長い間・・・
      ,ノ//-、// ヽ、 ヽ、    ;!  オレはこのコピペ
      ノ i/、.7/ r‐ 、| |ヽ、 @ 、./    ってヤツが苦手だった
.   /   lし'/. ヽ。 ル' ∠=、ゝ、!   なんか…
 /   ,.H'´ ~ r   く・-イ┘ `   明らかに開発を手抜きしているような
 ‐r‐''"´ :|.! u r= 、 `   〈 r'´       気がして・・・・・・
. │    |! ,. `ヾミ: 、 Yゝ
  ト、   ::\  ' ,   `''<._      しかし・・・・・・ もうそんな・・・
.   ヽ\ :::::::\  '  ,  /      ひっかかり… こだわりからも
    \ヽ、 ::/,> 、 /\       飛び立たなきゃいけない・・・
l|  .;:  \'V/  |l`´ \ \
.!|     //!;リ|`\ ||  ;:   \冫、    いけないんだ・・・!

やっぱりさ、似ているからってJSPのソースを丸ごとコピったりして使っている箇所とかって存在するんですよ。
でもね、includeで要らないJSPとかを読み込まれてもどうしようもないワケですよ。おかげでクラス名が被ることも。
しかも、共通Javascriptのソースを読み込んだりしても、そのページでは一切Javascriptは使わないこともあるし。
そんなワケで、自分は開発を行なう際にはあまり大量のコピペというものをしたくないのです。ソースは美しくあるべき。
しかし、もちろん納期とかは存在するワケで、とりあえず最低限動く状態にして完成させておかないとマズいのです。
適度にコピペってのはなかなか難しいと思うんだよね。まぁ、そこは臨機応変(言い換えれば行き当たりばったり)です。

翌日が平日である日で睡眠時間が5時間以上という日が一日も無い。今週の睡眠不足はかなり深刻なものがありそう。
朝起きるのが凄まじくキツいけど、一回仕事の調子が乗ると眠気は全く無くなる。自分に都合がいいと眠くならないようだ。
今週末はすんげー寝てしまいそうだな。サークルの後輩のゼミの同期君よ、多分今週は無理っす。先に謝っておきます。

2005/05/20 Fri.

やっと買いました、村上春樹の「海辺のカフカ」の上下巻。カフカを変換すると第一候補が過負荷になるのは(以下略
帰りに多摩センの本屋によって、何か面白そうなのが無いかと物色してたんだけど、先に買うべきものがあったね。
文庫二冊で1,520円と多少値が張ってしまうが、買える時に買わないと延々と買うのが先延ばしになりそうだったし。
で、夕食がまだだったので本を読むついでということでサイゼに行って、延々と時間を潰すことにする。サイゼが久々だ。
頭が痛いし今週は睡眠不足だったので読むスピードも落としてたけど、大体140ページくらいまで読んだところで帰る。
途中までの感想。挿入されるインタビュー記事に宮部みゆき先生が微妙に感じられる。絶対意識してないだろうけど。
冒頭の記述にも不思議と羊男が思い出されるし、やっぱり最近の作品になると色々な作品のテイストが感じられる気も。
とりあえず、かなり期待の持てる作品っぽいです。通勤の合間の楽しみとするために、休日には読まないようにしよう。

で、サイゼから帰る時には凄まじいまでの体調不良。タクシー使おうかと思ったけど、明日から休みだし我慢して歩く。
何つーか、意識レベルが低下してるというか。別に眠いとかじゃないんだけど、頭の芯が痺れる感じがして何かおかしい。
家に着いた時点で23時ちょいだったんだけど、日が変わるか変わらないかのところでさっさと寝る。今週はキツかった。

2005/05/21 Sat.

土曜ということもあって、昼過ぎまでは延々と寝ていようと思って昨夜はベッドに入ったのだが、朝9時に目を覚ます。
こういう時に限って二度寝ができない。一応9時間くらい寝てしまっているため、眠気も一通り無くなってしまっているし。
諦めてベッドから出るも、こんな時間に起きたところで何もすることは無いし、何処かへ出かけるつもりもないし。

そういえば、ついに我が家にも液晶ディスプレイが導入されました。LCDですよLCD!しかも18インチ!超画面広い!
ぱっと見た感じではドット欠けも無く、反応速度やカンデラ値も文句無い。ってか、かなり良いんじゃないかこれは?
ここまで書いて、ふと思う。はぁ、これが自分の部屋に置く事になるLCDであったらどんなに良い話であろうかと。
いやね、今までウチの今で使っていたノートPCがあまりにダメになってきたので、デスクトップを一台追加なのです。
何故かメーカーが「SOTEC」だったりするのが不安だけど。親父よ、一体何を基準として決めているんだ。やはり値段か?
マシンの性能自体は悪くないし、TVチューナーなどもついていて便利そう(俺もチューナーボードあるけど付けてない)。
ってなワケで、新マシンの設定とか配線とかをあれこれやって一日が終わります。ってか、無線LANでも導入したいな。
一階にあるモデムから二階の俺の部屋まで電波が届くかどうかはかなり怪しいところではあるけど。調査してからだな。