Pycon APAC 2013の感想メモ
Pycon2013にいったので、講演のメモなど。
2日目は台風のせいで帰れなくなるじゃないかと思って行かなかったんですが、実際そうでもなかったようで惜しいことをしました。
おぼえたこと。英語わからない、Sphinxおもしろそう、Pythonの環境はVirtualenvおすすめ、WindowsAzureは途上感ある、英語わからない。
GoogleComputeEngineとAmazonSebServiceとWindowsAzureで競争して、どんどんプログラマブルな仮想環境が使いやすくなってほしいと思いました。
「基調講演」Georg Brandl
python and Neutrons
python3.Xのパッケージ増えている
The FRM2で pythonを使用している
中性子をX線の用に使って走査することができる
中性子の計測装置
いろいろな条件、いろいろな操作
それらの装置をしっかりコントロールしたい
たくさんのハードウエア
自動化
新しい機器が増える
使いやすくないといけない
プログラマと物理学者
NICOS
新しいPythonも挙動
デーモンをキャッシュするとき
ドキュメンテーション
ユーザー体験
NameSpaceハック
デバッキング
PyEval_SetTrace()
メタクラス
デコレーター
コンパイルについて
「パッケージングの今と未来」@Odagiri
http://www.slideshare.net/aodag/ss-26183017
パッケージングの基礎知識
なぜパッケージングするのか?
人に使ってもらうため
distutils
setup.pyに情報書いて実行すればいい
パッケージングの今
Pypaツール群
Pypa PythonPackagingAuthority
パッケージングツールをメンテナスしてる
pypaツール
virtualenv ←これ入れればOk
setuptool
pip
setuptools/distrivute
distributeはsetuptoolsにマージされた
entry-point
起動時点を指定する仕組み
setuptoolsの使い方
setup.pyの書き方とか
パッケージの未来
wheel
distlib
まとめ
今はSetuptoolsとsetup.pyの使い方を覚えておく
今後はwheelとかに注目する
「Sphinx入門」@tell_k
Sphnx概要
ドキュメンテーションツール
pipでインストールできる
.rstファイルが元データとなる
いろんな形式に出力できる
テーマを設定できる。
変更できるし、改造できる。
ドキュメント作成に
自動ビルドにはWatchdogを使う
自動ビルドにjekins
そういうことをやってくれるサービスReadTheDocs
APIリファレンス
sphinx.etx.autodoc
DB定義
よく使う拡張
参考
Sphinxx-User.jp
アドベントカレンダー
カンファレンス
QA
電子書籍特化ならRubyのReview使うと捗る
「Django逆入門」Nozomu Kaneko
https://speakerdeck.com/knzm/pyramid-karafalse-django-ni-ru-men
pyramid(ピラミッド)
django
自前でパッケージ持ってる
Pyramid
都度読み込んでる
Requestオブジェクトのとりかた
だいたい同じ
ORマッパー
相違点いくつか
ビュー
相違点いくつか
デバッグツール
django-debug-toobar
ルーティング
スキーママイグレーション
djangoはsouth
sqlalceammyはalembic
フォーム
テストランナー
「VFX業界におけるPython活用例」@alpaca3
CGプロダクションのプログラマ
映像制作の支援
VFXの製作工程
プリプロ
脚本
絵コンテ
絵の方向性
レイアウト
モデリング
3Dデータを作成
リギング
動かせるようにする
アニメーション
動かす
エフェクト
ライティング
コンポジット
各素材を合成
ルックを決める
編集
タイミング
カラコレ
いろんな作業でいろんなソフトを使う
無駄な作業
クリエイティブでない作業
自動化・効率化
効率化のための機能拡張
業界として
デザイナーが圧倒的多数
スクリプト出来る人いない
現場とツール制作兼任
DSLの弱いところ
クラスの概念なし
ネットワークなし
Maya8.5
Python対応
Pythonの恩恵
ソフトに依存させないで使える
実現可能な幅の広がり
ネットワークやDB、ライブラリを使える
ツール2
スクリプトを整理するためのアプリ
GUIへの影響
Qtの採用
PyQt、PySlide
Pythonベース、Pythonで書かれたソフト
Nuke,Katana、Trac、TACTIC
インハウスをOSSにしていたり
プロダクションの論文検証・実装活用
NumPyやSciPy
Python2.Xが主流
TDとTR
TD
現場に近いプログラマ
納期が短い(今日中とか
デザイナーとプログラマ
元デザイナー
RD
プロジェクトには属さない
長期開発
海外だともっと細かく分類
VFX業界にPythonは普及してる
プログラマを専業で雇うところは少ない
海外では多い
「Programing AWS with Python」@understeer
http://www.slideshare.net/understeer/20130914-py-conapacawspublic
AWSをPythonで使う話
AWSのSDK
AWSのサービス操作
ManagementConsole
コマンドラインツール
AWSCLI
いずれのツールもAPIを操作しているだけ
AWSSDK
現在はPerl以外のメジャーな言語版で出ている
Boto
Python用のAWSSDK
AmazonWebServiceだけではなく、GoogleStorage、OpenStack、Eucalyptusでも使える。
JavaとBotoはAPI全てにほぼ対応している
DynamoDBの操作例
デモ
例
DyamicDNSとして使える
ServerSwapping
ScaleUp
まとめ
SDKを使うことでAWSをアプリのバックエンドで利用可
AWSはコーディングする方の力を最大限に引き出せる
「Python on WindowsAzureの心得」高橋和也
WindowsAzure概要
仮想マシン
汎用IaaS
WindowsServer
CentOS
Ubuntu
SUSE
クラウドサービス
汎用PaaS
専用SDKで作成したアプリをWindowsServer上にデプロイできる
Webサイト
Git,FTP等でデプロイ可能
最大10サイトまで
Django/flaskをサポート
開発ツール
PythonToolsForVisualStudio
WindowsAzureSDKforPython
仮想マシンの注意点
Linux仮想マシンの初期状態ではスワップ領域が構成されてない
/etc/waagent.cfgを編集しないといけない
一時領域ディスクにファイルを置かない
再起動で消される
インスタンス上のPythonは2.7
クラウドサービス独特のルール
SDK
設定ファイル
デプロイ
ライフサイクル
パッケージの作成方法によりデプロイ後のPythonインタプリタの構成が異なる
PythonToolsForVisualStudio
Virtualenvの内容をまとめてデプロイ
WindowsAzurePowerShell
必要なライブラリでも自動デプロイされないので、自分でいれる
Djangoのバージョンが古い
メンテナンスダウンへの対策
仮想マシン
可用性セットを構成して、ダウンを回避
クラウドサービス
Webサイトの注意点
Python2.7
Django1.4
pip等実行できないため、必要なライブラリはすべて抱え込まないといけない
AzureStorageの注意点
複雑な検索は遅い
SQLDatabaseの注意点
1DBで150GB
サポートされないSQL
コネクション強制切断されることがあるため、リトライロジックが必須
SQLserver2008以降のデータ型が使えない(datetime2)
同名DBでも作成のたびに日割り料金が発生する
仮想ネットワークの注意点
IPアドレスの永続期間
IPはDHCP割り当て
仮想マシンを停止すると変わる(再起動はOK)
まとめ
WindowsAzureでPythonを使える。ツールもある。
注意点がいくつかある。
「Running your Python applications on Google Computer Engine」BrainDorsey
UsingComputeEngine
Demo
VirtualMactine
BlockStorage
snapshot
Networking
Building&PortingYourApplication
QA