2010年12月29日水曜日

フランスでのsimカード、あれこれ…

だいぶ遅くなったが、フランスでのsimカードの顛末を一応報告。
結論として当初の目論見通り、向こうのsimカードでのD25HW使用は問題なく可能であった。
ただ、問題点が少々。

その1
正規の店舗で相談するな
SFRの正規店舗であれやこれや聞いたところ、
simカードのみでの販売はしていないとのこと。(英語で話してもらったけど、なかなか苦労した・・・)
めんどくさくなって、結局無駄にデータカードも買ってしまった。

その2
simカードのアクティベーション
固定電話でもできそうなことが書いてあったのだけど、
アパルトマンの電話からやってみてもさっぱりでござんす。
結局、たまたま近くにあった別のSFRの店舗でアクティベーションしてもらった。
(このときUSから来たっぽい兄ちゃんも同じことをやろうとして、店の人に相談していた。
でも結局、データカード買っていたw)
simフリー機を持っていたら良かったのかもしれない・・・

その3(おまけ)
パリの人は冷たい
まあ、、これはね・・・
巷で聞くフランス人の悪口の理由がよく実感できた。
(逆に田舎の人はやさしい)

2010年8月19日木曜日

フランス旅行の準備

といってもいろいろあるんだけど、
どこ行くにしても迷うのが一番ストレスなので、自前のナビ環境を整えたい。
となるとGPSは必須であるが、GPS測位だけの機器(意外に重宝される場面もあるが)を買うのも馬鹿らしい。
せっかくなのでGoogleのNexus One (Sim free)でも買ってみようかしらん。
(前に住んでたところから徒歩100mのmobile plazaで扱っている)
現地でiphone4のsimフリーを買ってもいいだんけど、ちょいと高すぎる。

これに加えて現地の通信用simを購入すればOK。
どうやらフランスでは月額単位での定額通信プランはないようで、
一番良さそうなのはSFRという会社の上限設定プランか使用日数で購入するプラン。
前者は15hで39ユーロ、後者は1日使い放題で9ユーロ。(+手数料で29ユーロ)
ちなみにこのsimはe-mobileのpocket wifi(D25HW)でもいけるという報告がどこかに載っていたのでなお良し。(ただし、1日使い放題プランは使う日ごとにアクティベーションが必要なようで、アクティベーション操作のためにsimフリーの電話が必要になるとのこと)

フランスではSFR以外にorangeという大手の通信会社もあるが、
こちらは今のところプリペイドsimの案内がwebサイト上で見つけられない。
(フランス語がわからんので痛い。自動翻訳でも難しい・・・)

ああ、どんどん散財していく・・・

2010年7月29日木曜日

AWS Elastic MapReduce

AmazonがAWSをはじめてもう久しい感じだが、
去年の春からElastic MapReduce(EMR)も登場して、個人レベルでも大規模分散処理が行える敷居は低くなった。
ただこのEMR、Java以外による他言語のstreamingはできるとして、
Cascadingも普通に使えるとは思わなかった。
(1.0からofficial supportだった)
大規模処理がしたいだけならもはやhadoop-ec2も使う必要性が少なくなっている。
hadoopのチューニングもbootstrap処理により可能。

S3のコンソールはもう少し使いやすくなって欲しいかな。

2010年7月21日水曜日

Hadoopにて苦難・・・

Hadoop+Cascadingにより現在コーディング中だが、
注意力散漫なせいかしょうもないことで苦難の連続。
ログでエラー吐き出してないやん、と思っていたら
後から見直すと適切なエラーが出てたり・・・。
結果プログラムエラーではなくて、データセットが壊れてたり。
(しかも見た目ではわからない)

注意散漫、加えて無気力なのは暑さのせいだけじゃなさそうだ。

GERD(胃食道逆流症)がひどくて毎朝腹痛がひどかったり。
内視鏡所見みてこんなのザラだとか医者に吐き捨てられたり。
(自分も医者だけども)
見た目と症状の程度は相関しないというのに。
PPI飲んでもあまり効かなくなってきたり。
もう毎日飲むしかありませんな、これは。


2010年6月17日木曜日

Pocket WiFi(D25HW)の不具合


昨年末からイーモバイルのPocket WiFi (D25HW)を愛用中である。
が、4月頃からおかしい。
気づいたのはUSB経由でノートPCにつなげたとき。
通信はおろか、給電もされていない様子。
D25HWの電源がoff状態であれば、USB経由で充電はされる模様。
無線LANはいずれにしろつながる。
使えないことはないのだが、いざというとき(バッテリーが少ないとき)に心許ない。

んでカスタマーサポートに電話して現物チェックしていただくこととなりました。
しかし結果は「異常なし」
そんなはずはない!と思いながら、自機と代替機とでいろいろ試してみると、
自機のみならず代替機でもUSB経由だとつながらないことが判明;
これは故障じゃなくて自分の環境がおかしいのか!?(でも思い当たるところがない)

永久にこのままな予感もしながら、ノートPCのネットワーク設定を眺めていると、
ひとつ気づいたことが。
それはVMware network adapter(VMnet1, VMnet8)
4月からノートPCにもVMware playerを入れてるんだった・・・
まさかと思ってこれをアンインストしてみると、USB経由でもつながるではないかえ。

つまらないことではありますが、後人のためにこの記録を残しておきます;

一時WiMAXへの乗り換えを考えた罰であろうか

2010年4月29日木曜日

またもやXMLに翻弄される


xmlからmemcachedへデータを書き出すjavaプログラムをつくった。
xml parserとしてjava 1.6標準のStAXライブラリがあるが、
これが曲者であった。
巨大ファイルを扱ってもOutOfMemoryErrorにならないはずだが、
OutOfMemoryErrorに。
自分のコードをさんざん疑って時間を浪費したが、
なんとこれはライブラリのほうのバグであった・・・

xml parseで、apache xercesを使っている部分があるらしいのだが、
そこでchar[]にストリームをため込み続けてOutOfMemoryに至るよう。
memory analyzerのメッセージを読んだときは最初???だった。
ちなみにこれはjava 1.6 update 14で修正されたというアナウンスがあったらしいが、
直ってないらしい・・・

結局、海外サイトの掲示板で書かれていた方法で対処。
woodstoxという同じくStAXを扱うjava StAXからの拡張ライブラリがあり、
そちらを使用。
といってもコードを書き換える必要はなく、
classpathでライブラリのjarを含めるだけ。
これで、巨大XMLファイルでも、低ヒープメモリで扱えるようになった。

(apache xercesのほうのライブラリをclasspathに含めてもいけるかもしれない、が試していない)

2010年4月25日日曜日

XMLDBに翻弄される…


MEDLINE(PubMed)の検索インデックスで使われているシソーラスデータでMeSH(Medical Subject Headings)というものがある。
1年毎の改訂で、最新版のダウンロードはフリー。
こいつがXMLファイルで提供されていて、
安易にXMLDBを使ってみようと思ったのは浅はかだった…

現在構想しているシステムのサブシステムで、MeSHデータの検索ができるようにしたい。
しかしXMLDBは時間がかかりすぎる。
eXistというものを意気揚々といれてハマった。
これはDOMでツリー構造を保存している?
MeSHのデータは300MB弱で、余裕でOutOfMemoryError。
(ひねくれてjavaヒープメモリを数Gbとか用意してやりたくなるが、諦めた)
IBMのDB2 Express-Cがフリーで使えるが、なんかめんどくさくなった(笑)
高速を謳っている他のXMLDBは金がないので手が出せない。
結局、今後の処理のことも考えて、memcache+MySQLみたいな感じにしとくか、と思い始めた。

なんか1日ちょっとで終わる予定の工程が1週間以上伸びてる;

2010年4月12日月曜日

Ninja

海外で、達人や専門家のことをNinjaと呼ぶ人たちがいるらしい。

しかしWorld of Warcraft(のみならずMMORPG)でも、
Ninjaという言葉がけっこう使われていることを思い出した。
簡単にいうとゲーム内で他のプレイヤーの同意なく、レアアイテムを勝手にかっぱらっていく人だ。
もっともゲームとはいえ社会性が破綻していると長く続けられないので
(MMORPGは一般にソロではたいしたことができんのです)
そういうことを繰り返すのはお子様が多いとは思うのだが。


2010年3月30日火曜日

Apache Axis2についていろいろググってみた

PubMedという医学、biomedical系の学術文献検索サイトがある。
こちらを使ってちょっとした検索支援サイトをつくろうと考えている。

とにもかくにもシステムからPubMedにqueryを投げられないと話にならないが、
httpリクエストでGETするか、SOAP(axis2で稼働)で取りに行くということらしい。
SOAPの説明見ると、どうやらコンパイル済みのスタブファイルがDL可能で
簡単そうなのでSOAPでテストクライアントをつくってみることにした。

しかしそのjarファイルも依存関係がいろいろあるらしく、
結局axis2のlibに入っているjarをすべてビルドパスに加えることに・・・。
マジですか。
まあどうせサーバに入れるものだし、いいか。

次は自然言語処理のライブラリをいじくらねば。



2010年3月12日金曜日

GWT+IEの不具合

gwt2.0 + uibinderを使って何かつくってみてる最中であるが、
だいぶuibinderのくせみたいなものがわかってきた。

しかし順調に見えたのも束の間、chromeとfirefoxでは問題ないものの、
IEでLayoutPanel関連?が全く表示されないという状態を発見。

日本語情報でこれに関連したものがないなあと思って
GWT groupsのスレッドを検索してみたら、同じ問題に遭遇してる人がいた。

とりあえずの解決策は、javascriptを呼び出すhtmlの中で
最初の<!DOCTYPEなんちゃらの部分を次のように書き換え。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/DTD/strict.dtd">

いくらgwtでつくっていても、javascriptの基本は押さえておいた方が良さそうだ。
(quirks modeでなくstandard modeにする必要がある。
 上記のコメントでも完全なstandard modeではないよう)

2010年3月10日水曜日

subversion関係のトラブルで消耗した・・・

この2日間、不毛であった。

きっかけはsubversionからのチェックアウト。
普段、バージョン管理システムでsubversionを利用している。
eclipse+subversiveからの利用だったが、
どうも昨日から調子悪いらしい。
挙げ句の果てにプロジェクトファイルも同期されなくなるわ、compileもうまくいかなくなるわで
原因究明に疲れた。一部ソースを間違って消してしまうわで、バージョン管理システムを使ってるのになんともおかしな状況。

結局、0からプロジェクトを作り直し、せっせとソースをコピーして復旧。
パスの調整なんやらで気をつかって。
eclipseそのものもなんか挙動が変なので、
これも一から入れ直し。
今度はsubclipseを使ってみることにした。(どうもその方が安定するらしい)
今のところ快調。

2010年2月20日土曜日

A列車で行こう9


はじめてA列車シリーズに出会ったのは中2の18年前(!!)
1と2のセットパッケージを買ってはまったのは懐かしい。
その後、3→5→4(winXP版)という遍歴をたどった。
しかし6以降の方向性がわからなくなりtapering。

この冬、9が出て非常に楽しみで、買うかどうか悩んでいたが、
アマゾンのレビューを見ると・・・
ものすごい酷評である・・;
買うのはよしておこうと思った。

それよりもまたWarcraft3病が出てきた。
ひとにあげなきゃよかった・・・
(下手だけども)

2010年2月6日土曜日

厚労省 内服薬処方せんの記載方法の在り方に関する検討会報告書を公表

http://www.mhlw.go.jp/shingi/2010/01/dl/s0129-4a_1.pdf

え、今更?な話だが。

そもそも処方箋の書き方より、処方箋の扱いを明確にするのが先だと思う。
それによって書き方も変わるだろうし。

前にいた基幹病院では病院業務完全電子化で、
紙の処方箋が飛ぶことはなかった。
患者さんの目に触れることはなく、薬剤師から渡されるのは薬の「説明書」。

しかし今バイトしてるような病院では、紙の処方箋でどう扱われるか不安になるときが多い。
院外処方になったら患者さんに手渡しだし(笑)
(まあこれは前の病院でもいっしょだが、
オーダー画面の時点ですでに患者さん向けの表記になっている)

ある経験年数以下の若い医者はだいたい処方箋の書き方がそう変わらない。
カルテの書き方も然り。(SOAPみたいな)←IT用語じゃありません
何故なら米流医療に刺激されてそういう教育がされているから。
公的書類としてすごい責任を負わされてるはずなのに
標準化もされずここまで来たのはある意味すごい。

2010年2月2日火曜日

SCJ-D

Javaというプログラミング言語がある。
これはSun Microsystemsという会社が開発したものだが、
自分が大学生時分、新鮮さに溢れていた。
バイトでJavaのソースからドキュメント作成(笑)というのをやっていたことがあるが、
いっしょにバイトしてた院生の兄ちゃんとか会社の人が、
「まだJavaって雲行きあやしいよね」なんて会話をしていたのが懐かしい。
(この頃はサーブレットやJSPは一般的でなかった)
いまではcommonな言語。

SunがJava関連の資格試験を行っている。
所詮、経験がものを言う分野なれど、なんとなくステータスは欲しいものである。
ただの医者である自分にはなおさら。ITを語るためには(笑)

その中でいくつかランクがあるのだが、
ベースとなるSCJ-P(Sun Certified Java Programmer)という資格をとって早数年。
そろそろSCJ-D(Sun Certified Java Developer)をとっておこうかと一発奮起してみよう。
(受験料が高い・・・)
洋書の参考書だけ買って放置していた・・・


2010年1月27日水曜日

保健医療分野のクラウドって可能?

授業課題のレポートとした書いたばかりのもの(笑)

読み返してないからなんか変かもしれない。

-------------------------------------------------------

保健医療分野では様々な情報集積、その分析、および活用が必要とされる。例えば、母子保健においては小児の予防接種率などが、将来の公共健康において重要な問題である。感染症サーベイランスは社会への即時的な影響が大きく、医療機関、保健所などからの情報収集はクリティカルである。その他、精神保健、救急医療諸々、保健医療分野全体での情報の集積、活用は今後の公共健康のためにますます重要となっていく。

 そのような情勢の中、保健医療各分野の中で施設や機関を越えた情報収集、連携を行う基盤は弱い。情報を扱うフェーズは、情報収集、管理、提供の大きく3つから成ると考えられる。情報収集、情報提供という面では特に、電話やFAXなど比較的効率の悪い手段が主である。また会話での情報や紙媒体での情報は、管理の面でも効率が落ちる。ビジネスを中心とした他分野でのICT活用事例からすれば、ICTによるシステム化で多くの人的資源を節約が可能で、システムの利用者から見た利便性も改善される期待がある。

 ICT導入ではメリットに対する期待が多い一方で、デメリットも存在する。大きく分けて3つの面があると考えられる。一番目には利用者のICTリテラシー、二番目に情報セキュリティ、三番目にICT導入のコストである。近年はインターネットを中心としたICTの普及に加え、教育におけるICT領域の導入など新しい試みが多く、時間の経過とともにリテラシーの問題は重要でなくなると期待される。セキュリティに関してはICTが利用されるすべての分野で問題となる。コストに関しては、ハード、ソフトを含めたシステム作成、およびメンテナンスが主な問題である。新しいシステムを作成する際は上記のような項目を検討する必要があり、それがまたICT導入の障害ともなり得る。

 このような問題に対する一つの解としては、保健医療分野専用のプライベートクラウドが考えられる。ICTにおいては近年、クラウドコンピューティングの話題が多い。その本質は、システムのクライアント側の資源をサーバ側に集約し、サーバ側においても分散協調技術を用いて耐障害性、継続性、スケーラビリティの強いシステムを構築するところにある。また、これにより複数システム全体の中で、まずハード面におけるメンテナンスコストを集約することが可能となる。ソフト面においてもある程度のプラットフォーム化が成されれば、システムソフトウェアの作成コストは従来より下がることが期待できる。グーグルやAmazonが提供しているクラウドコンピューティングサービスは、個々のシステムの扱う内容に依らない(利用主体を問わない)、いわゆるパブリッククラウドと呼ばれるのに対して、主にセキュリティの面からパブリックと切り離された、プライベートクラウドと呼ばれるものがある。保健医療分野ではこのプライベートクラウド導入を検討する価値があると考えられる。

 保健医療分野でプライベートクラウドを導入するメリットはいくつかある。保健医療の中で各分野が独自にシステムを構築する場合、それぞれにシステム作成、メンテナンスに係る、人的資源を含めたコストが必要であるが、プライベートクラウド導入により保健医療分野全体でのコスト集約が可能であるとともに、各分野でのICTを利用したシステム導入の敷居が下がることになる。プライベートクラウドそのものが保健医療分野全体でのコストを下げることに即座につながるわけではないが、各分野での効率の良いシステム導入により全体のパフォーマンスが上がるとともに、結果としてコストが下がる可能性がある。

 医療機関における電子カルテ導入についても同様のことが言える。現在、大病院を中心に電子カルテの導入率は目覚ましいものがあるが、中小病院ではコストの問題により電子カルテの導入に障害がある場合がある。このような中小病院に向けて、電子カルテ用途のプライベートクラウドの環境が構築されれば、導入が容易であると同時に、臨床試験や感染症サーベイランスといった臨床情報の集約に際し、大きく向上に寄与するものと考えられる。

 デメリットとしてはセキュリティとネットワークの耐障害性が挙げられる。前述の通り、プライベートクラウドはパブリック部分と切り離されたものであるが、ネットワークが基盤にある以上、情報漏洩やクラッキングのリスクが存在する。またネットワークに障害が発生した場合、システムそのものが全く利用不可となる。よって最終的にはリスクの見積もりに合わせた導入の検討、システム構築を行う必要が生じる。

 このようなデメリットを勘案しても、保健医療分野専用のプライベートクラウドは公共健康の向上に寄与する可能性を持ったものであり、上記のデメリットに関わるICT技術向上とともに今後検討していく価値のあるものと考える。

2010年1月20日水曜日

GWT 2.0

昨年末からリリースされたGWT2.0

GWTとはGoogle Web Toolkitの略である。何年か前からAjaxと呼ばれる技術(の総称)によってブラウザベースのRIAが作れるようになった。しかしここで必須になるJavaScriptが面倒くさい代物である。
JavaScriptは文法をJavaに合わせてつくられたため、非常に混同されやすいものだがまったくの別物である。(大学生の頃、なんちゃってITベンチャーにバイト応募して、「Javaが勉強できるよ」って言われて入ったらDreamWeaverでのJavaScript作成だったという笑えない経験がある)
そこで全くのJavaベースでクライアント用のコードを書いて、それをJavaScriptに変換しようというツールをGoogleが作った。

JavaScriptを知らなくてもAjax的なものが作れるという意味でこのツールは非常にすばらしい。(JavaScriptは一時期見向きもされず、WebアプリケーションといえばJavaによるサーブレット/jspが当たり前の御時世である。あえてJavaScriptを頑張って覚えようというモチベーションがわかない)
ただ実際に勉強してみるとわかるが、UIの設計が大変なのだ。基本、コード上でUIの調整をしなければならない。
今回2.0にバージョンアップし、その目玉のひとつとしてUIBinderがある。これはUIの定義部分(xml)とコード部分(java)を分離させようというもの。これによりUI担当のデザイナーとコードを書くプログラマーがかなり分業しやすくなったのではないか。開発作業はEclipseベースになるが、今後UIデザイン用のツールが出てくるのが楽しみだ。動的な部分のコードもスケルトンまで作成できるようになるかもしれない。

Google上のドキュメントではなんかわかったようなわからんような感じだったが、GWT SDKのサンプルに入っているメーラーアプリのソースを見ると理解しやすい。
EclipseのGWTプロジェクト内(クライアントパッケージ内で)で「新規UIBinder作成」を選ぶと、UIBinderを使ったWidgetのサンプルも自動で作られるので参考にしてみると良い。

2010年1月19日火曜日

心機一転、ブログ開設

初めまして。という挨拶も変な感じだが、
今後こちらでブログを続けていこうと思うのでよろしく。

プロフィールの通り、元は血液内科専門の臨床医。
しかし何を思ったか、2009年4月某大学のSPHへ入学。
ビジネスマンがMBAに行くノリに近いものがある。
いまは学生生活でゆっくり考える時間があるのだが、
やはり医者でいるより他に成すべきことがあるだろうと感じている。

今後の自分のテーマとしては、
<医療、保健>×IT
こういうこと中心にブログを書いていければいいが、
おそらく脱線の連続だろう。