2009.11 集中と分散

わーくすてーしょんのあるくらし ( 201 )

2009-11 大橋克洋

秋の昇仙峡 燃えるような紅葉

< 2009.10 何のその花が咲かうと咲くまいと | 2009.12 換骨奪胎 >

「集中と分散の使い分け」はソフトウエアの設計上、 非常に重要なポイントです。「オブジェクト指向」は、 バラバラに存在する部品それぞれが、 インテリジェントに機能分担する「分散化」の考えと言えますが、 オブジェクト指向にあっても「集中化」の部分もなくてはならないものです。 この集中と分散は、社会における組織作りにも言えますし、 身体のメカニズムにも深く関連するものです。 身の周りでも、それらの役割分担が適切にされているかどうか、 ときどき見直してみる必要はあるでしょう。

○ ジャイロ・センサー損傷、その後

先月、突如激しい目眩に襲われ、生まれて初めての入院生活を送ることになりました。 原因は左内耳の前庭神経炎という診断。つまり左の三半規管がイカれたわけ。 昔は船などのバランスをとる、 最近ではデジカメの手ぶれ防止などにも採用されている 「ジャイロ・センサー」の損傷と同じようなことです。 損傷そのものは修復されない。 残った右内耳や五体のセンサーによる代償機能を鍛えるよりないとのこと。 つまり「この状態に慣れろ」ということですね。

状況をもっともよく表す表現として、先月は「酩酊状態」に例えました。 最近は多少感じが変化し、「揺れる小舟の上に立っている感じ」 そして1週間ほどすると「悪天候で大きく揺れる大船のデッキを歩く感じ」になりました。 「どれも同じだろう」って? 当事者にとっては微妙に捉え方が違うのです。つまり、 アン・コントローラブルな状態から、 多少は主体性を持ってコントロールできる状態へ慣れてきた ということでしょうか。 こういう機能障害は「逃れよう」とすればするほど「障害」としてつきまといます。 むしろ「床というものは、揺れるのが当たり前(船に乗っていれば当然そうですよね)」 と開き直って、 その状況に慣れてしまった方が勝ちという考えで、 そのためのトレーニングについて工夫を重ねたいと思います。

退院後1週間ほどは、東京都医師会への通勤もタクシーを使っていましたが、 2週目からはリハビリを兼ね少しずつ電車通勤に戻しました。 面白いですねえ「電車の中で掴まらずに立つ」は、 まったく問題ないのです。一番ヤバいのは、後や横から誰かに挨拶され、 反射的に挨拶を返す動作です。いまだに、これはグラっとくる可能性が高いです。 「不得意なものは、そればかりトレーニングすればよい」という 私の持論に従い、急に横を向いて挨拶する練習をしても駄目です。 少しもグラリとしません。つまり、予想した運動は大丈夫なんですねえ。 そんなことで、一番気をつけなければいけないのはホームのふちを歩いたりすること。 幸い、私の通勤する三田線は全線ホームに防護柵がついています。

電車の中の経験からわかったことは、下肢はしっかり安定を保つ機能が鍛えられており、 なまじ それをコントロールしようとする頭が不安定を誘うのです。 つまり現状では「集中化」の悪しき慣習が悪さをしているようで、 腰を中心とした身体センセーとそれらの反射に、 ある程度「コントロールを委ねる」のがポイントだろうと現在考えています。 腰から下をコンニャク状態にすることが大切。

恐らく、立って歩くことができないほどの大地震が来て 健常者は這いつくばってしまっても、 もしかすると私は結構歩けたりするのかな(大学時代の馬術教官から40年ほど前の 「新潟地震の時、とても立っておられず道路に四つ這いになった」 との経験を聞いています)。 大停電で健常者は歩けなくなっても、盲人は平気で歩けるようなもの。 それにしても慣れませんねえ。外来診療で室内を歩くだけでも、 頭の中はぐらぐらします。この状況に本当に慣れるには、まだ数ヶ月はかかるでしょう。

○ 仮想化環境を使ってみよう

電子カルテ NOA プロジェクトをめぐって、 少しずつ色々な方とディスカッションや情報交換が始まっています。 そんな中で「電子カルテ NOA は仮想環境で動かすには絶好」 というご意見をいただき、仮想化環境について勉強してみました。 世の中では Linux ベースのものが多いようですが、 MacOSX 上でも動く VirtualBox というのを教わりました。 ほーお、サンマイクロから出ているんですね。 これもオープン・ソースなので早速 download し iMac 上に展開してみました。 この上で Windows も動くということで、 以前 VMWare で動かしていた Vista を VirtualBox 上にインストールしてみました。 体感的には VMWare とほとんど変わりませんね。 無償ソフトで、比較的快適に使えそうです。

とりあえず NOA の Windows 上のクライアントとしてのテスト に使えて便利です。IE では動きませんが、Safari を download してきて Vista で動かせば、ばっちり NOA クライアントが動くことを確認しました。 でも、Windows って、いつまでたっても画面がダサいことも確認。

○ NOA を Firefox 対応へ

「こんな画面上で NOA 使いたくないし、 使ってもらいたくもないなあ」と思っていますが、 一般の世の中は Windows の世界、やはり 「自分の棲む Windows 環境でも NOA を使いたい」 という方々の気配をひしひしと感じます。

NOA 改良もやや一段落したところで、 Firefox でも動くよう改良にとりかかりました。 最初は「結構大変かなあ」 「相互の違いの部分を専用ライブラリーで吸収しなければ駄目かも」 と思っていたのですが、やってみると意外なことに 修正点はごく限られた部分であることがわかりました。例えば Safari では 「element.setAttribute("disabled")」 で許してくれたが、Firefox では 「element.setAttribute("disabled", true)」 と書かなければ凍ってしまうとか、 スタイルシートでも、Safari では「color : yellow」「font-size :20 pt」 で問題なかったのが、Firefox では 「color : #FF0」「font-size :20pt」と書かなければ駄目など。

、、と言っても、実際の修正箇所はおびただしく、 またまた根気勝負の「落ち穂拾い」作業でしたが、 2、3日で ほぼ Firefox 対応完了しました。 Safari では「大ざっぱな書き方でも丁寧に対応」してくれていたのが Firefox では「行儀よく書かなければ理解してくれない」のでした。 Safari を「頭が切れてさりげなく仕事をこなす思いやりある秘書」 に例えるなら、Firefox は「実直に仕事をこなすが 余り融通のきかないお手伝いさん」という印象。

お陰様で NOA のソースも、その面では 「お行儀よいコード」になりました。昨日の診療は Firefox で行ってみました(実務に使うのが一番)。 少々「取りこぼし」もみつかったので、 もう少しテストしてから公開することにしましょう。 IE でのテストはまだ していません。 このまま動けばラッキー!ですが、 さらに大きな改変が必要なら、ひとまず棚上げでしょうかね。 遅いブラウザーでは NOA のパフォーマンス、 かなり落ちてしまいますし。

そうそう、速いブラウザーと言えば Safari と同じエンジンを使っている Google Chrome 。 一部 NOA で正しく動作しないことがあったのですが、 今回の改修で Chrome も ほぼ問題なくなったようです。

○ Firefox で使いにくい点

Firefox で外来診療を行ってみています。 Safari と外見上ほとんど変わらず使えています、よしよし、、 しかし実際、診療に使ううち、いくつか相違が出てきました。 NOA から伝票入力ツールや文書作成などの サブ・ウインドーを開く場合。Safari では必ず開いたサブ・ウインドーが 今まで使っていたウインドーの手前に開きます。 しかし Firefox では、すでに開いていたサブ・ウインドーが 現在開いているウインドーの裏に隠れていた場合、 手前にでてきません(新規ウインドーの場合だけ 手前にでてくれるようです)。 これはとても使い勝手が悪いですし、 初心者にとって「ウインドーが開かない」という 困惑の種になるはず。どこかの設定で、挙動を変えられるんですかね。 「うーん、ここにも、お手伝いさん問題」かな。

数日 Firefox で診療を行い、 ほぼ Firefox 対応問題なさそうなことを確かめたので、 Safari 環境へ戻りました「やー、こちらの方がやはり快適ですね」 上に挙げたような違いだけでなく、 何となく伝わる「暖かな心地よさ」のようなものが Safari にはあります。 こういう雰囲気を醸し出すには、 開発チームの人間性というか、こだわりがあるからなのでしょう。 中国武術で言う「意」や「気」の吹き込まれた アプリケーションということでしょう。

NOA も、そこまで持っていきたいのですが、 これだけ洗練されたモノに至るには、不断の心がけが必要なのでしょうね。 無駄なものをいかに排除して使い心地をあげるか 「引き算の美しさ」への追求をしていきたいものです。

○ Google Chrome で NOA を動かしてみる

Firefox 対応で Chrome でも動くようになったので、 ちょっと試してみました。 早速、不具合発見。処方箋など PDF のプリントアウトで QuickTime plug-in がクラッシュしてしまうようです。 処方箋が発行できないのでは、ちょっとなあ、、

NOA だけの問題かどうか確かめるため、 東京都医師会の文書管理システムの PDF をプリントしてみようとアクセスしてみました。 ありゃ、中に入る前にコケてしまいました。 まだ Chrome は未熟か、残念。

まだ短時間のテストですが、明らかに Safari より Chrome の方がテキパキ動きますね。 Apple の言では Safari が速いということでしたが、 NOA での体感速度では 明らかに Chrome の方が素早く動きます。 これで印刷問題が解決すれば、 NOA クライアントとして最適なブラウザーかも知れません。 テキパキ動いてくれるのは、気持ちいいですねえ、、

○ キャッシュの功罪

Firefox 対応をしていて「あれ、ソースを修正したのに、 どうして修正前の動作をするの?」ということで、 ハマってしまったことがありました。Safari では このような時「もしかして、キャッシュがつかんでる?」ということで、 キャッシュをクリアーして解決するワザを知ったのですが、 勝手を知らない Firefox、メニューバーのどこを探しても キャッシュ・クリアーがみつかりません。

どうしても駄目、 そこで初めて Firefox の Help を読みました。 「なあーんだ、キャッシュ・クリアーは環境設定パネルの しかもこんなところに隠れていたんだ」ということで、 ようやく問題解決。 動作をキビキビしてくれるキャッシュの功績は大きいのですが、 こんな「悪さ」になることもあります。 状況を親切に見分けてもらえると嬉しいのですが、 これは結構難しいかも、、

なーるほど、それで Safari では キャッシュ・クリアーをちゃんとメニューバーに用意しているんだ、 さすがは「できる秘書」。 引き出しの奥にしまい込んで、 使うのに手間のいる「お手伝いさん」との違いでしょうか。 そんなことで Firefox では引き出し(環境設定パネル) を開けっぱなしで、 開発を進めなければならないのでした 「ひとの振りみて、わが振りなおせ」。 NOA では こういう微妙な使い勝手を大切にしていきたいと思います。

○ Magic mouse その後

Magic mouse の新着レポートを先月書きましたが、 その後の使用感を追加します。 このマウスのウリである「表面をなでて行う操作」ですが、 指が汗で濡れていたりすると感度が落ち非常に具合が悪いです。 これが結構微妙で、汗のようなはっきりしたものでなくても、 気候の変化による湿度などでも、かなり使用感が変わってくるのではないかと思います。

iPhone 3GS が初代のものに比べ、操作感が上がった (指紋が付きにくくなったのが大きいですが)のと同様 Apple は ここのところをどう上げてくるかが見ものです。 材質を変えるのが手っ取り早いのでしょうね。 他のメーカーなら、そのような微妙な感覚には無頓着と思いますが、 少なくとも Jobs 健在の Apple としては こだわり続けてくれるのではないかと、、

先月のレポートに書いたように Spaces の切り替えなどに 利用できなくなったのは、私としては痛手です。早いとこ 「副ボタンのかわりに他のアプリを設定」できるような ソフトウエア・アップデートを期待したいところです。 ということで 「目新しいもの好きなひと」以外へのアドバイスとしては 「買うの、もうちょっと待ったら?」かな、、

と思っていたのですが「ちょっと待った!」。 Web で「Magic mouse Spaces」をキーに検索していたら 出てきました。うーむ、やはり 同じ思いをしている人 がいるんですね。 Exposesture というアプリを使うと解消されるという朗報を得ました。 これをインストールしておくと マウスの軌跡で描くゼスチュアーにより Spaces を起動できそうです。 早速 download してみました、、「あれ、どう設定するの?」。 幾つかの記事を読んで了解。以下のように設定することにより マウスを時計回りに動かすことで Spaces の起動に成功。

Spaces が「ファンクションキー8」で起動するようになっていたとすると、 設定画面の「時計回りゼスチュアー」「キーイベント送信」を選んでおき、 キーボードの F8 を押すと「送信するキー」欄に F8 が入ります。 これで OK、早速マウスを時計回りにぐりぐりしてみると Spaces が立ち上がりました。 Magic mouse でがっかりした方、是非お試しあれ。 図の設定の「タスクスイッチ」も便利。

作者は日本の方です。感謝、感謝。 1日も早い Snow Leopard 対応が期待される WindowShadeX とともに、 なくてはならないツールとなりそうです。 NOA もこのように、 見知らぬ 多くの方々のお役に立てたら嬉しいなと、、

○ iMac が外部ディスプレーとしても使えるようになった

2年半しか使っていない iMac のロジックボードがイカレ 使えなくなってしまい、今後の Apple への要望として 「iMac は外部ディスプレーとしても使えるよう設計すべし」 と4月号に書きました。

ところが、先月リリースされた新しい iMac は、 外部ディスプレーとして使えるようになったことを知りました。 おー Apple は、ちゃんとこちらの望むことを叶えてくれるんだ。 偉い!! 残念ながら、今回おシャカになった 古い iMac は駄目ですけどね。 こうなると Apple 純正のシネマ・ディスプレーを買うなら iMac を買った方がお得ということに。何せ2万円プラスするだけで、 コンピュータ本体機能もついてきてしまうんですから。

それにしても今回の iMac の更新サイクルは早かったですね。 今年4月にリニューアルされたばかりの iMac を購入したのに、 半年でさらに更新されてしまった。まあ、 こういうことはあり得るので、私は恨みませんけど、、

○ 仮想化環境上の Linux で NOA 稼働に成功

VirtualBox 上に ubuntu を載せ NOA パッケージを download して稼働させることに、ひとまず成功しました。 ひとまず、と書いたのは、その環境内で動かすことには成功したのですが、 その ubuntu 環境に固定 IP を振ってサーバとして稼働させ、 それを外部から利用するところが、まだ成功しません。 インターネット上の色々な情報を頼りに 固定IPで動かそうとするのですが、どうもうまくいきません。 誰かに聞いてしまうのが早いのですが、 もうちょっと独力で頑張ってみたいと思います。

今月は MedXML コアメンバーの合宿をかわきりに、 馬術部 OB/OG の甲府合宿、堺市での十四大都市医師会連絡協議会と広島の医療情報連合大会 と旅行が続きました。広島のホテルでは持参した MacBook Air で仮想化環境での NOA 稼働で格闘しました。NOAManager を立ち上げるところまでは うまく行ったのですが、そこで PHP のエラーが吐き出されてコケてしまうのです。 ubuntu 環境から MacOSX で動かした NOA サーバを使うには問題ないのですが、 はて? 何故なのでしょうか。帰宅してもナゾとの格闘は続きそうです。 今回、医療情報連合大会で広島へ行ったのに、結局 時間の関係で聞けそうなセッションは1つほど。これだけのために 参加費1万なにがしかを払うのも ちょっとね、ということで、 ホテルでの ubuntu との戦いと、鈴木さん小塚先生と縮景園の見学、 おいしいお好み焼きの堪能に終始しました。まあ、たまには のんびりとこんなことで時間を過ごすのも、善いかなと、、

帰宅後、ナゾは解けました。PHP の仕様が変更されたようで、 今まで使えていた関数が ubuntu 環境の PHP では受け付けられないためでした。

、、さらに試行錯誤すること数日。 仮想化環境上の NOA サーバに、 ネットワーク上の他のアドレスからアクセスすることに成功しました。 前々から疑っていたのですが、 VirtualBox 自体のネットワーク設定を NAT ではなく ネットワークアダプタにすれば良いのでした。 もう大分 前から「電子カルテはハードや OS を限定することなく、 どの環境でも同様に動くべし」というのが、 私自身に掲げてきた大きな目標でした。 これを遂に達成することができました。 これからは Mac / Linux / Windows お好みの環境で NOA を動かすことができます。

私として一番ありがたいのは、ひとつのバージョンをメンテするだけで、 いずれの環境でもそのまま使えることです。

< 2009.10 何のその花が咲かうと咲くまいと | 2009.12 換骨奪胎 >

生命の森での MedXML合宿 早朝散歩でみかけた別荘

これは日々の生活で感じたことを書きとどめる私の備忘録です