或曰

木曜日, 1月 31, 2008

抜糸

鎖骨骨折の経過観察のため通院。

上半身のレントゲン撮影。手術で入れたワイヤーがズレたりすることもなく、経過は良好とのこと。今は鎖骨に負担を掛けないよう三角巾で左腕を吊っているが、これもあと一週間ほどでやめて良いそうで。よし、これでようやく一人で着替えられるようになるな。

抜糸。小型の鋏のような形をした専用工具で、傷口を固定するのに使っていたホッチキスの針状のものを抜いていく。多少チクっと感じる程度で、それほど痛みは感じず。楽なものだ。傷口の一部が完全に癒合しておらず抜糸の際に軽度の出血があったため、処置後、患部にまた透明なシール状のものを貼り付けて固定。

ラベル:

土曜日, 1月 26, 2008

無線LAN 実家導入

昨日 amazon で注文していた無線LANルータ Buffalo WHR-HP-G が到着したのでさくさくと設定。

機種選定の基準は「一軒家で電波が十分飛ぶこと」だけなので、特に WHR-HP-G を選んだ積極的な理由はない。設定内容は
  • 無線LANの暗号化を WPA2-PSK (AES) に
  • MACアドレスフィルタを有効にして、自分のノートPCだけ登録
  • NetBIOS over TCP/IP 無効
  • デフォルトで PPTP が通らなかったので、通すように設定
    何をフィルタリングしてるのか知らないが GRE か?
  • プロバイダにつながるように設定 (PPPoE関連)
  • NTPサーバ参照してルータの時刻自動設定するように
ぐらいだったかな。悩むことは何もなかったが、ちょっと設定変更するとすぐに再起動要求されるのが面倒だった。

ノートPCをもって実家内をうろうろしてみた感じだと、端から端まで問題なく使えそうだ。良し良し。

日常あるいは平穏な日々

水曜日

退院の翌日から出社。自宅 6:40 に出て、会社着くのが 9:00 過ぎ。いや、遠いね。実家が栃木県、会社最寄り駅が渋谷なので、ダイヤと相談して
  • 往路:東武日光線+湘南新宿ライン(グリーン車)
  • 復路:銀座線+東武特急スペーシア
というルートにする。JR・東武直通の特急スペーシアを使えると早いのだけど、良い時間帯に走ってないんだよなぁ。

朝から雪が舞ってる。その影響で電車が遅れる。左腕を三角巾で吊っている都合でコートの前が閉められないため、一段と寒い。

入院に伴って遅らせていた仕事関係のミーティングを再設定して、クラス設計して、人が書いたコードのレビューして等々。

実家まで帰宅すると、同僚と浅草までルートが同じになるので一緒に帰宅。「一緒に帰るのは良いけど、多分寝てるよ」「大丈夫、どうせ俺も寝てるから」。そして席を並べて二人して寝てた。

木曜日

高崎線の線路で二輪車が立ち往生したため、電車が遅れる。なんか連日だな。

同僚が豚にあたって体調を崩す。生焼けの豚は危険だ。

久しぶりに社長に会う。相手は一ヶ月弱の休暇を取って海外旅行に行っていて、ちょうど帰国の頃に私が自宅静養・入院したものだから、顔見るのはお互い久しぶり。今後の事業の話とかちょろっと話す。

水曜日に引き続いてスケジュール調整などしつつお仕事。よし、これで来週・再来週ぐらいは仕事のスケジュール固まったから、来週は仕事以外で後回しにさせてもらっていた用件もスケジューリングできるかな。

親に手伝ってもらいシャワーを浴びる。頭洗うのを含めても、慣れれば15分ぐらいで済みそうだ。

金曜日

自宅作業。さすがに連日片道2時間半の移動は体力的に厳しい。来週も半分ぐらいは自宅作業にできるように調整する方向で。月・火・水と会社orお客様先でのミーティングに出て、木・金が自宅かな。

開発関係は subversion, メールと GoogleTalk あれば、まぁどうにかなる。調査関係もネットで大半事足りるし。

実家を無線LAN化しようということで、無線LANルータをamazonで発注。明日には届くはず。

土曜日

疲労のため寝て過ごす。朝7:00頃に目が覚めたが、朝食とって09:00-12:30まで昼寝。昼食後も 14:00-16:00ぐらいまで午睡。まだ眠いけど、これ以上は夜寝られなくなりそうなので諦めて起きて、親に手伝ってもらいシャワーを浴びる。手際向上。サッパリ。

ラベル:

火曜日, 1月 22, 2008

仕事の準備

メール処理をいろいろと。

心配してたが、読まないといけないメールは数十通程度しかなかった。あとはテンポラリな連絡とかなので、タイトル見て既読に。

左手吊った状態でどのぐらい文章書けるかのテストも兼ねてblogとか長文のメールとかいくつか書いてみたけど、どうしても姿勢が多少不自然になるので疲れるなぁ。仕事のスタイルと、あと活動拠点と通勤どうするか考えないと。

退院

予定通り7泊8日コースで帰宅。手術後、発熱があり、あまり持っていたものが読めなかったのが残念だった。

  • 1/15
    入院当日。10:00頃に入院課受付に行き手続き、10:30頃病棟に移動。看護師さんに入院する部屋があるフロアを一通り案内してもらい、その後で部屋に。パジャマに着替えて荷物展開。昼食・夕食と普通に済ませ、その後カンファレンス室にて医師より明日の手術内容についての説明、ならびに必要書類の受け渡し。21:00の消灯以降は禁飲食。
  • 1/16 (手術当日)
    手術時間は PM on call (午後、ただし時間は未定で医師からの呼び出しがあり次第)。午前中から生理食塩水に近い成分の点滴を2本入れる。早ければ13:00から手術と言われていたが、結局手術室に移動開始するのが17:20頃。待っている間に小説「沈黙のフライバイ」野尻抱介・著読了。
    手術衣・T字帯に着替え、点滴を入れたまま車椅子で手術室へ。手術室入り口で車椅子から車輪つきベッドに乗り換え、手術台へ。あとはマスクをつけて麻酔ガスを吸い、全身麻酔がかかったので記憶なし。気づいたら病室。意識が朦朧としたまま母親と言葉を交わし、あとは寝たり醒めたり。術部が熱を持って痛むのと、点滴・尿道カテーテルが挿された状態で身動きがまったくとれず。寝られないほど痛いということはなかったが、この夜が一番辛かった(鎖骨折った状態より辛かった)。
    手術は鎖骨をプレートでネジ止めするのではなく、焼き鳥の串みたいなものを鎖骨に沿って二本入れて、それをワイヤで巻きつける方式だそうで。手術後に母親が医師から説明を受けたのを又聞き。
  • 1/17 (手術1日後)
    終日37度後半から38度ぐらいの微熱状態。朝一で看護師さんが見えて「食事は大丈夫?」と質問され、熱っぽかったがお腹は空いていたので「食べます」と即答。尿道カテーテルを抜いてもらい、食事・排泄など自力でできる状態に復帰。尿道カテーテルを入れていた影響か、この日は一日小便をすると少し痛んだ。
    夕方に先生が見え、縫合箇所の診察と消毒。
  • 1/18(手術2日後)
    終日37度中盤の微熱状態。手術部の痛みは軽くなり、代わりに皮膚が突っ張るような感触が支配的になる。ほぼ寝て過ごす。
    夕方に先生が見え、縫合箇所の診察。多少出血があるが、手術2日後ということを考えると、特に問題ないだろうとの由。また手術後定期的に行っていた抗菌剤の点滴が終了し、点滴用に右手に入れていたチューブが外れる。
  • 1/19(手術3日後)
    終日37度中盤の微熱状態。手術部の痛みがほぼ無くなったので、看護師に相談して、この日から処方されていた痛み止め(ロルカム)を飲まないように。夕方医師が見え、傷口の診察。
    昼間寝すぎて夜目が冴えるという誤算。
  • 1/20(手術4日後)
    前日と変わりなし。そろそろ入院生活に飽きてきて時間をもてあますが、微熱があり英語の技術論文を読んでもあまり頭に入ってこない状態。
    手術後一度も頭髪を洗っておらず痒くなってきたので、看護師さんにシャワーに入れてもらう。女性の方だったけど、服を脱がせるところから洗って水分をふき取るところまで、さすがに手際良いね。
  • 1/21(手術5日後)
    熱は、平熱から37度ぐらいで、多少頭の働きが落ちている程度。Google File System の論文を読む。まだいつものペースでは読めず、1章読んで横になってという感じ。
    夕方に主治医と外来で診察していただいた医師が見え、傷口の経過診察。

    医師「どう? そろそろ入院も飽きてきたでしょ?」
    私 「そうですね。そろそろ退院したいです」
    医師「いつにする?」
    私 「じゃ、明日で」
    医師「うん、手続きしとくから。まだ抜糸できないから、後で外来で来てね」

    概略こんな感じののやりとりで、退院の許可が出る。親に連絡して翌日9時ごろ病室に来てもらうことに。
  • 1/22(手術6日後)
    いつもどおり病院食の朝食を済ませ、あとは荷物をまとめて退院。保険点数35,029点、自己負担30%で請求金額110,820円也。支払いはクレジットカードで。内訳を見て意外だったのは、手術より麻酔の方が費用かかってる点。へぇ、そうなんだ。
今後2,3週間は、鎖骨に負担をかけないよう左腕を三角巾で吊っておくようにとのこと。着替えと入浴は人の手助けが必要だな。いちど吊ってしまえば、あとはほとんど日常生活は不便な程度で致命的な支障ない。

三角巾は、見た目で「怪我人」とアピールできるのが良いね。電車とかで人にぶつかられるとヤだから。さて、休み中のメールとか RSS feed とか消化するかね。

ラベル:

火曜日, 1月 15, 2008

入院

ちょっと鎖骨プレート埋めに行ってきます。経過が順調ならば七泊八日前後の予定。

残念ながら病室内は IP パケットが通らぬ未開の地らしいので、お供は紙媒体です。野尻抱介と AST, あとは Google Research から持ってきた paper 2部。

ラベル:

お仕事

明日というか今日から入院なので、そのまえにケリをつけるべく。

今書いてるプログラムは大して難しいところはなく、ふつーに Windows アプリケーションから SQL Server にアクセスするクライアント。ただデータベースがらみになると、RDBMS側のデータ構造をどう OOPL にマッピングするかを考える必要があり、その辺の基礎設計。

今回はちっちゃいプログラムで、かつ、それほどスキルが高くない人間がコード書けるようにしておく必要がある。前に Web のプログラム書いたときには
  • RDBMSからスキーマをXMLファイルに書き出し
  • C#のプログラムでXMLファイルを実行時に読み込み、データ構造を動的に作成
という処理にしてたけど、今回はもう少しライトウェイトにする方向で。

RDBMS側のテーブル一つに対応してクラス用意することにして、そこにフィールドに対応するメンバ変数を定義しておく。メンバ変数の名前は RDBMS のフィールド名と合わせることにして、フィールドに対応するメンバ変数のインスタンス作成・初期化・コピーなどは、実行時にリフレクションを使って動的に処理。
foreach (FieldInfo fi in GetType().GetFields(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.GetField))
{
  Regex r = new Regex(@"^fld(\w+)");
  Match m = r.Match(fi.Name);
  if (!m.Success) continue;
  // new
  object o = fi.fieldtype.invokemember(
    null,
    BindingFlags.CreateInstance,
    null,
    null,
    new object[] { m.Groups[1].Value }
  );
  // this.fldXXX = o;
  GetType().InvokeMember(
    fi.Name,
    BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetField,
    null,
    this,
    new object[] { o }
  );
  // this.fields.Add(o);
  fields.Add(o);
}

初期化はこんな感じで、他に deep copy とか用意。アクセス権の都合などを考えてこいつは基底クラスにして、サンプルとして1つのテーブルに対応する派生クラスを作りテスト。他は真似して書いてねって感じで引き継ぎ。

最近仕事だと、プログラム書くというより、プログラムを書くためのプログラムしか書いてない気がするな。もっとも、このレベルのプログラムだと UI もロジックも大して頭使わないから、多少なりとも面白いのはメタな部分と設計ぐらいだけど。

金曜日, 1月 11, 2008

お仕事 & 転倒 (4)

この数日はミーティングは全てリスケしたので、コード書きとメール対応を粛々と。先日まで多少熱があったが、それも下がりマトモな速度で頭が働くように。発熱していても特に辛くなかったが、進捗を見るとやはり判断能力は低下してた模様。仕方ないね。

骨折は相変わらずバンドで止めてるだけだけだが、さほど痛みはなし。たまに、軽くズキッとすることがある程度。むしろバンドのせいで寝ているときに無理な姿勢になることがあり、それが原因で首や肩が凝った感じになってるほうが気にかかる。

左腕をあまり動かさないようにしていたら、僅か数日で衰えを実感。左腕を90度上げるだけでちょっと苦労する。そういうものか。

ラベル:

火曜日, 1月 08, 2008

転倒 (3)

朝早くの電車で地元に向かい、親に駅でピックアップしてもらって大学病院直行。

整形外科と脳外科で診察&検査をハシゴ。全体的な印象として、この数年でかなり IT 浸透したなぁと。書類はほとんど患者に持たせるバトンとしての意味しかなく、情報はすべてイントラネットでやりとりされてる。素敵だ。
ただ、まだレントゲン写真や CT スキャン画像はアナログで現像したものそのまま持ち運びなのと、携帯端末は(無線の問題もあるのだと思うけど)使われてないのか。患者に RFID タグつけちゃうと管理楽そうだけどプライバシーの問題とか無線機器が与える影響とか、いろいろあるんだろうなぁ。

順番はこんな感じ。
  1. 鎖骨レントゲン撮影
  2. 整形外科診察・手術日調整
  3. 頭部レントゲン撮影/CTスキャン
  4. 脳外科診察
  5. 入院前検査(尿・血液・心電図・肺機能)
8:00過ぎに初診受付を済ませて、途中昼食をはさんで全部終わったのが15:00過ぎ。けっこう次々と検査していたのでさほど退屈はしなかったけど、やっぱり時間かかるね。

鎖骨の手術は、執刀医の方のスケジュールもあり来週に。逆にそれまでは自宅療養で構わないので、仕事は出来る。今週中に仕事振れるだけ振って、来週お休みの方向で頑張ろう。

また1/5転倒時に頭部を強く打っているハズなので(いまだに記憶が定かでないけど)脳外科の診察も受けたが、手足に麻痺もなく、目で目標を追うテストも問題なし、レントゲンやCTスキャン結果を見る限りでは出血等も認められないということで、大丈夫でしょうとのこと。

私の財産は鎖骨よりむしろ脳なので、こっちでダメージがあると洒落にならないところだったが、とりあえず一安心。

というわけで、しばらく実家でお仕事。メール何通か書いて、GoogleTalk でオフィスと連絡とって。光ファイバがあれば、ミーティング以外はどうにか済む気がするなぁ。あとは使い勝手が良いオンラインのホワイトボードが欲しいかな。

追記

患者に RFID つける件。調べたら既に導入事例 あるね。2004年の段階でジーメンスが RFID を埋めた腕輪を患者につけて情報管理するソリューションの試験を始めるという記事もあるし、既にどこかでやってそうだ。

ラベル:

月曜日, 1月 07, 2008

続・転倒

仕事の合間に整形外科まで。

土曜日は帰宅で精一杯、日曜日は自宅周辺の病院はどこも休診ということで、医者に行くのが今日までのびのびになってた。

レントゲン撮影の結果、左の鎖骨が折れてることが判明。がーん、打撲じゃなかったのか。要手術という話になったので、仕事のほうとプライベートとスケジュール調整して、実家に連絡とってと大わらわ。病気や怪我で何が面倒かって、弱ってるところに発生する事務処理だよな。パイプラインが乱れると困るのは最近の CPU に限らないようで。

富士スピードウェイに電話して転倒時の状況を確認したところ、コース図B-3の右コーナーでハイサイドして左側に転倒したとのこと。バイクをレッカーで引き上げ、あとは本人は元気に受け答えしていたので自走で帰ってもらったとのこと。鎖骨程度なら分からんものなのね。

しかし、バイクはこれでさよならだ。一度でも自分のミスが元でバイクで怪我をして、仕事に影響出たらやめようと決めていたので。もうちょい長く乗れると思ってたんだけどなぁ。ま、また読書にでも時間を使うことにするか。読みたい本は積まれてるし。

続報

独り身なので、実家近くで入院先探したほうが親のサポート期待できて良いだろうという話でまとまり、明日早くに帰省することに。指定席予約。

持って行くものは、仕事環境一式入れたノートPCと、読みたい書籍。入院に必要な生活用品の類は、逆に実家にあるもので大半は事足りるから、こっちから持っていく必要はないか。

さて、帰る前に仕事のリスケ案作成といくつかクラス設計を済ませて、会社のメンバーに宿題を置いていかないと。MagicDraw でお絵かきして Visual Studio でコードの雛形まで作るよ。

ラベル:

土曜日, 1月 05, 2008

転倒

富士スピードウェイのショートサーキットを走っている最中に転倒。年始早々… orz ハイエースにバイクを積んで行っていたので、転倒したバイクを積んで帰宅し、一眠りしたところで状況確認。

怪我は打撲と擦り傷程度で日常生活に支障はない模様。転倒・帰宅時の様子などは断片的にしか覚えていない。なるほど、事故で記憶が飛ぶという話を聞くけど、こうなるわけね。年末からの記憶がちょっと怪しかったのでメール見直して思い出す。外部記憶重要。
しかし年末に読んだ Distributed Systems の内容が飛んでるな。書籍をぱらぱらとめくってみると、読んだ箇所については「ああ、読んだなこれ」って感じで思い出せるんだが。あきらめてもう一度読み直すか。

バイクは左ステップが削れているのと、カウル左右両方とも割れてる。スライダーのおかげでエンジン・フレームなどには多少傷がついた部分はあるものの、致命的なダメージはない模様。装備品は、ツナギは左肩・左肘が擦れて見た目が汚くなった程度だが、ヘルメットは左右ともに傷が入っている。想像するに、スリップダウンではなくハイサイドで吹っ飛んで左肩と頭から地面に突っ込んだのかなぁ。

とりあえず、今日はさっさと寝る方向で。

一夜明けて

怪我は左肩打撲、左肘擦過傷、右親指付け根打撲程度の模様。骨とか神経は大丈夫みたい。左腕を上げようとすると痛むので、寝返りを打ったり着替えるのが面倒くさい。キーボード打つには支障ないから良いけど。

ラベル:

木曜日, 1月 03, 2008

GameObj: ヒット判定

ヒット判定の設計と実装。考えるポイントは 1. ヒット判定を誰がどのように行うか、それから 2. ヒットしていることが判明した場合の処理をどうするか。

ヒット判定用にインターフェース IHitter, IHittable を用意し、それだけを用いてヒット処理を行う HitManager クラスを作成。インターフェースを細分化して、依存関係を極力減らしておく。
ヒット時にはヒット側から被ヒット側に宛てたメッセージをキューにポストし、後で被ヒット側が実行されるタイミングでキューからメッセージを取り出して処理する方針で。
一般的に、複雑な状態を持つオブジェクトに対して外から不特定のタイミングで状態を変更させるとハンドリングが難しくなるので、そのオブジェクトが自発的に処理するようにした方が楽 (たとえば POSIX スレッドライブラリの API pthread_cancel() とか UNIX プロセスに送られたシグナル処理も似たような方法を使っている)。

そのへんまで方針を決めたら、UML モデリングツールを使ってクラス図を描いて検討し、だいてい行けそうだとなったらシーケンス図も起こしてみる。



だいたい行けそうだとメドが立ったところでコーディング始めて、最後に今後のためにドキュメントをコードにあわせて修正しておしまい。

私は C でプログラムを書く場合にはドキュメントはそれほど重視しないけど、C++ だと多少書いておく。C++ でインターフェースを細分する書き方をしていると必然的に基底クラスの仮想関数を介しての呼び出しが増えるため、ソースコードだけだと後で見て実際にどの関数が呼ばれているかを追うのが大変になるので。

あと Visual C++ 2008 Express Edition で動くように一部修正。_com_ptr_t も使えるのね。

ラベル: