• はてなブックマークに追加
  • Yahoo!ブックマークに登録
Pythonユーザー向けカンファレンス「PyCon JP 2012」レポート!
Perlハッカー小飼弾氏が語る、
Pythonは傲慢な外国語!?
9月15日〜17日に開催され、480名を超える来場者を集めた「PyCon JP 2012」。中でも編集部が注目したのは小飼弾氏の基調講演。Perlハッカーとして知られる小飼氏からPythonはどう見えているのか? カンファレンスの様子とともにレポートする。
(取材・文/総研スタッフ 宮みゆき 撮影/佐藤聡)作成日:12.11.19
併設イベント、オープンスペースetc.「つながる」試みが満載だった「PyCon JP 2012」
寺田 学氏
「PyCon JP 2012」座長
寺田 学氏

 Pythonユーザーのためのカンファレンス「PyCon JP 2012」が、9月15日〜17日の3日間に渡り、東京都品川区にある産業技術大学院大学で開催された。今年は「つながるPython/Python Connect」をテーマとして、参加者が交流しやすいイベントを目指したという。まずは「PyCon JP 2012」座長の寺田学氏に話を聞いた。

「アメリカ、ヨーロッパやアジアなど世界各国で開催されており、日本での開催は今年で3回目になります。このPyCon JPを通じて、Pythonユーザーが集まり、PythonやPythonを使ったソフトウェアについて情報交換し、交流することを目的としています。今年は、新たな試みとして、Python 関連コミュニティによる併設イベントを設けました。Pythonという括りを超えた技術の交流を図るためです」(寺田氏)

 2日目の昼休みに行われた「オープンスペース」は、通常のセッションと違い、PyCon JP当日までセッション内容を決めない。あらかじめ用意されている場所と時間のオープンスペース枠に、参加者が「やりたいこと、話したいこと」を付箋などに書いて貼ることで、セッションの内容が決まっていく。オープンスペースは出入り自由で、他の部屋への移動も可能だ。

さまざまなテーマでセッションが行われた「オープンスペース」

 当日参加者が自分の話したいテーマを決めて発表するオープンスペース。ホワイトボードに貼られた付箋には、「OpenStackとPythonと私」「Djangoオフィスアワー」「MongoDB Tech Talk」「Arduino+Python」「エキパイ読書会出張所」といった自由気ままなテーマがズラリ!CodeIQのクイズに挑戦する人や、クラウディアさんによるWindows Azure解説にウキウキ参加する人も! 発表者も参加者も、皆さん楽しそうです。

Perlハッカー小飼弾氏が語った「Python as a Foreign Language」
小飼 弾氏
小飼 弾氏


 さらに今回のカンファレンスでは、2日目の基調講演にPython開発者ではない小飼弾氏を招いている。Perlで著名な小飼氏が外から見たPythonを語るとあって、会場は満員。別会場にもライブストリーミング形式で映像を流すほどの盛況ぶりだった。

 まず、小飼氏はRuby、PHP、Perl、Python、JavaScript、5種類の言語を、「魔法少女まどか☆マギカ」のキャラクターを引用しながら、「Ruby→父は宣教師、PHP→あたしってほんと…、Perl→use v5.12;、Python→import_future_、JavaScript→ただの概念」と表現。会場の笑いをとったところで、Perl の開発者であるLarry Wall(ラリー・ウォール)氏が唱えた「The Three Virtues of a Programmer」(プログラマの三大美徳)になぞらえ、以下のように例えた。

  • Laziness(怠惰)  → Perl
  • Impatience(短気) → Ruby
  • Hubris(傲慢)  → Python

 小飼氏はその理由を以下のように語った。
「このプログラマの三大美徳に挙げられている『Laziness(怠惰)』『Impatience(短気)』『Hubris(傲慢)』がプログラマにとって大事なものであり、それぞれの言語の特徴を表していると気付きました。『Laziness(怠惰)』は、100回同じことを繰り返すくらいだったら、10の手間でプログラムを書いて簡単にすませてしまうというもの。この分野で一番強いのが、Perlだと思います。

 次が『Impatience(短気)』です。これは、要するにコンピュータが『短気』になるということ。『高速なCPUもっているのに何もしていないじゃないか』といわんばかりに、コンピュータもこき使う気性が一番マッチしているのが、現在だとRubyかなと思います。例えばRubyでは文字列とか数値ですとかが手元でガンガン拡張する流儀がある。そんなに待たずにできる。それによりRuby on Railsも出てきて、Rubyはこれでブレイクしたわけです。『Hubris(傲慢)』とは『神罰が下るほどの過剰な自尊心』、そして『人様に対して恥ずかしくないプログラムを書き、また保守しようという気質』。これはやはりPythonでしょう」

 さらに「Zen of Python」をテーマに掲げ、小飼氏のPythonに対する考えを続けた。

1)Beautiful is better than ugly.   ―  きたないのよりきれいな方がいい

 小飼氏は、配列の各要素をjoinする処理を以下のように例え、RubyやJavaScriptは配列オブジェクトにjoinするのに対して、Pythonは文字列オブジェクトのメソッドを使うことに不満を感じているという。

<Perl>
join "☆" => qw/まどか マギカ/;
<Ruby>
%w[まどか マギカ].join('☆')
<JavaScript>
['まどか', 'マギカ'].join('☆');
<Python>
u"☆".join(['まどか', 'マギカ'])

 だが、会場にどちらのコードが美しいか、その美的感覚を聞いてみると、意外にもPython支持者はマイノリティ! これには小飼氏も少し驚いた様子だった。

2)Explicit is better than implicit.
   ―  ごちゃごちゃ難しいのより、白黒はっきりしてるのがいい

Python 2
u" "
Python 3
" "
Python 3.3
u" "
" "

 続いて小飼氏が例に挙げたのは、Pythonで文字列を表現する際の「uリテラル」である。PythonもPython2からは、Unicodeを使えるようになり、絵文字なども表示できるようになった。だがPython2のクォートでくくられたstr型と、(u""ないしu'')でくくられるuリテラル付きクォートがPython3で廃止されたのに、Python3.3でまた復活して、コードが増えてしまっている。これに対し、小飼氏が「わけがわからないよ」と、疑問を投げかけた。



 さらに、Pythonのlen関数、サロゲートペアの問題対応を、Pythonを使いたくても使えないこともある最大の理由として例に挙げ、Pythonに対する意見や期待を述べていった。
「Pythonは英米圏では人気があるが、日本ではそれほどでもない。なぜPythonがいまいち萌えていないのか? その理由にはimportが少なすぎるというのがあります。ちゃんと動くコードを書いてほしい。だが、読みやすいという利点もある。僕はもっとPythonは日本で受け入れられるべきだと思っています」

 セッションの最後を、小飼氏は、「“No language is an island(島言語なんて、あるわけない)”というラリー・ウォールの言葉にもあるように、ほかの言語を知らずに書かれた言語なんて、いまはないんです。禅は唱えるべきものではありません。禅はなすべきものです」
 と締めくくり、講演後も積極的に質問が飛び交い、盛況の内に終了した。

小飼 弾(Dan Kogai)氏
TCP/IPが生まれた1969年生まれ。投資家/プログラマ/ブロガー。ディーエイエヌ有限会社代表。1999〜2001年、オン・ザ・エッヂ(現ライブドア)取締役最高技術責任者(CTO)。プログラミング言語PerlではEncode担当。
著書に『小飼弾のアルファギークに逢ってきた』(技術評論社)、『弾言』『決弾』(いずれも共著、アスペクト)、『空気を読むな、本を読め。』(イースト・プレス)、『新書がベスト』(KKベストセラーズ)など。
  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する

このレポートを読んだあなたにオススメします

組み込み向けプログラミング言語“mruby”“MobiRuby”が誕生!

まつもとゆきひろと増井雄一郎が創る“軽量Ruby”とは

「Ruby」の生みの親であるまつもとゆきひろ氏が、組み込み向けの軽量版「mruby」を開発した。また増井雄一郎氏は…

まつもとゆきひろと増井雄一郎が創る“軽量Ruby”とは

学生プログラマ日本一&世界に挑戦するアプリ開発コンテスト

CODE VS、Tech-Tokyo─決勝を制した学生ギークは誰?

日本一の学生プログラマを決める「CODE VS」、“学生生活×Android”“位置情報×Webアプリケーション”をテーマに開発…

CODE VS、Tech-Tokyo─決勝を制した学生ギークは誰?

CODE VS、Tech-Tokyo──学生イベント開催リポート <前哨戦>

学生GEEK集まれ!天下一武道会とシリコンバレー登竜門

パソコンとスマホがあれば、お金はほぼゼロ、人数も1人から3人程度でスマホアプリやウェブサービスを開発し、世界で販売できる時代。そ…

学生GEEK集まれ!天下一武道会とシリコンバレー登竜門

小野和俊、山崎晴可、Yappo、べにぢょが飲んでハジけた

ギーク座談会2!水耕栽培、料理と仕様書、言語は便器

ご好評をいただきました「ギーク座談会! 嫌いな言語、10年後の姿、幸せって?」。満を持して(?)第2回目の開催です。今回はとある…

ギーク座談会2!水耕栽培、料理と仕様書、言語は便器

学生・社会人の枠を超え、競技プログラマの世界一が決定!

CODE VSが示すプログラマに必要な戦略と問題解決能力

7月21日(日)、六本木「ColoR」で、アルゴリズム活用力とコーディング技術を競い合うプログラミングコンテスト「CO…

CODE VSが示すプログラマに必要な戦略と問題解決能力

やる気、長所、労働条件…人事にウケる逆質問例を教えます!

質問を求められたときこそアピールタイム!面接逆質問集

面接時に必ずといっていいほど出てくる「最後に質問があればどうぞ」というひと言。これは疑問に思っていることを聞けるだけで…

質問を求められたときこそアピールタイム!面接逆質問集

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP