PyCon JP 2011 参加レポート[後編]

8月27日(土)に開催された「PyCon JP 2011」の模様をお伝えします。後編では午後のセッションと、翌日に開催されたSprintについてレポートします。

Pythonで創るソーシャルゲームの未来

PyCon JP 2011のGold Sponserである株式会社gumiの堀内さんが、PythonとDjangoを使って創ったソーシャルゲームの技術的な解説と、ソーシャルゲーム業界の現状についてお話しをされました。

講演する堀内氏
講演する堀内氏

広がるソーシャルゲーム市場

コンシューマ向けの市場が縮む一方で、ソーシャルゲームの市場はどんどん増え、映画産業やコンシューマゲーム産業と同等の規模になっているという堀内さん。しかしその一方、SAP(Social Application Provider)によるゲームは毎月数多く発表され、飽和状態になっているという現状も示しました。⁠決済システムのあるSNS内のユーザにゲームを提供するという仕組みも、なかなか難しくなっている。SAPの中でもTOP5くらいに入らないと厳しくなっている」とのこと。ソーシャルゲーム業界、なかなか厳しいですね…。

億単位のPVを支えるPythonシステム

通常のゲーム制作は1ゲーム8人のチームを組んで、2~3ヵ月でとりあえずのものを作り、うまく行けば大きなチームに移していくという流れで進めているようです。密な勉強会を行ってスキルを高めているとのことでした。厳しいソーシャルゲーム業界では、特にスキルアップが重要そうですね。

そんなソーシャルゲーム業界で億単位のPVを支えているシステム、その内部についてお話ししてくれました。使っているアプリケーションや工夫などについては講演の録画がUstreamにありますので、気になる方は見ていただけたらと思います。

Pythonを使った理由

講演後の質問で「ソーシャルアプリはPHPがメジャー、2DゲームならRuby on Railsがメジャーだと思うが、Pythonを使った理由は? 良かったこと、困ったことは?」という質問がありました。それに対して「Pythonが好きなエンジニアがいたため。Pythonというキーワードに興味を持っている人に技術志向の強い人が多いので、開発に合っている。大規模開発において習得が早いのも良いところだと思った。Ruby on Railsでもそうだが、Djangoというフレームワークがあって、後方互換性なども面倒を見てくれて安定してくれるのがとても良い。Pythonで特別困ったことはなかった」と答えていました。

どんどん大きな市場になっているソーシャルゲーム。膨大なPVを支える裏では、トラブル時の対応や拡張への準備などがしっかりと行われていることがわかりました。今後は、海外市場へも挑戦していくようです。

PyQtで始めるGUIプログラミング

次は@ransuiさんによるPyQtのセッションを紹介したいと思います。

講演する@ransui氏
講演する@ransui氏

PyQtとは?

Qtという、クラスプラットフォームのC++総合ライブラリが存在しますが、それをPythonから使うことのできるPyQtというプラグインがあります。PyQtは本家Qtのバージョンアップへの対応が早く、主要なモジュールはほぼすべてサポートされているので便利に使うことができ、さらにC++とシームレスにつながるように設計されているので使いやすいとのことです。

PyQtでGUIプログラミング

GUIプログラミングをする際、いきなりコードを書き始めたりせず、しっかりと「デザイン」をすることが大切と@ransuiさん。⁠設計ではなく、デザインを繰り返すことが大事だ」と繰り返していました。

スライドがとても詳しくまとまっており、スライド自体がチュートリアルになるので、興味の有る方はこちらからスライドを読んでいただくか、Ustreamに講演の録画があるのでそちらをご覧ください(と@ransuiさんもおっしゃっていました⁠⁠。

筆者もプログラミングを始めたころは、GUIのプログラミングに憧れたものでした。でもなかなかそこまでたどり着くことはできずにいました。これを機会に、PyQtを使ったGUIプログラミングをスタートしてみたいなと思いました。ちなみにPyQtは、GUIだけではなく他の機能も充実しているので、単純に便利ライブラリとして使うこともお勧めされていました。

Lightning Talks

クロージングでは参加者によるLTのコーナーがありました。総勢10名によるLTが行われましたが、今回は筆者が気になったものを選んでお伝えします。ここで紹介できなかったLTについてはUstreamでLTの録画が残っていますので、気になる方はぜひご覧ください。

pyssp:Pythonによる教育向け音声信号ライブラリ

粟飯原さんによる教育向け音声信号ライブラリの紹介です。

粟飯原氏
粟飯原氏

pysspは音声信号処理用のライブラリで、簡潔で使いやすく、わかりやすく扱えるようになっているそうです。機能としてはノイズ除去、カラオケトラックを用いて歌声を抽出するなどで、デモも行われました。Ustreamでその模様は聞くことができるので、ぜひ聞いてみてください。とてもクリアになっています。

「自然言語、画像処理は盛り上がっているが、音声信号処理はあまりないので作った」と粟飯原さん。こちらの分野でもPythonがもっと活躍すると良いと思いました。

CG業界とPython紹介

CGプロダクションに所属している@alpaca3さんからのLTを紹介します。

@alpaca3氏
@alpaca3氏

「CG業界でプログラミングというと、作業の効率化、ソフトでできない表現の追加を行うことが多い。しかし日本には、開発部署を持っている会社は多くない」と@alpaca3さん。今まではそれぞれのソフトウェアが独自の言語でAPIを作っていたようですが、最近はどれもPython対応が進み、ほとんどがPythonで書けるようになったといいます。Pythonを使うことによって、CGソフト以外との連携やClassの機能、ソフト間でほぼ共通のスクリプトで動くなど、とてもメリットがたくさんあるといいます。

CG業界でこんなにPythonが使われているとは驚きでした。Pythonの柔軟性に驚かされたLTでした。

Unihandecode

次に三浦さんによるLTを紹介します。

三浦氏
三浦氏

Kindleを購入した三浦さん。日本語のものが読んでみたいと思いCalibreというソフトを使ってみますが、漢字をよみがなに変換したものが正しくディレクトリに名前として付きません。原因をいろいろたどってみるとUnidecodeというライブラリにたどり着きますが、日本語への対応が全くされていないことに気づきます。そしてできたのがUnihandecodeでした。実はPlone内でも同じ問題が起きていたようで、Ploneユーザの間で歓声が沸き上がっていました。

Oktest

次は桑田さんによるLTを紹介します。

桑田氏
桑田氏

Pythonでテストをする際にunittestを使うが、メソッド名が長すぎるという問題を掲げ、Perlの簡潔な"ok"や"is"などの簡単な表記であるべきだと主張しました。

そこで作られたのがOktestです。このPythonで短くテストを書くために作られたライブラリは、Perlの様に簡潔にテストを書くことができるのはもちろん、デコレータを使って何のテストをしているのかをわかりやすく記述できるなど、便利にできていました。

アプリケーションを作る際、テストをしたことはまだ無いですが、もしテストを行う機会があれば、ぜひこのライブラリを使ってみたいなと思いました。

クロージング

最後に、LT会場に残り参加者とスタッフが集合し、クロージングが行われました。フランスからKeynoteのため来日したTarekさんからは「楽しい会でした、また会いましょう!」とのメッセージが、そして座長・寺田さんからは「来年もこのような会を継続してやっていきたい。」⁠ぜひ地方のイベントなども開いてみて欲しい」との挨拶があり、参加者へのお礼でPyCon JP 2011本編は終了しました。

PyCon JP 2011 Party

PyCon JP 2011本編終了後はPartyです。話し足りなかった参加者などが集まり、アツいPythonトークが繰り広げられていました。PyCon JP TシャツやEuroPythonグッズのプレゼント大会もあり、会場は盛り上がっていました。

Partyの様子
Partyの様子

筆者はまだ未成年でしたので飲めませんでしたが、このPartyのために用意されたスペシャルカクテル、 Python Bite はなかなか好評だったようです。

PyCon JP 2011 Sprint

そして翌日にはSprintと呼ばれるハッカソンのようなものが開かれました。各自でやることを持ち寄って開発を行います。

筆者は@aodagさんによるPyramidというWebフレームワークのチュートリアルに参加しました。他にはPyPyチュートリアルの翻訳や、Ploneを使ったソリューションの作成、サーバを自ら持ち込み高速ファイル通信に取り組んでいる猛者もいました。

Sprintの様子。筆者もPyramidのチュートリアルに取り組む
Sprintの様子。筆者もPyramidのチュートリアルに取り組む

さらにRed Bullの冷蔵庫が置いてあり、Red Bullが支給されるというサプライズもあり、なかなか面白い会となりました。

最後にサプライズだったRedBull冷蔵庫を囲んで記念撮影
最後にサプライズだったRedBull冷蔵庫を囲んで記念撮影

まとめ

今回のPyCon JP 2011には250人近くの参加者が訪れました。これだけのPythonistaが集まり、情報交換ができたことだけでもとても素敵な事だと思いました。筆者個人としては、CG業界やC API、音声処理からGUIなど、普段なかなか触れることのなかった分野について知り、興味を持てたことはとても有意義だったと感じています。

しかし一方で、海外からの参加者とコミュニケーションが取れなかったことを残念に思い、次回機会があればコミュニケーションにチャレンジしたいと決心しました(出会い系Pythonがテーマだったというのに!⁠⁠。

それでは、来年もきっとPyCon JP 2012が開催されることを祈って、この記事を終わりたいと思います。

おすすめ記事

記事・ニュース一覧