てきとうなメモ

本の感想とか技術メモとか

PyCon APAC 2013 1日目

Pythonはあまり使っていないのだが、ちょっと行ってみた。

基調講演 - Georg Brandl

Python3.2と3.3のリリースマネージャのGeorg Brandiさんによる基調講演。3.3の内容と3.4移行の内容の紹介、あと、Georg Brandlさんは現在大学で物理学を学んでいて、素粒子物理学系の実験でPythonを使っているらしい。

パッケージングの今と未来 - aodag

pythonのパッケージングはよく知らなかったので参考になった。インストールマネージャとしてはeasy_installではなくpipを使えということと、パッケージのバイナリフォーマットのeggはPEP(pythonの関連技術仕様)になく独自に実装されてきたので、新しくwheelというフォーマットが作られているらしい。

あと、setuptoolsはバージョンアップ頻度が高いらしくちょっと恐いな。一日に3回バージョンアップとかあったらしい。

Sphinxと僕 - tell-k

Sphinxというドキュメンテーションシステムの紹介。WikiにもなるしJavaDocにもなるという感じで出力もHTMLとかPDFとかEPUBとかいろいろ可能らしい。PyCon APAC 2013のサイトこれ使っているらしいので、いろいろできそうだな。

Pythonユーザのための構成管理入門 - Takeshi KOMIYA

構成管理の紹介という感じでツールの使い方まではあまり踏み込んでいないという感じ。puppet/chef/ansible/fabric+cuisineを比較していてわかりやすかった。

PyConだけどChef押しでした。

VFX業界におけるPython活用事例 - 齊藤 弘

ゲームとかアニメとかのCGを作っている会社でのPythonをどのように利用しているかという話。

発表者はCG制作会社のプログラマなんだけども、日本ではデザイナーとは別に専門のプログラマを雇っている会社は少ないらしい。海外だと多いみたいだが。

Mayaとかのグラフィックツールは一応APIを公開しているんだけども、基本Cとかで使いづらい。で、スクリプト言語もサポートしている場合もあるけど、独自言語が多かったりする。でも、ここ最近(2006年以降)は各ツールでPythonがサポートされるようになり、この業界のデファクトスタンダードになっているらしい。

Graphillion: Python module for very large sets of graphs - Takeru Inoue

この続編作られていたんだな。

Graphillionというグラフ理論のアルゴリズムを扱う感じのライブラリ。動画にあるように全てのパスの数え上げなどが結構すぐに計算できる。

全てのパスはグラフの集合で表現できる。これを圧縮しているメモリ上に保持しているらしい(10x10の場合でも数百MB程度になる)

エッジがa,b,cの場合、エッジa,b,cのあるなしを01で表現して、(a,b,c)でグラフを表現できる。aとbからなるグラフは(1,1,0)とか。全てのパスなどはグラフの集合なので、グラフのあるなしをグラフ表現の2進数->10進数で変換した値の位置のビットを立てることで表現できる。グラフ(1,1,0)とグラフ(1,0,0)ならば00001010となる。そこから更に圧縮するらしいのだけども、それについては詳しく説明していなかったなあ

Cythonによる拡張モジュール開発

python2とCが混じったような言語CythonでC拡張が簡単に書けるよという話。C拡張はいまいちやったことがないのでよくわからんかった。

about mock - podhmo

pythonのモックライブラリmockについて。mockの使い方というよりかはmockの内部がどのように実装されているのかという話。だいたいは理解できたが、ちょっと発表資料がまずくて、コードのどの部分を話しているのかがわかりづらかった