PyCon2009セッションタイトル訳

PyCon2009は、3/25-4/2にシカゴで行われた。

ホームページはこれ

分科会に分かれてさまざまなセッションが行われる。

セッションの概要はここにある

文意の取り違いなどあれば教えてほしい。

カンファレンスに使ったプレゼンテーションスライドや、実際の撮影されたビデオをこちらに上がっています。

1. Functional Testing of Desktop Applications

デスクトップアプリケーションの機能テスト

デスクトップアプリにおける機能テストは、可能なだけじゃなくて、アジャイル開発にとって重要な要素だ。 私がスプレッドシートを作った経験を基に、機能テストが、あなたのアプリや開発環境をどのように、改善するか語る。

3. Python enabling mobile media centers

Pythonで作るモバイルメディアセンター

小さなグループで、4ヶ月以内で、モバイルシステム向けの複雑なメディアセンターを作るのに、pythonがどのように、開発日数を削減できたか。

4. How to Give a Python Talk

Pythonトークをしよう。

このセッションは、「あなた」が、Pyconのようなイベントやローカルの集まりで、Pythonについて何をしゃべるかについて語る。

6. Introduction to Multiprocessing in Python

Pythonを使ったマルチプロセスプログラミング紹介

Python2.6や3.0のmultiprocessingパッケージが入った。このパッケージの利点、実践的な使用法を紹介する。マルチコアアプリや分散アプリでこのパッケージをどのように利用するか紹介する。

7. Building an Automated QA Infrastructure using Open-Source Python Tools

オープンソースPythonツールを利用した自動化QA環境の構築

自動化QAシステムを作るのは、大事であるが、骨が折れる。Buildbotを使うことで、あなたにあったカスタムのテストケースが作れる。

8. Learning and Teaching Python Programming: The Crunchy Way

CrunchyWay(WebベースのPython学習サイト):Pythonプログラムを覚える。教える。

Crunchyというブラウザーベースの、Pythonインタプリータ学習装置の紹介。

11. Reinteract: a better way to interact with Python

Reinteract:Pythonインタプリターの改良

伝統的なPythonでは、edit-runサイクルと、shellからのコマンドプロンプトという二つの方法が合った。今回紹介するReinteractは、その二つを融合する。 ワークシートを作り、pythonの実行環境に、画像やグラフを貼り付けられるようにする。このソフトは、サイエンスなどの、データ分析に最適である。

12. Pumping Iron into Python: Intro to FePy

.Net Frameworkをpythonへ。FePy紹介

Pythonが有名になるにつれてIronPythonも有名になってきた。このセッションでは、オープンソースの、.Netフレームワークである、Monoと、IronPythonのライブラリを集めているFePyについて紹介する。

13. Paver: easy build and deployment automation for Python projects

Paver:Pythonプロジェクト簡単ビルド自動配布ツール

Paverは、あなたのソフトウェアのビルドを楽に、配布を簡単にするツールです。

14. Python for CS1 Not Harmful to CS Majors (and good for everyone)

Pythonは、コンピュータサイエンスの専門教育に有害じゃない(そして、すべての人に良い)

ミシガン州立大学コンピュータ学部では初学者向けに、Pythonを使ったプログラミング教育を取り入れました。C++のみを学習した生徒に対して、最終試験の結果など遜色なかった。

15. Panel: Python VMs

パネル:PythonVMs

このセッションでは、Pythonの主要な四つの実装(CPython,IronPython,Jython,PyPy)のメンバーが一同に集まり、皆からの質問を受け付ける。

16. Designing Applications with Non-Relational Databases

リレーショナルではないデータベースの、アプリケーションデザイン

Google DataStore,Amazon SimpleDB eXist XML databaseなど、伝統的なRDBMSではないdatabaseが注目を集めている。このセッションでは、これらのうちどれがあなたのWebサイトに合っているか、強みと弱みは何かなどを、評価する。

17. Searching for Neutrinos Using Python at the Bottom of the World

地の底で、ニュートリノを探す、Pythonを使って。

南極にあるIceCudeニュートリノ観測装置において、Pythonは重要な役割を演じている。また、南極での、巨大で国際的な共同プロジェクトについて触れる。

22. How AlterWay releases web applications using ``zc.buildout``

zc.buildbot,Webアプリケーションをリリースする新しい手段

私の会社がPylons,Django,Ploneの開発、配布に毎日使っているzc.buildbotを紹介する。

23. Dabo: Rich Client Web Applications in 100% Python

Dabo:100%Pythonで作るリッチクライアントWebアプリケーション

Daboなら、Html,javascriptを使わずに、Pythonだけを使ってリッチWebアプリケーションを作れます。Daboを用いて、デスクトップアプリと、Webアプリを両方作る方法を教えます。

25. Panel: Object Relational Mappers: Philosophies and Design Decisions.

パネルデスカッション、ORマッパー、その設計思想とデザイン

python製の、ORマッパーの設計思想を比較する。

26. Coverage testing, the good and the bad.

カバレッジテスト、そのよしあし。

カバレッジテストは、あなたのコード品質を図る良い方法である。しかし、あなたのコードを、100%カバーするテストを書くのは、困難なだけでなく、要望からも離れていく。

27. Pinax: a platform for rapidly developing websites

Pinax;すばやくWebを開発できるプラットフォーム

Pinaxは、Djangoで作られたWebFrameworkです。このセッションは、Pinaxを紹介し、あなたのWebサイトの基盤としてどのように使えばよいかを紹介します。

28. Batteries Included! Python on Low Cost Tiny Embedded Wireless Devices

バッテリー同封!ローコストの無線デバイスにpythonを組み込んだ。

Pythonは、8bit組み込みシステムに対して、贅沢すぎると思いますか?SNAPpyを用いて、動的に組み込みデバイスを挙動を変えることができます。無線デバイスにPythonVMを組み込むこんだ、実際の成功したプロジェクトをご紹介します。

37. Using Windmill

WIndmillを使う

Windmillは、Webテストのベストソリューションである。Windmillを用いたテストの自動実行やそれに付属するデバッグや継続的な開発に有益なツールを紹介する。

38. On the importance of PyPI in delivering and building Python softwares - mirroring, fail-over and third-party package indexes.

PyPI-Pythonライブラリ配布サイト紹介

PyPIは、Pythonアプリケーション配布の、一角を占めている。二つの疑問が生じる。

  • PyPIが落ちていたらどうなる?
  • PyPIを使ってプライベートなパッケージを配布したい。

この二つの疑問にお答えする。

40. Twisted, AMQP and Thrift: Bridging messaging and RPC for building scalable distributed applications

Twisted,AMQP,Thrift,スケール可能な分散アプリケーションのための、メッセージ,RPC構築

AMQP,Thriftを用いて、スケーラブルで信頼性の高いRPCシステムを作った。AMQP,Thiftとも、Twistedによく適合していた。この二つのコンポーネントを使うことで、複雑な分散システムを、シンプルに柔軟に作ることができた。今回は、そのサンプルコードや、ベンチマーク、利点、他の代替手段を説明する。

41. Panel: Functional Testing Tools in Python

パネルデスカッション、関数テストツール

Web開発を効率化するために、関数テストは有益である。 今回のパネルは、以下の3部に分けて行う。

  1. 各フレームワークの簡単な紹介
  2. 各フレームワークどのようにアプリケーションに生かすか
  3. 質疑応答

42. Plugins and monkeypatching: increasing flexibility, dealing with inflexibility

プラグイン、モンキーパッチング、不変なものを柔軟に。

プラグイン構造を導入することで、他の人が容易にソフトウェアを拡張できる。

今回は、プラグインとモンキーパッチングを用いた実例を紹介し、他の方法に比べてどのような利点があるか紹介する。

44. State of TurboGears

TurboGears進捗報告

TurboGearsは、安定版1.xと次期版2.xがある。今回は、何が新しくなって、09年は何に注力するか報告する。 また、WSGIコンポーネント下での、web frameworkの意義について話す

46. About Python Namespaces (and Code Objects)

Pythonの名前空間について

Pythonの名前空間について、説明する。また、クロージャーを用いた名前空間について説明する。

47. Fedora pyInfrastructure

Fedora pyInfrastructure

Fedoraインフラストラクチャーは、TurboGearsを使って一年半かけて作られた。このシステムは、単なる開発環境ではなく、インフラチームの生活習慣でもある。

49. Concurrency and Distributed Computing with Python Today

Pythonにおける分散協調システムの現在

Python2.6から、従来のマルチスレッドに加えて、マルチプロセスモジュールも追加された。その紹介を行う。加えて、今日のPythonにおける分散協調のためのエコシステムについて説明する。

51. All I really need to know about [testable, maintainable, packagable] "scripts" ....

[テスト可能で、メンテナンス可能で、パッケージ可能な]スクリプトを書くために知っておくべきこと。

bashの代わりに、Pythonをシステムスクリプトとして利用する場面が増えてきた。テスト可能で、メンテナンス性があり、配布が容易なシステムスクリプトを書くための実践方法を紹介する。

53. Google App Engine: How to survive in Google's Ecosystem

Google App Engine:グーグル環境で生活するには。

以下を紹介する

  1. GoogleAppEnginePythonSDK
  2. GoogleのBigtable
  3. Google Web Toolkit そして、Django.
  4. AmazonWebServeiceを利用したコンテンツ配信

そして最後に、題名のとおり、このシステムのビジネス上の側面を紹介する。

56. Strategies For Testing Ajax Web Applications

Ajaxを多用したWebアプリの為の、テスト戦略

Pythonプログラマは、GET,POSTを使いhtmlが返ってくる開発に慣れている。しかし、Ajaxを多用するようなWebアプリ開発はそんなにシンプルではない。クライアントサイドでも、ブラウザ上で実行されるプログラムなど、シンプルなGET,POSTのテストをはみ出る領域が現れてきた。 そのようなサーバサイドとクライアントサイドの両方をカバーするアーキテクチャーを紹介する。

60. The (lack of) design patterns in Python

Pythonにおけるデザインパターンと(その欠如)

Python界隈では、Java界隈ほど、デザインパターンが会話にのぼらない。この会では、話題になった"Python isn’t just Java without the compile"をベースに、プログラミング言語における言語観のギャップについて考える。

61. Jython Progress

Jython進捗

今回のもっとも大きなトピックは、Jython2.5のリリースです。そして、2.7,3.0に導入される新機能について紹介します。PythonとJavaが組み合わされたことで、可能になったことをデモします。

63. A Whole New OpenGL, OpenGL 3.x in PyOpenGL

まったく新しいOpeGL,OpeGL 3.0とPyOpenGL

OpenGL 3.0は、OpenGl1.0のアーキテクチャーから大幅に変更されました。そのため、OpenGL1.0のアーキテクチャーをベースにしているPyOpenGLも、3.0が広まった際には、不具合が生じるでしょう。今回は、PyOpenGLをどのように移行させればよいかお話します。また、プログラマブルなOpenGLの利点について説明します。

65. Introduction to Python Profiling

Pythonプロファイラーの紹介

Pythonで書かれたプログラムは一般的に遅い、しかし、あなたがプロファイルを効果的に使えば、早いプログラムが書けます。 Pythonの組み込みモジュールcProfileを用いて、単純なコンソールアプリ、少し複雑なGUIアプリを計測し、どのように早くすればよいか示します。

66. The Browser Interface, Local Server (BILS) Application

ブラウザーをインタフェースにしたアプリケーション

Webアプリケーションは、従来のデスクトップアプリケーションに比べて多くの利点を持っている。BILSはローカルサーバと、WebAppを組み合わせて、デスクトップアプリケーションを作る。そのため、Webアプリと同じコードベースから、ローカルデスクトップアプリができる。

68. A Whirlwind Excursion through Writing a C Extension

C拡張を通した爆速拡張

Python-C APIを使った拡張について紹介する。以下の事例を紹介する。 メモリ管理、エラーハンドリング、型情報の作成について、紹介する。 Python-C拡張は、薄暗い深部への、冒険のようだが、私は皆さんが無事帰還できることを保証する。

70. A Configuration Comparison in Python

Pythonにおける設定ファイル比較

Pythonには、さまざまな設定ファイル管理ツールがそろっている。たとえば、csv,ConfigParser,ConfigObj,lxml,PyYaml,SimpleJsonなどだ。 今回は、これら設定ファイルツールの比較、書式の比較、どのような用途に適しているかなどを紹介する。

72. PyPy status talk.

PyPyの現状

PyPyは、Pythonで実装されたPythonである。当初は、純粋な研究プロジェクトだったが、現在は、柔軟で速いPythonインタープリターになっている。PyPyはCPythonの置き換えは意図していないが、DjangoやTwistedなどのアプリケーションが動く。昨年の活動について紹介し、未来のPyPyの姿について語る。

73. Python 2.6 and 3.0 compatibility

Python2.6 3.0の互換性

Python2.6は、3.0移行のためのさまざまなオプションを持つ。Python2.6,3.0両方であなたのコードを動かすためにどのようにコードを修正すればよいかを紹介する。

74. Making games in Python - Tools and techniques at CCP

Pythonで作るゲーム。CCPで使っているツールやテクニック紹介

CCPでは、Pythonを使って、EVE Onlineのようなゲームを作ってきた。このプレゼンテーションでは、Pythonベースのツールがわれわれの仕事にどのように役立ったかを紹介する。 以下のことについて、詳しく説明する。

  1. 独自のネームスペース
  2. コードリロード
  3. 単体テスト
  4. システムテスト
  5. Pythonで作ったGUI

また、ゲームと似たようなシステムにどのように、組み込めばよいかデモする。

75. Designing a web framework: Django's design decisions

Webフレームワークをデザインする。Djangoの設計思想

Djangoは、高度なWebFrameworkである。3年前のリリースからDjangoはとんとん拍子に成長した。今では、大変成功した次世代の開発環境である。 しかしながら、それは私たちが、スムーズな航海をしたことを意味しない。多くのオープンソースコミュニティーがそうであるように、私たちもその時々で難しい判断に直面した。 その判断は、Djangoの内部・外部API設計やコミュニティを形作っている。

76. The State of Django

Djangoの現状

Django1.0は、2008/9にリリースされた。Djangoの開発者を迎えて、Django1.0で何が新しくなったか、そしてもうすぐリリースされる1.1では何が新しくなるのか。またプロジェクトの未来について語ってもらう。

77. Practical Finite State Machines

実用的な有限状態マシン

有限状態マシンは、寿命を持った異なったプログラムの振る舞いを記述する、シンプルだが有効な方法だ。

最初に、有限状態マシンの概念について、UMLを用いて説明する。 次に、Pythonの有限状態マシンライブラリであるStatemachinelibraryの概要と使い方を紹介する。

78. How to Build Applications Linux Distributions will Package

Linuxディストリビュータのパッケージの作り方

もしあなたが、すばらしいソフトを書いた場合、どのように配布するかは難しい問題だ。 このセッションは、Paverというパッケージ配布作成ソフトとその代表的な使い方を紹介する。

79. Building a Simple Configuration-driven Web Testing Framework With Twill

Twill,シンプルな設定ベースWebテストフレームワーク

柔軟で、拡張性の高いテストフレームワークを作る作業は、通常は、発展的なプロセスである。どの要素が必要でどの要素が不要であるか経験の少ないプログラマーが見つけ出すのは難しい。 今回は、無料の現存する技術(ConfigObj,twill,nose)やモデル(PageObject,ScenarioObjects,AbstractStateMachines)を使って、簡単に、調整拡張メンテナンスできるシンプルなテストフレームワークを紹介する。

81. Stackless python in EVE, pt. 2

EVEオンラインでのスタックレスPython part2

2006年、私たちは、StacklesPythonを、どのようにEVE OnlineというMMOゲームに活用したか紹介した。3年がたち、今度は、StacklessIOという新しいIOフレームワークを用いて、どのように遅延を防ぎ、高いゲームパフォーマンスや、拡張性を得たか紹介する。

83. Securing Web Access with VoIP: Peace of Mind Using Multifactor Authentication

VoIPを用いた安全なWebアクセス。多要素認証

VoIPとWebフレームワークを組み合わせて、多要素認証を行う。キーロガーなどのハッキングツールはもはや問題にならない。

85. Precise state recovery and restart for data-analysis applications

多量のデータ解析における正確な復旧と再スタート

高信頼なシステムにおいては、どのような問題が起こっても、可能な限り早く正常な状態に戻し、すでに入力されたデータを取りこぼすことなしに、再スタートをしなければならない。

私たちは、大量の情報を分析するアプリケーションにおける正確な検査とリスタート手法について紹介する。 QuietCareは、US,UKで提供している何千人もの高齢者を対象とした遠隔モニタリングシステムである。これは、PythonとSQLで実装されている。 この手法は、大量のデータを取り扱うデータベースアプリケーション開発者に有益である。

86. A better Python for the JVM

JVMのためのより良いPython

昨年のPyConで私は、Jythonコンパイラーの改良を約束した。今年は、最初の果実をPythonコミュニティに、おすそ分けできそうだ。

今回は、Jythonコンパイラーの一般的な構造について述べ、さらに、どのように最適化を行ったか紹介する。

87. Giving back and helping expand the Python community. A roadmap for South America and Africa.

Pythonコミュニティの拡大とお返し。南米とアフリカにおけるロードマップ

Pythonは、専門家の人生を劇的に変えた。学習に、科学に、ビジネスに、また一般的な進歩に、Pythonは大変重要だ。

今まで、Pythonが普及していなかった南米やアフリカでも、エコシステムができつつある。 今回は、南米やアフリカでのPythonコミュニティの現状について紹介する。

88. Seven ways to use Python's new turtle module

Pythonで図を描く七つの方法

Python2.6,3.0には、新しいタートルプログラミングモジュールがついてくる。 このツールを用いてさまざまな方法で、図を描くことができる。 7通りの使い方を示すことで、問題へのアプローチの仕方は複数あることを示す。

89. Python in a sandbox

Pythonの安全な実行

信頼できないPythonCodeを如何に実行するか?私たちは、PyPy仮想化アプローチを用いて、この問題に挑戦した。すべてのIO、システムコールへの制限無しに、サンドボックスを実現した。このモデルの使用方法、欠点、将来性について議論する。

90. Introduction to CherryPy

CherryPy紹介

CherryPyは、簡単に使え拡張性の高いHTTPフレームワークである。CherryPyの機能について紹介し、特にDjangoやTruboGearsなどのフル装備のWebフレームワークとの違いは何か強調する。

91. Dejavu: Language INtegrated Query for data

デジャブ:Pythonで作られたLINQ

マイクロソフトがLINQを作る前、Pythonには、Dejavuがあった。異なったデータソースから、Python文法を使って統一的に情報を操作できるフレームワークだ。 今回は、Dejavuの概要を紹介し、それが如何に簡単にPythonへと統合でき、またデータを操作できるかをしめす。

92. Using Sphinx and Doctests to provide Robust Documentation

堅牢なドキュメントのための、Sphinex,Doctest

Pythonの新しいドキュメントスタイルについて、いろいろとうわさが飛び交っている。今回は、sphinxを紹介する。スクリーンキャストで、shinixの機能と、特に、autodoc機能を紹介する。その後、doctestの紹介を行い、それが、あなたのプロジェクトの、ドキュメントと、テスト両方に効用があることを示す。最後に、nosetestと組み合わせて、sphinxを開発プロセスへと統合する方法を、スクリーンキャストを使って述べる。

94. Python in the Enterprise - How to Get Permission

エンタープライズにおけるPython,どのように許可を得るか?

普通のプロジェクトであれば、あなたが開発用プログラミング言語を選ぶことができる、一方、多くの人がかかわる巨大プロジェクトでは、言語があらかじめ決められていることがある。どのように、巨大プロジェクトと、(Pythonのような)動的言語の差を埋めるか、そしてそちらのほうへ舵を切っていくか。 これは、一人の開発者が、どのように、20ヶ月かけて2万5千人を擁する企業に、Python言語を採用させたかという物語である。

95. IronPython Implementation

IronPython実装

IronPythonは.NET FrameWork上で動くPython実装である。今回は、IronPythonの内部構造についてしゃべる。最初に、IronPythonのアーキティチャーとソースレイアウトを見た後、関数振り分けや、型システム互換、マルチランタイムサポート、DLRをどのように使っているか掘り下げる。最終的に、Pythonが.NET,IronPython間の異なるシステムをどのように統合しているかを示す。あなたが新しいプログラミング言語実装に興味があろうと、また、単にIronPython向けの新しい組み込みモジュールが書きたいだけでも、有用な話が聞けるだろう。C#の知識は、役立つけれど必須ではない。

96. Pylons on Jython

PylonsをJythonで動かす

Jythonは、復活した、そして前より強力になった。

今回は、軽量で柔軟なWebフレームワークであるPylonsをJythonで動作させる方法を紹介する。その話は、また、PylonsをJythonへ移植する過程で得た経験について話す。

100. A winning combination: Plone as a CMS, your favorite Python web framework as a frontend

勝利の組み合わせ.PloneをCMSとして使い、お気に入りのWebフレームワークをフロントエンドに使う。

Ploneは、偉大なコンテンツ管理システムだ。最近は、PHP以外のベストCMSとして票を投じられている。しかし、多くのPython開発者は、Ploneは、重くて、Zopeと結びついていると考えている。

しかし、Ploneを透過的にコンテンツにアクセスできるCMSとして使い、フロントエンドに、あなた好みのWebフレームワークを使ったらどうだろう。 その手法は、高い効率と、手間のかからない運用を提供する。

今回は、Ploneプロダクトと、さまざまなWebフレームワークのシンプルなWebフロントをどのように共有できるか示す。

101. Django on Jython

Jython上のDjango

Djangoは、もっとも有名はPythonWebフレームワークだ。そして、Jython2.5は、PyConの少し前にリリースされた。つまり、われわれは、Pythonの有力なWebフレームワークをJavaの上に乗せることができる。Jythonで動くDjangoの紹介を行い、他のJVMスタックJRuby,/Railsとの比較を行う。

102. Plone in the Cloud : an on-demand CMS hosted on Amazon EC2

クラウドの中のPlone,Amazon EC2を使ったオンデマンドCMSホスト

AmazonEC2のようなクラウドコンピューティング環境の勃興により、CMSをクラウドコンピューターで走らせることが可能になった。 今回は、クラウドコンピューター上で、PloneのようなCMSを走らせる利点について紹介し、また、その過程で直面したいくつかのチャレンジについて話す。

106. Class Decorators: Radically Simple

クラスデコレーター,根本的にシンプルに

クラスデコレーターは、メタクラスと似ているが、よりシンプルで読みやすく書きやすい。

107. Leveraging ReStructuredText in your Projects

ReStructuredTextをあなたのプロジェクトの力に。

ReStructuredTextを使えば、ドキュメントは、整形可能で、単体テスト可能な入れ物になる。それは、とても読みやすく、また、HTML,LaTex,PDFのような各種ドキュメントに変換可能だ。 Spinxは、ドキュメントを階層化し、相互の目録を作る。新しい項目によって、ドキュメントにフラッシュビデオを組み込める。

108. How I Distribute Python applications on Windows - py2exe & InnoSetup

WindowsでPythonアプリを配布するには。py2exe,InnoSetup

Pythonアプリを配布するにはいくつもの方法がある。今回は、py2exe,InnoSetupを紹介する。ワンステップで、Windowsバイナリをつくり、インストーラーを作る過程をデモする。加えて、py2exeを使用する際陥りがちな間違いやそれへの対処法を教える。 今回は、短いので、オープンスペースセッションを使ってフォローする。


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-02-01 (日) 14:38:23 (991d)