ペルソナ作って、それからどうするの?を読了

かなり消化不良だが読み終えた。

一応、僕はデザイン関係ではなくて、製薬の企業でデータマイニングとかの研究がメイン。マイニングするためのデータが欲しいという理由で、webのシステム組んだり、データを集約するための仕組みをあれこれ考えたりとかしている(今は)。だから、ターゲットとしている読者からは離れているかもしれない。

ProductName ペルソナ作って、それからどうするの? ユーザー中心デザインで作るWebサイト
棚橋 弘季
ソフトバンククリエイティブ / ?円 ( 2008-05-30 )


概要は正直辛かった。バックグラウンドが乏しいので、「誰の何とかが提唱したなんとかは」みたいに書かれても、なかなか自分の中でつながっていく感がなかった。ある程度分かっているヒトが読むとつながっていく感が感じられて面白いんだろうなとは思ったんだけど。第一部の概要は読んでて辛かったので途中で投げ出した、二週間くらい。他の本(ロベールとか)読んでて読むものがなくなってまた読み始めたって感じだった。

で、実践編はなかなか面白かった。ポストイットを張りながら読んだ。こっちを読んで考えながら一部の概論に立ち戻るという読み方が正解だったかなと、今は思う。

結局ペルソナっていうのは、TDDでのテストとかBDDの仕様に近いもんなのかなと。安心して戻ってこられるよりどころみたいな。

昔考えた人工無脳ケミストもそういった観点で捉え直せば、ケモインフォマティクスのためのアジャイルプロセス用ツールとして使えるかもしれんなと思った。

参考文献の中でおもしろそうなのを読んでいこうかな。

jythonでwebappサーバー

CherryPyはSignalがないぜよっていうエラーを解決できなさそうだったのであきらめた。

webpyはSSL関係のクラスをコメントアウトして830行あたりをちょっと修正すれば動く。

これで、cgiとかサーブレットみたいな面倒な手段をとらなくても、javaライブラリとwebserverをつなげられる。

例としてIUPAC名をCMLに変換するjavaライブラリであるopsinを利用したwebappを作る

import uk.ac.cam.ch.wwmm.opsin as opsin
import web
urls = (
    '/(.*)', 'hello' 
)
class hello:
    def GET(self, name):
        i = web.input(times=1)
        for c in range(int(i.times)):
            print opsin.NameToStructure().parseToCML(name).toXML()

if __name__ == "__main__": web.run(urls, globals())

http://localhost:8080/benzeneってアクセスするとbenzeneのCMLがブラウザに出力される。

OpenAstexViewer

molecular viewerがまた出たらしい。

OpenAstexViewer 3.0

あとでさわってみる。

WiiコントローラーでPyMolを制御する

ずいぶん前に加速度センサでPyMolを動かしてみたことがあるんだけど、案の定、

細かい制御が出来ないから使えねーよな、プレゼンだったら別にいいんだけどよ

みたいなコメントが入っていて、やっぱワイヤレスなセンサーバーが欲しいなあと買ってしまった。

これで、PyMolいじりだ。今回使用したMoleculeはMolecule of the MonthにのっていたAdrenergic Receptorsだ。ちなみに、僕はTopoisomerasesとかが気に入っているが。

IRセンサーのほうが位置を決めやすいので動かすのがやっぱ楽チン。

IRセンサーと加速度センサーの入力を取りたいだけだったらbluetoothでやりとりできるWiiコントローラのほうがGainerよりも楽だな。

PDBWiki

PDBWikiというのが立ち上がったらしい。どういうアノテーションが溜まっていくのか興味あり。

とか書いてたら、MDとかMOとかのアノテーションがついた結晶構造のデータベースがあってもいいじゃないかと思った。PDBのデータを見ていて思うのはインタラクションに関するデータがないのがアレかなと思ってたりするので。リガンドとたんぱく質の相互作用に関する知識を深めていけるような何かがあればいいなぁ。

PDB-631Gプロジェクトとかそんなかんじの。

またはMolecule of the Month みたいな感じで、Interaction of the Monthとか。

Sigma-Aldrich ToolBar

Sigma-Aldrich ToolBar

ふむ。でもあんまり便利感がないなー。っだって、長い番号打ち込まないといけないんでしょ?

構造式のgooglesuggestみたいなのがあればいいんだけどね。

論文からdoiを抜き出すperlのサンプル

文献はpdfを自作のイントラソーシャルブックマークサービスっぽいのを使って管理しているのだけど、pubmedにのるよりもペーパーの方が早かったりすることのほうが多く、pmidをつけることが出来なくてもどかしい思いをしてばかりいる。

use strict;
use warnings;
use CAM::PDF;

my $pdfname = $ARGV[0];
my $pdf = CAM::PDF->new($pdfname);
my $page1 = $pdf->getPageContent(1);
my ($result) = $page1 =~ m!\d+\.\d+\/.+?(?=\))!gx;
print $result if $result;

抽出したdoiをeutilsに問い合わせて、あとは適度な塩加減を加えつつゴニョルとよさげ。

で、そのソーシャルブックマークサービスはpmidをプライマリキーにしてるもんだから始末に負えない、というかそのうち、匠的にリフォームする気概で、今日もだましだまし使った。

マルチパラダイム SBDD

SBDD(Structure-Based Drug Design)って、結局モデルの精度にあわせてMDとかMOとか視点を変えなきゃいけないからマルチパラダイムだよなと思った。

あとそろそろ単なるMO計算も飽きてきたので、今年はMO計算とQSARをうまいこと組み合わせた手法とか編み出してみたい。あと、ケミストの合成ロジックをエミュレートするような無限ストリーム(仮)を実装したい。

あーでも、他のことに興味がいっちゃうんだよなー。

MAWP 10章はGeometric Algorithm

さわりだけなので、さらっとしている。

ProductName Mastering Algorithms With Perl
Jon Orwant,Jarkko Hietaniemi,John MacDonald
Oreilly & Associates Inc / ¥ 4,054 (1999-07)
通常3~5週間以内に発送

ちゃんと学びたければC++とかの本を探したほうがよいのかな?pymolとかAvogadroのソースを読むのがいいのかもしれんなぁ。

ドッキングシミュレーションとか色々気に入らない部分があるので、手を加えたい部分があったりとか、Caverみたいなの自分で書いてみたかったりするんだけどそういう書籍はないもんかな。

MAWP 8章はグラフ

Graphなどを使ってグラフ

ProductName Mastering Algorithms With Perl
Jon Orwant
Oreilly & Associates Inc / 2960円 ( 1999-07 )


  • Kruskal's minimum spanning tree
  • Prim's minimum spanning tree
  • Dijkstra's SSSP

なんかをコードを追いながら理解することができた。Primはこっちの説明が分かりやすくてお奨め。

Pythonだとnetworkxがあってこっちは視覚化できてよさげ。

chemoinformaticsでグラフは化合物の構造表現なんかでよく使う。というか、売り物ツールが勝手にやってくれるのであまりちゃんと理解してなかったんだけど、アルゴリズムしらないで理解しないで使うと痛い目見たりとか、中身がよく分からんので痒いところに手が届かない感じが嫌だなと思うことがあったので、MAWP読んで基本的なところをちょっと押さえた気になった。

そういえば、gSpanなんかで、部分構造いじってみたいと思ってたんだけど、放ってあるなぁ。