写真はフィクション

先日ボードトリップにいった帰りの車のなかで、@logicraft

写真っていうのは撮るときには構図が既に頭の中にあってですな、シャッターを押すっていうのは単に切り取るだけであって云々

と熱く語っているのを、ふーんそんなもんなのかと聞いていたのだけど、その後にちょうどはじめての編集を読んだら、

写真っていうのは自分の主観に基づいて主題を決めてストーリーをつくるんだから、結局フィクションじゃないか!と腑に落ちた。写真って面白そう!って思ったので少し撮れるように勉強してみるかと。

ProductName デジカメ写真の構図が上手くなる見本帳
石田 徳幸
翔泳社 / 1764円 ( 2012-01-18 )


DJingも似たようなもんですね。主題を決めて曲を自分なりに解釈してストーリーとして編集し直す、その過程が楽しい。

ProductName DJ選曲術―何を考えながらDJは曲を選び、そしてつないでいるのか?
沖野 修也
リットーミュージック / 1260円 ( 2005-10 )


パズリカ

適当に読んで面白そうなパズルを解く

ProductName パズリカ
伴田 良輔
小学館 / 1575円 ( 2009-09-11 )


個人的には論理パズルのほうが好みだな。

リアルタイムメディアが動かす社会

すがやみつるさん、八木啓代さん、渋井哲也さんの話が面白かった。

FlaskのテストでAssertionError: Popped wrong request context.

Flask-Testingでテストを書いていて

@app.route('/json/tags')
@cache.cached(timeout=600)

みたいにキャッシュしているurlにgetすると

def test_get_json_tags(self):
    response = self.client.get("/json/tags")
    self.assert200(response)

タイトルのように

AssertionError: Popped wrong request context.

って怒られるんだが、どうすればいいのかわからない。

あと、テストブームが来たのでPython Testing: Beginner's Guideを注文してしまった。

ProductName Python Testing: Beginner's Guide
Daniel Arbuckle
Packt Publishing / 3220円 ( 2010-01-31 )


Flask-TestingのAssertion一覧

Flask-Testingを使おうと思ったんだけど、assertionの種類がドキュメントに載ってなかったのでソース読んだ。

assertTemplateUsed

指定されたテンプレートが使用されているかどうか調べる。

assertContext

コンテキスト中に指定された名前の変数が存在するかどうかと、その変数の値が想定通りかチェックする。

assertRedirects

リダイレクトされるかどうか。 status_codeが301か302であるかどうかを調べてる。

assertStatus

response statusが正しいか調べる。以下のメソッドも用意されている。

  • assert200
  • assert400
  • assert401
  • assert403
  • assert404
  • assert405

twill

twillっていうWeb browsing用のユーティリティも用意されているんだけどどういう時に使うのかよく分からなかった。codeとfindとnot findがあるのは分かるんだけど、テストにどう組み込んだらいいのかよくわからん。

編集とは企画を立て、人を集め、モノをつくるために、 言葉とイメージとデザインをアンサンブルすること

本(文章)の編集の話かなぁと思いながら読み始めたら全然違っていて良い意味で期待を裏切られた。「はじめての編集」は良書だと思いますね。

デザインにちょっとでも関わっていれば読むべきだろう。広義に捉えれば創薬の初期探索プロジェクトも一種の編集作業だと思ってよいだろうなぁと。

編集は、僕が思うに「情報による触発」であり、こちらに求められるのは主観性です。

ProductName はじめての編集 [単行本]
菅付雅信
アルテスパブリッシング / 1890円 ( 2012-01-12 )


メディアの進化の方向

  • フローとストック
  • 権威性と参加性
  • 記録性と創作性
  • 三次元的

ウェブのデザイン

ウェブの特性はその双方向性と更新性にあります。ですので、完成形というものが定まらず、独立した作品として語りにくいため、完結したデザインというよりも常にコンテンツが入れ替わるフォーマットとして語ったほうがいいと思います

読み終わってから改めて考えて見るに、写真で主題を決めて良い構図を探すのも一種の編集作業だし、研究プロジェクトで課題を決めて実験計画を立てるのも編集だよなぁと色々なものがつながった気がした。一種の悟り体験だったかも。

余談だが、読んでる最中にKJMのジャケット手がけた人だと知って懐かしくなった。たしか三条河原町のヴァージンメガストアで買ったはず。

ProductName KYOTO JAZZ MASSIVE
KYOTO JAZZ MASSIVE
フォーライフ ミュージックエンタテイメント / 2727円 ( 1994-04-21 )


macbookのメモリを4Gに増やした

相変わらず白いmacbook(2008 Intel Core 2 Duo 2.4GHz)を使っているが、そろそろ4年経つ

最近OSを10.6にあげたらスワップして固まることが頻発し、イライラさせられることが増えた。

そろそろ新しいのにチェンジかなぁと思っていたが、安いメモリを見つけたので増設してみた(といってもPC3だと同じ値段で8Gにできるのでお買い得かどうかは難しい判断)。

これでとりあえず固まってイライラさせられることはなくなったのでとりあえず良かったということにしよう。

pygamessをアップデートした

Gamessのpythonラッパーであるpygamessを0.2.0にアップデートした。

主な変更点

  • pybelに対応した
  • テストをpyvowsに移行した

pybelも使えるようになったので、よりpythonicにコードを書けるようになっていい感じ。 構造さえ用意すれば、こんなに簡単に量子化学計算ができて、量子化学計算にありがちなごちゃごちゃしたインプットファイルの作成から解放される。

>>> import pybel, pygamess
>>> g = pygamess.Gamess()
>>> mol = pybel.readfile("mol", "examples/ethane.mol").next()
>>> nmol = g.run(mol)
>>> nmol.energy
-78.30530748

それから、テストをpyvowsに変えてから快適です。自分にはBDDはあっているなぁ。

TODO

ドキュメントをきちんと書く

Node.jsのalwaysモジュールを見てcoffeeにはwatchオプションがあるよなと思った。

node.jsの開発時に。ファイル変更でサーバプロセスを自動再起動「Always」を読んで、Expressの開発に使えるかも!?と思ったが、よくよく考えたら自分はいつもcoffeescriptで書いてるんだった。

あとcoffeeコマンドには--watchってオプションがあるからモジュールに頼らなくてもいいのだよなぁ。

HTTPieは読みやすいcurl

これはちょっとテストしたい時に便利そう。

HTTPie - cURL for humans.