2011/12/14 21:13:12
Pythonのソースをダウンロードしようとしたらxz形式のサイズが妙に小さかったので、なんじゃこれと思ったら昔見たことあったわと。
macbookでも使いたかったので
brew install xz
brew install gnu-tar
で入れた。ちなみにコマンドはtarじゃなくてgtarになる。
圧縮は
gtar Jcf sample.tar.xz sample
解凍は
コマンドもわかりやすいので今度からはこっちを使おうっと。
2011/11/26 09:44:35
PhoneGap1.2がMacOS10.6以降じゃないとダメらしいので、アップグレードした。この前の飲み会で誰かがLionだとメモリを食うから増設したとか言ってたのでLionにはしないでおいた。
ついでに、Traktorもtraktor pro2にしてみた。
こっちはヘッドフォンから音が出なくてちょっとトラブったがoutputの設定をきちんと見なおして解決。
2011/06/10 05:44:03
pep8をGrowlで通知させるようにして数日経つが、Emacsを左右に分割するようになった(今までは上下に分割)
pep8の一行79文字以内におさめるという規約のおかげで左右に分割すると読みやすい。

ちょっと生産性が上がった感がある。
2011/04/21 05:46:22
macbookにHadoopを入れたのだけどきちんと起動してない。jpsで見てみるとNameNodeが起動していないことが原因のようだった。
ログを見てみると、設定ファイルに記述したlocalhostじゃなくてマシン名+".local"(hostnameで表示される文字列)で立ち上げようとしてた。理由は良くわからんがとりあえず設定ファイルをこちらの名前で書き直す。
さらに、パスワードなしsshアクセスできるように.ssh/authorized_keysに追加しておく。
Hadoop
Tom White
オライリージャパン / 4830円 ( 2010-01-25 )
これでうまくうごいたので、早速HadoopStreamingをやってみる。サンプルコードはHadoop Streaming - naoyaのはてなダイアリーから。
$ hadoop jar hadoop-0.20.2/contrib/streaming/hadoop-0.20.2-streaming.jar \
-input log.txt -output log.out -mapper map.pl -reducer reduce.pl
...
11/04/21 05:21:24 INFO streaming.StreamJob: map 100% reduce 0%
11/04/21 05:21:33 INFO streaming.StreamJob: map 100% reduce 100%
11/04/21 05:21:36 INFO streaming.StreamJob: Job complete: job_201104202054_0004
11/04/21 05:21:36 INFO streaming.StreamJob: Output: log.out
OKっぽいのでアウトプットを見てみる
$ hadoop fs -cat log.out/part-00000
403 3
304 3786
206 2
400 11
313 14
200 49190
302 48
301 223
404 2476
あとは擬似分散環境じゃなくてちゃんとした分散環境を構築すればいいですね。
バーチャルで化合物つくると組み合わせ爆発おこしてその先のハンドリングに難儀するのでchemoinformaticsでもMapReduceうまく使えないかなと思っているわけです。
参考
2011/04/15 08:08:40
オライリーの本みながら0.21.0使うとはまるので、0.20.2を入れる。
conf/hadoop-env.shのJAVA_HOMEを設定
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
動作確認でバージョンを表示させてみる。
$ hadoop-0.20.2/bin/hadoop version
Hadoop 0.20.2
Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707
Compiled by chrisdo on Fri Feb 19 08:07:34 UTC 2010
ちゃんと動いてれば.bashrcに追加
export HADOOP_INSTALL=/Users/kzfm/hadoop-0.20.2
export PATH=$HADOOP_INSTALL/bin:$PATH
あとはHadoop本の通りに擬似分散モードで動かす。ちなみにmacbookでsshアクセスできるようにするには「システム環境設定」→「共有」→「リモートログイン」で。
Hadoop
Tom White
オライリージャパン / 4830円 ( 2010-01-25 )
hdfsを起動させるときには
$ hadoop namenode -format
$ start-dfs.sh
$ start-mapred.sh
hdfsを停止させるときには
$ stop-mapred.sh
$ stop-dfs.sh
2011/04/06 05:47:43
Sphinx使っているのだけどファイルを更新するたびにmake htmlと打って確認するのがめんどくさい。linuxだったらpyinotifyがあるんだけど、macbookでは使えない。
簡易コマンド書いた。
#!/usr/bin/env python
import os
from time import sleep, strftime, localtime
import sys
import commands
filename = sys.argv[1]
mycommand = sys.argv[2]
def get_mtime():
return os.stat(filename).st_mtime
mtime = get_mtime()
while 1:
sleep(1)
new_mtime = get_mtime()
if mtime != new_mtime:
mtime = new_mtime
commands.getoutput(mycommand)
print "done: %s ( %s )" % (mycommand, strftime("%a, %d %b %Y %H:%M:%S", localtime(mtime)))
監視対象のファイルを第一引数に、更新されたら実行するコマンドを第二引数に。
$ wdo docutils.rst "make html"
done: make html ( Wed, 06 Apr 2011 05:12:30 )
done: make html ( Wed, 06 Apr 2011 05:26:27 )
done: make html ( Wed, 06 Apr 2011 05:28:36 )
done: make html ( Wed, 06 Apr 2011 05:33:35 )
done: make html ( Wed, 06 Apr 2011 05:33:45 )
そうです、お分かりの通り早朝からdocutilsのソースを読んでいるのです。
ちなみにpyhttpd='python -m SimpleHTTPServer'っていうalias切っているので、makeで生成されたhtmlはlocalhost:8000で見てる
参考
2010/06/21 20:23:30
来週プレゼンするのにandroidリモコンが欲しいなぁと検索していたのだけど、macにbluetoothで通信するのが見つからなかった。
会場でWiFi使えるならRemoteDroidでいいのかもしれないけど、bluetoothでつなげたいのう。
windowsだったらPPT Remoteが使えるらしいんだけど。

2010/04/22 15:10:16
今日は子守で会社を休んでいるのでPRMLのサンプリングの章でもじっくり読んでやるかという有意義そうな予定を組んでいたのだけど、なぜかmacbookにblast入れたりしていた。
しかもportで入れたblastが古くてあれやなぁと。調べたら今時はBLAST+(ブラプラって読むの?)らしくて、Biopythonのほうも対応しているらしいのでこっち入れなあかんやろと、何が目的だっけ?そもそもblast入れる目的なんだっけ的なよくあるパターンに。
NCBIのダウンロードサイトからMac OSX用のをダウンロードすればよい。
/usr/loca/ncbi/binにインストールされるのでパスを切っておく。
コマンドは引数も含めていろいろ変更されていて、blastallのpオプションで指定していたのがそのままコマンドになっている。formatdbがmakeblastdbになっていたりとか。
引数も短縮形じゃなくて、意味がわかるようなものに変更されている。
blastp -query test.fasta -db pdbaa
あと、ホームディレクトリでblast実行すると以下のエラーが出るんだけど、最初どこに問題があるんだかわからなかった。
terminate called after throwing an instance of 'ncbi::CSeqDBException'
what(): NCBI C++ Exception:
"/am/ncbiapdata/release/blast/src/2.2.23/IntelMAC-universal/c++/GCC401-
ReleaseMT--IntelMAC-universal/../src/objtools/blast/seqdb_reader
/seqdbimpl.cpp", line 412: Error: OID not found
Abort trap
で、dbのファイルを絶対パスで指定してやると解決した。
blastp -query test.fasta -db /Users/kzfm/blast/db/pdbaa
ただしデータベースが見つからないときのエラーは
BLAST Database error: No alias or index file found for protein database
こんなんだからなぁ。
なんなんだろうね。バグ?
2010/04/03 15:58:31
>>> from mongokit import *
Traceback (most recent call last):
from magic import Magic
File "build/bdist.macosx-10.5-i386/egg/magic.py", line 112, in <module>
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/ctypes/__init__.py", line 353, in __init__
self._handle = _dlopen(self._name, mode)
OSError: dlopen(/opt/local/lib/libmagic.dylib, 6): image not found
これはfileが入ってないせいらしいので、portで入れとく
$ sudo port install file
---> Computing dependencies for file
---> Fetching file
---> Attempting to fetch file-5.04.tar.gz from http://distfiles.macports.org/file
---> Verifying checksum(s) for file
---> Extracting file
---> Applying patches to file
---> Configuring file
---> Building file
---> Staging file into destroot
---> Installing file @5.04_0
---> Activating file @5.04_0
---> Cleaning file
これでOK
2010/03/23 21:31:03
今日は一日、ネット接続なしの生活を送った。
今日、先日HDDを交換したmacbookを抱えて、新幹線に乗り込んだんだ。そして、三島を過ぎたあたりで、emobileが認識しないことに気づいたんだ。結局俺は大きいiPodを抱えてたってわけさ。そのドでかいiPodで行きも帰りもABCを見続けたぜ、、、FML
ハックマイライフがファックマイライフだったということで。
帰ってきて、emobileのユーティリティ入れなおしたけど認識しなくて、こことか参考にして、この方法は再起動したらつながるようになった。謎の挙動すぎる。
でかいiPodにはsoftware designのDVDが突っ込んであったので、couchdbで検索したら2009年9月号のDHHのインタビューが引っかかってきて、それが面白かった。HDDを増量したことで、pdfを気軽に突っ込んでおけてよい。
さて、新幹線の中で考えた。
amazon EC2でMPIクラスター組めるんだったら、GAMESS-FMOで量子化学計算からのアプローチでSBDDやるようなベンチャー出てきてもいいのかなと、ふと思ったりしたんだけど。ハイスループットな結晶化技術と組み合わせれば(定量的)構造-FMOエネルギー相関QSFmoRとか出来るうえに、クラスター自前で持たなくても計算できて、ノウハウもたまりやすくていいんじゃないかなぁと思ったのだけど。
量子化学計算は、計算するのもコツがいるし、仮に(そのコツ)の部分が克服されて誰でも計算できるようになったとしても、計算結果の解釈にはそれなりに理論的な知識が必要で(ただ数字読めばいいってわけではないし)、QSARとかQSPRとかと違って陳腐化しにくい知識だしだよねー的な話を業者の人としたことがあるんだけど、その業者の人曰く、
「だからブレークしないし人も流入してこないんですよねー」
!?