ハッピークリエーター★たかいよしかず

幸せそうなキャラクターデザインするようなひとの思考はどうなっているのかな?と思って読んでみた。

基本的にポジティブ。

ここらへんのシリーズを薦めていたが、面白いんだろうか?

今度ブックオフにでも探索に行ってみるか。

ProductName 3月のライオン (1) (ジェッツコミックス)
羽海野 チカ
白泉社 / 490円 ( 2008-02-22 )


Pythonプロフェッショナルプログラミングを読んだ

昨日、近所の本屋に行ったら追いてあったので、衝動買いしてそのまま読み始めて、今日仕事から帰ってきて少しよんだら読み終わったので、400ページ超えの厚さの割にはさくさく読める。

ProductName Pythonプロフェッショナルプログラミング
ビープラウド
秀和システム / 2940円 ( 2012-03-26 )


広く浅めのエキスパートPythonプログラミングかなぁと思っていたけど、カバーしている範囲が結構違っていて、本書はチーム開発のやり方with Pythonっていう感じかな

virtualenvを使った仮想環境の構築とMercurialでのバージョン管理といった基本からはじまって、 ITS(Trac)のインストールと運用のコツ、Sphinxを使ったドキュメント基盤の整備とかJenkinsを利用した継続的インテグレーションの話がPart1,2のチーム開発のサイクルで書かれている。書籍としてまとまっていると手っ取り早く把握できていいですね。僕はココらへんをブログを漁ったりして仕入れたので若干苦労した。

さて、僕が興味を持ったのがPart3のサービス公開のところで、Fabricの使い方とかgunicorn,nginxの使い方、GAE周りの情報だったので非常に参考になった。

ちなみにuWSGIも気になってるんだけどその話題はなかったと思う。いまだとどっちを使うのがいいんだろうか。 apache+mod_wsgiで動かしているこのブログもnginxに移行したい。

あとpip freeze便利。これでインストールしたモジュールをテキストファイルにリスト化しておいて、

$ pip install -r list.txt

ってやれば必要なモジュールを入れられるのでvirtualenvと相性がいいですね。

というわけで最近のFlask開発で入れてるモジュールをリスト化してみた。

Flask==0.8
Flask-DebugToolbar==0.6.2
Flask-SQLAlchemy==0.15
Flask-Script==0.3.3
Jinja2==2.6
SQLAlchemy==0.7.6
Werkzeug==0.8.3
argparse==1.2.1
blinker==1.2
pyjade==1.0.1
wsgiref==0.1.2

pyjadeはいいですね。

pyjadeを1.X系にあげた

いままで0.6.1を使っていたのだけど、バージョンが上がってJade互換になったそうなので週末を使って自分のブログシステムに対応させていた。

テンプレート周りの設定が色々変わっていてエラー吐きまくったんだけど、出来上がったテンプレートはJinjaっぽさ({{ }})が排除されていい感じに洗練されてきている。

JadeがヨサゲなのはBrunchと一緒に開発すればサーバーサイド(Flask)とクライアントサイド(backbone.js)で同じテンプレート言語を使えるっていうのもありそう。そういうwebアプリを作ってみたいと思っているが。

それから、1.0はutf-8のテキストを渡すとエラーになるバグがあったのでgithubのissueに登録したらすぐに対応してもらえて1.01になったので、サーバーのpyjadeのバージョンを上げて動作を確認してデプロイして、酒を飲みながらこのエントリを書いている。ソーシャルコーディングってサイコーですね。製薬系みたいな閉鎖系では味わえないスピード感がある。

0.6.1から1.0での変更点

url_forの使い方

ダブルクォーテーションとか中括弧が省略できるようになっている

autoescape

0.6.1だと

autoescape(false)= entry.content

ってやればJinjaのautoescapeが使えたんだけど1.0ではautoescapeタグになってしまう。

.contents= entry.content|safe

ってやってフィルタをかますようにした。

千代の光 真

本醸造か特本

1333269076

キリッとしていいるんだけど、個人的にはもうちょとっと酸が効きつつやんわりしているほうが好み。

カーリルのレシピ

娘の本のチョイスをするのに参考にしている。

なかなかよさそうな機能の割に、いまいち使われてないのが残念。

本を「人生のスパイスに」。そんな、本を紹介したい人が集まるコミュニティです。 作成されたレシピは、全国のカーリルユーザーだけでなく、インターネットを通じていろんなひとに届けることができます。

今日の畑(120331)

雨が降って畑にいけない。大根とか人参の発芽状況をチェックしたかったのに。

寝室の窓際で育てているズッキーニの苗。

1333173889

オクラとか、ゴーヤもそろそろ種まきしないとなぁ。

pygamess 0.3.0

バグフィックスしたり基底関数まわりを追加してバージョンをちょっとあげた。

一番大きな変更はデフォルトでrungmsを使わないようにしたことで 直接ddikickを叩くことにしたことか。それでgamessのパスをどうしようかなぁと。

とりあえずコンストラクタで直接指定してない場合は

  1. 環境変数GAMESS_PATHを調べる
  2. PATHの中からddikick.xのあるディレクトリを探して、それを選択する

それとは別にrungmsのpathを探したりもしている(僕の場合はrungmsを/usr/local/binに置いている)のでちょっとくどいやり方になってしまった。

それから、コンストラクタにオプションを渡せるようにしたんだけど、これだと、gamessのインプットいじるのと変わらないので、もう少しスマートな指定方法も用意したほうがいいかなぁと思った。

水分子を基底関数を変えながらエネルギーを計算する例。このくらいだったら対話環境でサクッとうごく。

>>> import pybel
>>> from pygamess import Gamess
>>> g = Gamess()
>>> mol = pybel.readstring('smi', 'O')
>>> mol.make3D()
>>> g.run(mol).energy
-74.96450135
>>> g.run_type('optimize')
>>> g.run(mol).energy
-74.9659012146
>>> g.basis_set('3-21G')
>>> g.run(mol).energy
-75.585959758
>>> g.basis_set('6-31G')
>>> g.run(mol).energy
-75.9853591564
>>> g.basis_set('6-311G')
>>> g.run(mol).energy
-76.0109546389
>>> g.basis_set('6-31G*')
>>> g.run(mol).energy
-76.0107465155
>>> g.basis_set('6-31G**')
>>> g.run(mol).energy
-76.0236150193

最近ちょっと困っているのが、構造最適化で収束しないのをどうやって収束させるかという。6-31G*くらいでmopacみたいなノリで計算できるようにしたい。

素晴らしいスピン多重度

openbabelのコンバーターがバグってる。

>>> import pybel
>>> from pygamess import Gamess
>>> g = Gamess()
>>> mol = pybel.readstring('smi','C')
>>> mol.make3D()
>>> nmol = g.run(mol)
>>> nmol.OBMol.GetTotalSpinMultiplicity()
1882919584

Between The Lines

CAMO & KROOKEDはちょっとイケイケすぎるというか疾走感が強すぎて、聴き疲れしてしまうという理由から超好きというわけではないのだけど、remixは期待度大。

ProductName Between The Lines
CAMO & KROOKED
HOSPITAL / 1600円 ( 2012-03-26 )


元ネタのほうは買ってない

ProductName Cross The Line
CAMO & KROOKED
HOSPITAL / 1486円 ( 2011-10-01 )


今日の最後のほう

jazzyなdrum'n'bass -> jazz -> technoっていう展開が気持ちよかった

Sentimental Moods / Makoto
King Of Sunshine / Nicola Conte
Ghost Song (Joris Voorn Remix) / Slam
Pique-E / Tanzmuzik

ProductName SOULED OUT
MAKOTO
selective records / 2393円 ( 2011-10-05 )


ProductName アザー・ディレクションズ(CCCD)
ニコラ・コンテ
EMIミュージック・ジャパン / ?円 ( 2004-10-14 )


ProductName Fabric 9
Slam
Fabric / 1255円 ( 2008-06-23 )


ジャケと曲の構成が違う。自分のもっているのはRisingHigh版だった。

ProductName シンセカイ
タンツムジーク
ソニーレコード / ?円 ( 1995-07-21 )