17072006 はな
朝、はなと一緒に庭で遊んでいたら、家の壁にナナフシが張り付いているのを発見。
久しぶりに見た。
14072006 chemoinformatics
きわめてワタクシゴトなのですが、CBIという学会の年会で配布されるソリューションガイドといふものに、駄文を載せていただく機会を頂きました(ありがたや)
Yet Another Drug Discoveryとかいうタイトルで、(自分のパートは)かなり好き勝手に書かせてもらいましたが、目を通す機会などあったら、感想をこそっとでもズバッとでもきかせていただけるとありがたいかなと。
と、ふと思ったのでありますヨ。
ネタ的には、イントラにRSSリーダーを入れてあれとかこれとかRSS化してみようとか、pubmedに特化したdel.icio.usを作ってみたとか、まぁそんな感じです。
そして最近は、feed on feedsよりもユーザビリティ高そうなTiny Tiny RSSでも入れてみようかと思っている。
13072006 meadow
meadowを3.0にあげてパッケージを全部インストールしたらftpアクセスが出来なくなった。
MeadowFAQ - Meadow3.00で動かないものがあります
ange-ftp は Meadow3.00/Emacs22 からは tramp というパッケージに統合され、外部メソッドとして ftp の他に ssh, scp, rcp, su, smb 等が使えるようになりました。デフォルトメソッドは ssh になりました。
ange-ftpがなくなったらしいのと、デフォルトがsshになったせいらしい。ターミナルはPoderosa使ってssh2アクセスしているが、meadowは歴史的な経緯により(単に面倒だったともいう)ftpアクセスだった。というわけで、これを気にsshに移行しようと思い立ったわけだ。
sshクライアントはPuttyのzipを落としてきて、解答したらProgram filesにでも放り込んで、pathをきっておく。
で、あとはホームディレクトリのdot.emacsを.emacsにリネームするだけ。
ふつうのHaskellプログラミングも、とうとう11章へ。中盤も佳境をむかえております。
モナドが~~
わかりません、さっぱり。他の言語での例があったので少し読んでみた。
檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」
振り返れば我々は; 関数から副作用を取り除き(汚れ作業はCountupMainに押しつけ)、代わりに戻り値に副作用の意図を詰め込み、それによって失われた関数結合の自由さを関数の拡張により取り戻しました。
javascriptもperlのコードもなんとなくわかったような気にはなったんだけど、ふつうのHaskellプログラミングに戻ると混乱してしまうヨ。
週末にでも幾つかコードを書いてみてよく考えることにしよう。
10072006 chemoinformatics
ケムインフォマティクスに虚空投げで知ったmol2psを試した。綺麗!

当分これに落ち着く予感。思えば色々試したもんだ。
長い道のりだった。
さて、mol2psはpascalで書かれてますよ。初pascalというわけで、バイナリを使わず、若気のいたりで? コンパイルしてみることにした。
まずfpcは普通にyumでいれる。
yum install fpc
fpcがインストールされたら早速コンパイル。
fpc mol2ps.pas -S2 -Xs -OG -Or -O2u -Op1
出来たmol2psを/usr/local/binにコピー(OKこんだけ)
ただ、これだとperlで使いにくいので、p2cでcコードに変換してからh2xs使ってPerlのモジュールに出来たらいいなぁってことで、やってみた。
p2cはpascalをcのコードに変換してくれるらしい。p2c-1.22-14.src.rpmとってきてリビルド
rpmbuild --rebuild p2c-1.22-14.src.rpm
するとp2cコマンドが出来るので
p2c mol2ps.pas
できたCのソースをいじってh2xsでperlのモジュールにすればいいはずなんだが、うまくCのコードに変換されなかった。どうもS2オプションがよくないらしい。
-M<x> set language mode to <x> -Mfpc free pascal dialect (default) -Mobjfpc switch some Delphi 2 extensions on -Mdelphi tries to be Delphi compatible -S<x> syntax options: -S2 same as -Mobjfpc
うーん4000行くらいか、、、、頑張ってperlに移植したい気もするなぁ。GSAPIなんかと組み合わせれば個人的に使い勝手のいいモジュールが出来そうな気がするんだが。
09072006 javascript
koyachiの日記 - Table,Caching,Memoize,Closure,Profilerのクロージャの話をフムフムと読んでたら、
このプログラムでは各セルの色の濃さをクロージャを使って保持しています。makeHandler という関数の depth という変数がそれです。クロージャを使うと、個々のイベントハンドラごとに独立した状態を簡単に持たせされるのがポイントです。
お、そういえば一昨日、ミスドでお出かけレジャーシート当たったよな
スクラッチで
というわけで、こんなん作ってみました。
こすると絵がでます。javascriptはいやなブログのcanvas.jsをちょっと改変して、マウスが乗るとopacity下げるようにした。あとMozOpacity使ってるのでMozillaでないと動かないと思う。
ランダムで10回に一回くらい当たりの画像が出るようにしたりすれば、擦りがいが出るかも。
06072006 r
Practical Regression and Anova in Rの9章がprincipal component regression (PCR)とかPartial Least Squares(PLS)に割かれている。
その中でRidge Regressionってのがいまいちわからないので、
昔、購入してめくったけど、ちゃんと読んでないやってことで、これまた読むことにした。
色々統計関連の書籍を読みながら、わからないとこはまずRjpWikiで探すと理解が深まっていいと思うようになった。少しは進歩したのかな?
Lightbox JSを触ってみた。やっぱいい感じ。でも右下にcloseのアイコンとか出るはずなのに出なかったりするのは、cssの設定が悪いのかな。
lightbox用に小さい画像と、大きい画像(クリックしたときに表示される画像)の二つを用意しないといけないが、この作業を、いちち手でやるのは面倒だということで、windowsでperlスクリプトを ドラッグドロップ化したのでお手軽になった。でもユッキー様をあやしながら書いたのでスクリプトはやっつけ。名前考えるのが面倒というありがちな理由で、とりあえずプロセス番号がファイル名で且つCドライブに吐き出すようにしておいた。
use strict; use Image::Magick; ### image size my $width = 480; my $height = 360; my $width_small = 160; my $height_small = 120; my $imgfile = shift or die "couldn't read ImageFile\n"; $imgfile =~ /\\(\w+).(jpg|JPG)$/; my $filename = $1; ### output #my $output = "C:/" . $filename .".jpg"; #my $output_small = "C:/" . $filename ."_small.jpg"; my $output = "C:/".$$.".jpg"; my $output_small = "C:/".$$."_small.jpg"; my $image = Image::Magick->new; $image->Read($imgfile); $image->Resize(width=>$width, height=>$height, blur=>0.8); $image->Set(quality=>60); $image->Write($output); $image->Resize(width=>$width_small, height=>$height_small); $image->Write($output_small); undef $image; exit;
ちなみに、Image::Magickモジュールのインストールは楽だった。imagemagickをインストールする際に「perlでモジュールとして使う」にチェックを入れるだけ。
実際は、もうちょっとちゃんと書いて、サーバーにftpしつつ、アップロードした画像をlightboxで扱うためのhtmlを吐き出すコードまで書いておけば申し分ないな。
いつも使っている画像アップロード用CGIをいじるという選択肢もあったんだけど、ドロップレット風味で実用っぽいものをひとつくらい作ってみたかったので今回はWindowsプログラミング。
他には実際にやってみて思ったのは、縮小画像を載せるんじゃなくて画像を切り取りつつ、小さくしたものをアイコン的に表示させておくほうがいいなと思った。単なる拡大縮小じゃつまらん。とか考えると、gimp使ったほうがいいのか?
いやいや、これを敢えてCGI+javascriptでやるべきでしょう
みたいな禅問答のはじまりだ。手段が目的化しつつあることにはうすうす気付いているけどネ。
04072006 chemoinformatics bioinformatics Perl
Natureからの求人メールでおもろいもん見つけた。
分子設計、ケモインフォマティクス、バイオインフォマティクスに関する高度な専門知識・技術を有し、創薬研究に活用できる能力を有する方。プログラミング(Perl、JAVAなど)の経験があり
JAVAってのはありがちなんだけど、Perlまで入れてるのは現場の意向かな?
03072006 Haskell r Biohaskell
本日普通のHaskellプログラミングの7章まで読み終えた。そろそろ、具体的な例題解いてみたいなぁと思ったが、3部13章のWIkiをつくってみようの章まではあと5つもある。今のとこ、ここまで読んで、実用Perlプログラミングみたいに他の言語との違いみたいなページを割いてくれるとよかったりと思った。それ以外は、unixのコマンドをtailとかheadとかをhaskellで書こうみたいな感じにすすむので理解はしやすいヨ。
実際に、どんな感じの問題に適用すんのがいいのかなぁとか、考えたときに、ゲノムみたいな大きい配列操作すんのに適してるも。もしかしてbioinformaticsでなんかあるかなと探したらあった。
論文あったのでアブスト眺めたけど、DPってhaskell向きなのかな?まだ、いまいちわかってなさげ。
Rによる統計的プログラミング でRと比較しているのだから統計的な(というより数学的な)記述にむいているのは感覚的にわかるんだけどなぁ。
ということはchemoinformaticsでの利用例あるだろ、とか思うんだが見当たらない。