YAPC::Asia Tokyo 2012 スペシャルレポート

YAPC::Asia Tokyo 2012, 2日目レポート[更新終了]

27日から29日までの3日間、東京大学伊藤国際学術研究センターにて「YAPC::Asia Tokyo 2012」が開催されます。本日は最終日2日目です(前夜祭の模様はこちら、1日目の模様はこちら⁠。ここでは、2日目の模様を随時レポートしていきます。

※すべてのセッションをレポートするわけではないことにご注意ください。

受付近くで、ランチ交流企画のためのくじ引きの入れ物を持った、張り紙をした女性が立っているので、ランチ交流してみたい方はこちらでくじを引いておいてください、とのことです。

画像

Yusuke Wadaさん「⁠⁠新しい」を生み出すためのWebアプリ開発とその周辺⁠

2日目、伊藤謝恩ホールのトップバッターはワディット社長でオモロキ取締役のゆーすけべーこと和田裕介さん。スタートアップから小・中規模、月間1,000万PV+αまでのサービスを対象に、Webサービスの企画から開発・サービスのスケールについて、具体的な事例を交えながらのトークでした。

企画にもプロセスがあると語る和田さん。⁠瞬間的にひらめいたものをつくるのではなく、ひらめきもふくめて企画に落としこむ」ために、7つのサイクルを定義し、企画の骨子としているそうです。

具体的には「哲学:個々人が持つ変わらない思い(ex.「料理は楽しい⁠⁠アイデア:哲学を叶えるための具体的なアイデア(ex.「レシピを共有する⁠⁠テーマ:勝負する領域(ex.「ユーザーがレシピを共有できるサービス⁠⁠コンセプト:一言で言える大枠(ex.「ユーザーがレシピを共有できるサービス⁠⁠名前:サービスの名前」⁠デザイン:見た目に限らないディティール(ex.「料理写真をフィーチャーするカテゴリ分け⁠⁠内部設計」という順序です。

必ずしも順番どおりに決めていかなくてもよく、それぞれのプロセスにあてはめて設計することで一本筋の通ったサービスができ、作ったものを人に紹介するときにも有効だと言います。

「設計と同時にリスクの検証も重要である」と和田さん。⁠技術リスク:やりたいことを叶える技術が世の中にあるかないか」⁠スキルリスク:技術を自分が使いこなせるか」⁠リソースリスク:人手や時間が足りているか」⁠政治リスク:⁠会社バレ⁠など、人との関係性から生じる問題」⁠法的リスク:著作権など法的な問題」といったリスクを努力で解決するか回避するか、また諦めるかということを考えることも大事と語りました。

これらの課題を検証するにあたって和田さんがよく用いるのは「sandboxディレクトリをつくって遊ぶ」という方法です。ワンストップなスクリプトを書いてWebサービスの肝の部分をCLIで実装してしまうそうです。APIの検証もスクリプトを作ったほうが早く、技術リスクの検証にもなるとのこと.スタートアップのWebサービスの開発にはMojoliciousなど既存のWAF(Web Application Framework)とO/R Mapper、最低限のキャッシュ。NoSQLは無理に使わずMySQLでも十分、サーバも1~2台でスタートできると語りました。

続いて、それらスタートアップなWebサービスが大きくなってきた場合のスケーリングの手法について説明しました。これには、和田さんが開発したWebサービスを題材に実際の事例を紹介しました。人気画像大喜利サイトボケての事例ではまとめサイト掲載によって発生した急激なアクセス集中への対策の顛末と、その過程で浮上した問題点の解決方法について詳細な説明がありました。

プラグインを多用したフレームワークで依存して開発したために異なる環境への移行ができなかったり、キャッシュのexpireするタイミングで一斉にキャッシュ再作成の処理が走ってしまうことでデッドロックが発生する問題など、実際のサイト運用ならではのリアルなノウハウが惜しみなく紹介しました。

画像

画像

Masahiro Naganoさん「1台から500台までのMySQL運用(YAPC::Asia編)」

Masahiro Naganoさんによる、現在運営中のシステムについて、過去の発表を踏まえながらの発表です。まず、MySQL Casualで話したことを振り返った後、その続きとして歴史が長く、数が多い上にシステムの内容もばらばらだったサーバーの集約化について話しました。

手法としては、いったん停止してから移行する方法を選んだとのこと。これは細かい調整がいらず、ミスがおきにくいことから選んだそうです。古くて回線が細いサーバーも多いので、まず前日までに少しずつ仮DBにコピーして必要な準備を整えたとのことです。

作業自体は負荷の大きいブログから移行対応表を元にperlスクリプトを作成。マスターではなくスレーブにのみ触れることで、マスターを壊してしまう事故を防ぐようにしたと言います。設定自体も内部に練りこようにするなどの工夫の結果、当日はコマンドを走らせるだけだったとのこと。⁠無事に朝を迎えました」と言いながらその時作っていた模型の写真を見せると、会場は大爆笑でした。

さらにこのあと、監視について触れられていました。MySQL4系では再起動が早いため、ダウンの監視のみではすり抜けてしまうそうです。そこで、アップタイムも監視することで対応したとのことです。またスパムブログ(スプログ)の監視にも重要で、書き込みが多いために他に与える影響が大きく、かつこの影響範囲は集約化したことでかえって大きくなったのだとか。

そして最後に今後の更なる集約化についても言及しました。いまだに残っているMyISAMの移行やストレージのSSD化などは、ソーシャルメディアの特性としてデータ量が多いため,容量あたりの単価も需要だと述べていました。

画像

画像

近藤嘉雪さん「Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に! 」

Perl初心者が一番引っかかりそうな部分である「コンテキスト」「リファレンス・デリファレンス」の解説を行うセッションです。発表は「プログラミングPerl」「はじめてのPerl」の翻訳をされている近藤嘉雪さんです。

まず基本的なコンテキストの知識として、スカラーコンテキストやリストコンテキストを解説しました。コンテキストの与え方によって値の解釈が異なることや、組み込み関数にどのようなコンテキストの値を渡せば良いのかをperldocを用いて調べる方法等を紹介しました。

また、渡されたコンテキストによって異なる値を返す処理の説明や、自分でサブルーチンを書くときにコンテキストに応じて動作を変更させるwantarrayを用いた処理を紹介をしました。//演算子(パターンマッチ)もスカラーコンテキストとリストコンテキストでは挙動が異なるということも説明し、観客からは感心の声が上がっていました。

リファレンスとデリファレンスの解説としては、⁠他のデータを指すデータ型でスカラー型の一種」⁠リファレンスされた値の中身を取り出す処理」という前置きをした上でC言語のポインタに相当するものとして簡単なサンプルコードを交えながらわかりやすく解説しました。スカラーからはじまり、配列、ハッシュ、サブルーチンのリファレンスとデリファレンスを説明し、C言語で言うところの複雑な構造体やオブジェクトを生成することが可能であると話しました。また、リファレンスで生成した複雑な構造に格納されている値を吐き出すためのモジュールとしてData::Dumperも紹介しました。

発展的な内容としては、無名関数や無名ハッシュ、無名サブルーチンについても言及したり、perlでのクロージャの説明し、盛りだくさんの40分でした。

画像

画像

Adam Kennedyさん「Padre - The Perl IDE for Normal People」

Adam Kennedyさんは今回のYAPCのために初めて来日しました。セッションの内容は、自身で開発されているPerl製のIDEである、Padreについてです。

EmacsはLISP、EclipseはJavaとともにあり、どちらも成功を収めています。Padreも同様の位置付けのIDEであり、Perlで書かれたPerlに注力したIDEとして開発されています。開発者数は、今現在だけを見ればEmacsの開発者数を抜いているとのこと。セッションの中では実際に様々な機能を動作させ、通常のIDEの備えるファイルやメソッドのリスト表示はもちろん、複数環境におけるアカウントを利用した同期機能や、ネットワーク経由のエディタ共有、リアルタイムで結果を確認できる正規表現エディタなど、独特な機能も多数備わっていることを紹介しました。各種メッセージの国際化も済んでおり、日本語も既に対応していました。

セッションを見ていて特に印象深かったのが、Padreの完成度が非常に高いことです。見た目も通常アプリと区別がつきませんし、実行速度も応答速度も速く、とても快適そうに見えました。今後主流のIDEの1つとして、注目する価値がありそうです。

画像

画像

makamakaさん「YAPC::Asiaきたつもり同人ボードゲーム「やっぱしぃYAPC」の考案と実践」

毎年YAPC::AsiaやPerlに関する同人誌やカードゲームなどを制作し, 会場で販売していたmakamakaさん。今年はボードゲーム「やっぱしぃYAPC」の制作にチャレンジしました。

冒頭、⁠このセッションは技術的でもなく, スピリチュアルでもなく, アナログなものです。間違って入ってきちゃった人がいたらごめんなさい」と挨拶しました。

やっぱしぃYAPCは, 昨年のYAPC::Asiaで発表・販売したカードゲームの流れを踏襲したYAPC::Asiaを追体験できる夢と希望に満ちたボードゲーム。⁠制作をスタートしたはいいものの, なかなか進行せず, やめておけばよかったと後悔しました。なんとか今朝完成したのでテストをする時間がなく, 実際にゲームとして成立するかはわかりません」と述べ, 会場を沸かせました。

本ゲームはYAPC::Asiaに参加してポイントを貯め, 最終的に一番ポイントを稼いだプレーヤーが勝者です。YAPC::Asiaを詳細に再現するため, 昨年のYAPC::Asiaに則った東工大の構内を模したマップボードや, 東工大だから実現できていたイベント(芝生ランチ, 大ホールで転ぶ)が盛り込まれています。また, 関係スタッフを忠実に再現した登場人物がカードになっており, 卓上でYAPC::Asiaの世界がリアルに広がる仕上がりになりました。

販売時期は冬コミを予定しているそうですが, それより前のタイミングでのオンライン販売も検討しているそうです。

画像

画像

Kentaro Kuribayashiさん「Rubyistの国のPerl使い」

現在Paperboy&Co.に所属するKentaroさん。基本的にRubyエンジニアですが, Perlに触れることもあり、Kyoto.pmに参加しているそうです。Paperboy&Co.ではアウトプットを大切にしており、そのアウトプットの際, リーンスタートアップの手法を取り入れているそうです。アウトプットをすることで、内部事情を一般化して検証し、さらに新しいことを創り出すことができるとその効果を語ります。

何かサービスを作る際、目的と手段が噛み合わずプロジェクトがうまく行かないケースがでてきてしまうのは, アウトプットが正確に行われていないからだと指摘します。様々な要件を決められた手法と手順でプロジェクトに関わるメンバーからアウトプットを行い、開発環境の整備と開発コミュニケーションの改善を行うことで開発プロセスを改善でき、コンセプトがぶれないようになるそうです。

具体的な開発プロセスの改善方法は「役割」⁠ゴール」⁠理由」を書き出し、改善することで何が生まれるかのストーリーをどんどん書いていくことだと言います。ただし、ユーザーモデルに合わせてストーリーを作ると機能と実装に関連性がなく、ストーリーの見えない設計になるという問題が発生しやすいので注意が必要としました。ただし、そのサービスに対するユーザーストーリーはしっかり組み立てることが必要だと語りました。

会場からは、適切なアウトプットと開発環境の整備、ぶれないコンセプト作りについて共感のTweetが多数投稿されました。

画像

画像

まんでぃーさん「Perlでちょいモテデザインパターン」

まんでぃーさんの「Perlでチョイモテデザインパターン」というセッションです。自己紹介で「PHPを書いていたらPerlが好きになった」と口にすると会場が笑いに包まれていました。ちなみに、チョイモテという接頭辞がつくトークは今回で3回目だそうです。

まず、デザインパターンのメリットとして「エンジニア間の共通言語になる」⁠ある程度のクオリティを確保できる」⁠ソフトウェアを作る時に楽になる」という利点を挙げた後、参考にすべき書籍として結城浩さんの「Java言語で学ぶデザインパターン入門」と牧大輔さんの「モダンPerl入門」を紹介しました。ただ、⁠この2つの書籍は内容が少し難しいので、このトークを参考にしてもらえれば」とのことでした。なお、このトークではデザインパターンはオブジェクト指向との関連性が高いため、Mooseを前提としています。

そして、Bridgeパターンという委譲系のデザインパターンについて説明しました。これはクラス側でインターフェースを定義しておいて、実際にそのクラスを利用する側が機能を実装するというデザインパターンです。これを使う側が目的に沿ったアタッチメントを取りつけることで、動作が変わるバリカンに例えて解説しました。パーサーを実装する時のような似て非なる機能を複数個実装する時に便利であるそうです。

次に、1つだけインスタンスを作ってそれをいろいろな場所から使うというSingletonパターンについて説明しました。スライドでは自身で実装したソースコードが貼られていましたが、MooseX::Singletonという便利なモジュールがあるのでそちらを使えば良いのでは、と話していました。

他にも「オブジェクトの作成やそれに伴う処理をユーザにさせない」というFactoryパターンや、⁠インスタンスを作成したらそれを保存しておいて、使いまわす」というFlyweightパターンを紹介しました。

まとめとして、デザインパターンは共通言語としての意味合いが強く、統一的な書き方で実装できるため、パターン用いることによって、エンジニアのスキルがまちまちでも差を埋めることができます。そこで、もう少しデザインパターンが人気になってくれればと結びました。

画像

あずまさとしさん「CPANに恩返ししよう⁠

PerlBeginnersの主催であるあずまさとしさんの「CPANに恩返ししよう」というセッションです。コンピュータのトラブルで5分程度遅れての開始となりました。このトークはCPANモジュールを使う専門のユーザをターゲットにしているとしました。

まず、⁠CPANモジュールは完全ではない」として、インストール時にテストが失敗するモジュールの存在やSYNOPSYSが書かれていないモジュールが存在していることを紹介しました。そこで「⁠⁠これだからPerl は』と蔑むのは簡単だが、それは建設的ではない」として、⁠プログラマだったら常に建設的であって欲しい」と言います。⁠自分が困ることは誰かが困ることで、積極的に直していってほしい。だから普段お世話になってるCPANに対して恩返ししてほしい」と述べました。

恩返しをするための準備として、E-mailアドレス、twitterアカウントの取得はもちろん、情報発信のための自分のブログの開設や、Issueを報告したり、CPANモジュールをアップしたりするためのgithubのアカウント、PAUSEのアカウントを取得するべきだと話しました。

具体的な恩返しの方法としては、自分が失敗したことをありのままブログに書いて情報を共有することや、テストの失敗を(簡潔かつ正確に、英語で)Issueとして報告すること、モジュールの使い方をブログやモジュール自体にPOD形式で書き込むことを挙げ、さらにアグレッシブなものとしてgithubやCPANに改善要望をアップすることや、プロダクトのデザイン(ロゴやページデザインなど)の手助けをするといった方法もあると紹介しました。

最後に、⁠恩返しが終わったら恩送りをしよう」として、⁠かつて自分がしてもらって助かったようにgithubやCPANに自分が作ったモジュールをアップしましょう」としてトークをまとめました。

画像

画像

「Perl 今昔物語」

このセッションは技術評論社の馮(ふぉん)さんが司会となり、宮川達彦(@miyagawa)さん、小林篤(@nekokak)さん, 松野徳大(@tokuhirom)さん、伊藤直也(@naoya_ito)さんが登壇する豪華なパネルディスカッションです。伊藤謝恩ホールが満席になりました。

自己紹介

まずはパネラーの自己紹介から始まりです。現在, 業務でPerlを使っているのはnekokakさんとtokuhiromさん。業務でPerlを使っていないのはmiyagawaさんとnaoyaさん, とちょうど2対2と分かれつも, Perlに何らか触れている日常にも話が膨らみます。ほとんどのパネラーがCPAN Autherであり, 様々なモジュールを公開しているため, そのメンテナンスやその後の開発でも自然体でPerlに触れていることが伺えました。

YAPC::Asiaはどういうものか。Perlがどうやって開発されてきたのか, これからのYAPCやPerlについて語る

YAPC::Asiaは元々Perlに関係する人なら気兼ねなく参加できる草の根活動的なカンファレンスとしてmiyagawaさんの声かけで2006年にスタートしました。miyagawaさんが「2006年からずっとYAPC::Asiaに参加している人は?また, 今年初めて参加した人は?」と会場に問いかけると、来場者の1割程度が2006年からの参加者でした。そして、今年初めて参加した人が半数以上という結果に、常にYAPC::Asiaが成長し、Perl Mongerが集う場所になったことが感じられます。

当時を振り返り、パネラーが思い思いに語りました。

画像

miyagawa「僕が知る限りLL系のまとまったイベントはあったが、Shibuya.pmのように、ある開発言語に特化したものは今まで日本で開催されていなかった。その背景と、2005年招待されたYAPC::Taipeiでゲストやオーガナイザーに勧められ、面白そうだと思い、YAPC::Asia 2006を開催した。まだ海外ゲストが開発言語のカンファレンスにはあまり来日しない時代だったが、YAPC::Asia 2006には多数自費で来てくれたのがすごく印象に残っている」

nekokak「その当時はまだmiyagawaさんとtokuhiromさんには実際に会ったことがなかったのだが、tokuhiromさんにとりあえず登壇しろ、と炊きつけたのは覚えている」

tokuhirom「登壇するよう炊きつけられてのは覚えてないが、2006年はLTに登壇しました。大きい会場とLTがとても面白かったし、すごく緊張した記憶がある」

naoya「1日ずっとプログラミングだけに集中できる規模のイベントへの参加はLL Saturdayが初めて。その後YAPC::Asia 2006が開催され、特定の言語のカンファレンスであったことがとても印象に残っている。あと、オードリーが来日しており、話せたことが個人的にすごい経験ができたと思っている」

その後もYAPC::Asia 2007から昨年の2011までを順に振り返っていきます。

─⁠─ YAPC::Asia2008の後, JPA(Japan Perl Association)が設立されました。

miyagawa「2005年から2007年までのYAPC::Asiaは有志で運営しており、母体が非常に不安定でした。僕が渡米するにあたり、引き継いでくれる人がいないとYAPC::Asiaの開催もできなくなってしまうため、JPAを設立していただき、YAPC::Asiaの運営も2009年からJPAが主体になりました」

─⁠─ YAPC::Asia2009ではPerl6とPerl5の今後について特に盛り上がっていた印象です。

画像

miyagawa&tokuhirom「Perl6の開発が盛り上がってきた年でしたが、逆にPerl5の開発は本家で停滞していたため、Perlコミュニティからの提案でリリーススケジュール確定させる機運が高まりました。結果、Perl5とPerl6の開発のコミュニティがしっかりしてきた年でした」

─⁠─ YAPC::Asiaといえば、dankogaiさんのご自宅でYAPC::Asia終了後開催されるハッカソンも名物ですね。

miyagawa「実は、JPAが設立されるまではkogaiさんのご自宅がYAPC::Asia準備室でした。海外ゲストも自費で来日していたため、少しでも滞在費を軽減して欲しいと考え、kogaiさんにご自宅を提供していただいていました。その延長で、カンファレンスが終わった後にハッカソンが開催されていました」

naoya「ハッカソンには昨年初めて参加しました。特に発表をすることもなく、参加者と一緒に黙々と好きなコードを書いていました。とても面白かったです」

tokuhirom「僕は初回のYAPC::Asia(YAPC::Asia 2006後のハッカソン)から参加しています。YAPC本体では発表したネタの実装は完成しておらず、ハッカソンで完成させて公開する流れで今でも続いています」

─⁠─ YAPC::Asiaならではの思い出を教えてください。

tokuhirom「2010年に、マジメな内容のトークをして緊張が緩み、お酒をかなり飲んだ後に登壇したLTしました。まじめな内容のほうでベストトーク賞を受賞したのですが、皆さんLTの印象が強く、LTの発表でベストトーク賞を受賞したと思われています(笑⁠⁠」

naoya「2008年から(はてなオフィスの移転により)東京から離れて京都で生活していたので、僕にとってのYAPC::Asiaは1年に1回東京に帰ってきて知り合いのPerl Mongerに会える貴重な場であり、お祭りの場。僕の弟もPerl Mongerなので、YAPC::Asiaの会場でお互い近況報告もします。ちなみに、今年はまだ弟と話せていません」

Perlを取り巻く技術面と、2006年から2011年までのWeb技術のトレンドを振り返る

─⁠─ 特に、2004年にmiyagawaさん、naoyaさんの共著「Blog Hacks」はPerl関連のオライリー本の中でも、いわゆる競合企業に所属するエンジニアの共著として特徴的でした。

miyagawa「naoyaさんとはShibuya.pmなどのイベントで顔見知りだったこともあり自然な流れで共著になりました。2006年頃はPerlエンジニアの在籍数が少ない企業も多く、競合に関係なく一緒に情報交換することも活発に行われていました。Shibuya.pmのスタートの経緯も、所属会社の外のPerlエンジニアと情報交換するためでした」

─⁠─ 開発環境も変化してきたと思います。PerlにはCPANがあることが特徴ですが、githubの登場はインパクトが大きかったのではないですか?

tokuhirom「githubは日常的に使っています。最近は(github上で公開しているコードに対し)Pull Request数も増えてきているし、Perl初心者からのリクエストもあり、Perlの裾野が広がっているイメージです」

naoya「知らないPerlエンジニアも含めて、githubやCPANのコードでコミュニケーションしていますね。⁠以前所属していた)GREEもgithubを業務として導入たところ、共有して活用できるコードが沢山あり、結果的に業務効率が向上しました。gitが標準的にエンジニアの開発環境に入っているのは有益だと思っています」

─⁠─ 皆さんは, なぜPerlを使うのでしょうか? Perlの良さやPerlコミュニティ、開発言語に対しての印象を教えてください。

tokuhirom「PerlはやはりCPANにソースコードが蓄積されていることが何より価値があり、利用者の立場としてもとてもありがたいです。困ったことがあったらYAPC::Asiaのリアルな場や、オンラインのIRCチャネルで話して解決してきましたし、特に大規模開発においてPerlが持つその強みはやはり心強いです」

nekokak「自分が一番得意な物と実力のある仲間がいるのがPerlコミュニティであり、CPANですね。CPANで公開されているコードをそのまま使えるのは業務面でとても大きいです」

miyagawa「例えば今の僕のように、仕事ではPerlに触れていないけれど個人で書いている人は多いはず。Perlは懐が深くて自由なので、常日頃Perlに触れていない人にもとても寛容だし、コードでコミュニケーションできるコミュニティが醸成されています。他の開発言語と比較するわけではないけれど、Perlは手段が割と自由。イメージとしては好きな道具を選択できて開発できます。ただ、その自由さが仇となって初心者には選択肢が多すぎて分かりづらいという面はあります。変化を受け入れる懐の深いコミュニティで、いつでもメインストリームになるコードを書けるチャンスが平等にありますね。また、Perlは⁠互換性のない変化がない⁠というメリットがあり、これから4~5年のうちにいきなり古いコードが動かなくなるような事態が発生しづらい作りになっています」

naoya「少し前までは(業務上の面で)合理的にPerlを選択して使ってきました。今は特定の開発言語に縛りがある時代ではなくなってきたので, 自分に合った、エンジニアとして業務をしているならばその目的にあった開発言語を選択すれば良いと思います」

PerlとPerlを取り巻く環境の2013年以降の予想

─⁠─ こうして6年ほどを振り返ってみても多くの出来事や変化がありました。来年2013年以降のPerlに関わる変化を予想してみてください。

画像

nekokak「Perlと上手く付き合っていきつつ、自分に必要だったり、業務上必要な開発言語を習得してスキルアップしていくと良いでしょうね」

miyagawa「Perlそのものは1年に1回メジャーアップデートするようコミュニティ内で決められたルールに則り開発が続いているので、今後もアップデートされていくでしょう。現段階だと、Perl5.12用に書いたコードはずっと動き続けることは確定しています」

会場からの質問

─⁠─ せっかく豪華なパネラーが集まりましたので、会場の方からの質問をとりあげます。

2008年が一番Perlのモジュールが一番入れ替わっていた時期だったと思っています。2010年から少しPerlのモジュールの入れ替えも少なく落ち着いている時期だと感じていますが、そろそろまた新しいものは出てくると思いますか?

miyagawa「結構YAPCの開催に合わせてモジュールなどを開発する人が多いですね。できあがっていなくてもとりあえずSubmitしておいて、YAPCのトークに採用されたら続きを書いたりしつつ、YAPCの発表に照準をあわせているようです。Perlは基盤技術が変わり落ち着いてきている時期だとは思いますが、トレンドは毎年変わっています」

nekokak「ある時、何かのモジュールが使いにくいと思う人が登場し、それを誰かが直し、と常にPerlモジュールは変化している。海外の人が作ったマッチョなモジュールを軽量なものに日本人が作り替えたり、洗練されたものにさらに磨きがかかる流れもありますね。その一線を超えたら、また何か新しいものが出てくるのではないでしょうか」

tokuhirom「⁠⁠タイミング的にも)結構新しいものが出てくる時期なのかなとは思っています」

naoya「Perl以外の開発言語のトレンドが少なからず影響を与えているので、そのような面でも変化していくと思います。声の大きい人が影響をあたえる場合もありますが」

まとめ

─⁠─ ありがとうございました。最後に、今後の展望や今期待していることを含めてまとめをお願いします。

miyagawa「PerlモジュールのPlackを公開していますが、基板になるものを作っている立場としては、Plackへの要望がもっと出てくるといいなと思っています。どのような使い方で、このようなことに使いづらい、と感じたら要望をどんどん出してください。そして、みなさんも新しいものの開発にチャレンジしてみてください」

nekokak「開発・公開しているTengをお陰さまで沢山の人に使っていただき嬉しく思っていますが、やはり要望が寄せられることが少なく、残念です。今後は、自分がソースコードを公開・発表するのではなく、もっと多くの人に公開・発表してほしい。CPANモジュールやgithubで公開されているソースをただ使うのではなく、感想レベルでもいいからフィードバックすることを心がけてくださると良いです。フィードバックがあると、作者はモチベーションが上がりますし、何より嬉しいので」

tokuhirom「Perlは今までも(業務上の面でも)役立つものだし、これからも役立つものだと思っています。YAPC::Asiaに来ている人がこれからの大きな波を作る役割を担うと思っています。頑張ってください」

naoya「他の開発言語にも触れていますが、やはりPerlはコミュニティやCPAN、そしてドキュメントが見やすく素晴らしいです。コミュニティのつながりもフリーで参加しやすく、他の開発言語のコミュニティにもそのPerlコミュニティーのフリーさを還元したいです。」

Tatsuhiko Miyagawaさん「10 more things to be ripped off」

PSGI/Plackをはじめ他言語の優れた機能を次々Perlへ移植しているmiyagawaさん。今回はおもにRubyからの例と中心として、Perlの世界に移植されたさまざまな多言語の優れた機能を紹介しました。

まずはじめにDanceフレームワークにおける「Debug Intractive Debuggger」のデモを行いました。Djangoから移植したというこの機能では、オプションをつけての起動によりSQLやNYTProfのデバッグログを画面に表示させることが可能となっています。さらにこの機能ではPerlの簡易インタプリタも搭載。なんとデバッグ画面上からコンソールでPerlのコードを実行することができるようになっています。

ほかには、フレームワークに依存せず複数のテンプレートエンジンを切り替えられる仕組みTiffany⁠ や、GitHubにpushされたコードをテストしてくれるCIツール「Travis」のPerlラッパーを提供するプロジェクトシナリオベースのWEB自動テストツール「Capybara」をPerlに移植したBrownieなど、既存のさまざまバックエンドへのインターフェースを提供するツールの数々を紹介しました。

最後に「他の言語でいいものを見つけたら、どんどんPerlに移植しよう!」と締めくくりました。

画像

画像

Daisuke Muraseさん「Perlハッカーは息をするようにCPANモジュールを書く。」

「日々の業務の中で必要に応じてモジュールを書いていたら、いつのまにか息をするようにCPANモジュールを量産していた!」というtypesterさんのセッションです。痒いトコロに手の届くモジュールの数々を披露しました。

iPhone向けの電子書籍プラットフォームpaberish.meの運用に際し作ったという「Data::Apple::PriceTier⁠⁠。これはAppStoreの「price tier(tier1が日本だと85円...のようなApple独自の価格レート⁠⁠」を変換するモジュールだと言います。また、⁠JSONで数字を数値として扱うときに$number+0みたいにハックするのが嫌だと思って作った」というJSON::Typeは、シンプルなコードながらとても強力なモジュール、と他トラックのセッションでも話題に上がるほどの人気だそうです。

そして、⁠Spreadsheet::XLSXがメモリを食いすぎて要件クリアできなかったので作った」というSAXベースのパーサー「Data::XLSX::Parse」⁠まだGitHubにしかコードがないそうなのです⁠⁠。Pythonにいい実装があったのでそれを移植しました。こちらはさらにメンテナンスを行ったうえでリリース予定とのことでした。

会場の注目を集めたのが「Cocoa::BatteryInfo⁠⁠。Macにおけるバッテリー関係のイベントをコールバックで取得できるというモジュールで、これを駆使することでMacBookのバッテリーを極限まで使い切るライフハックを実現しているのだとか。⁠残り60秒になったらGrowlで通知するようにしています」とtypesterさん。今回のセッションもまた、お手製の「Cocoa::CoreBluetooth」「Cocoa::AppleScript」を組み合わせ、iPhoneからBluetooth経由でプレゼンを操作していました。

cpanmでどこにでも入れることができ、なおかつリリース時は「cpan.testers」によっていろんな環境でテストしてくれる仕組みもあると語るtypesterさん。他の人が使ってくれたり見つけてくれたり手伝ってくれたりすることで、自分だけでは作れないモジュールができあがっていくのがCPANの魅力であると語り、⁠自分で使いそうなものは(CPANに)あげよう」と、来場者に向けて手製のモジュールをCPANにアップするよう呼びかけました。

画像

Dan Kogaiさん「Perl as a Foreign language⁠

先週Python ConferenceでキーノートをつとめたというDan Kogaiさん。今回はホームグラウンドでのセッションということで、リラックスして話をしていました。内容は、他の言語とPerlを比較したときに、どのような利点があるかといったものでした。

昔はPerlがどの環境でも動く言語でしたが、今ではそれがJavaScriptへと変わってしまったというKogaiさん。その理由として、モバイル環境へのブラウザの台頭を挙げていました。

しかし、JavaScriptはクライアントサイドという世界の半分に過ぎず、もう半分の世界で使う言語は何を使っても構わないだろうとのこと。その中でレガシーなコードが動くことや、起動にかかる時間が極めて低いことを利点として挙げ、Perlという選択肢も十分にあり得ると結論づけていました。

画像

画像

「Skyarc Systems presents 「遠方よりの参加者」発表」

株式会社スカイアークがスポンサードする「遠方からの参加者支援制度」の利用者5名が1人あたり4分弱という短い時間でライトニングトークを行いました。

二丁さん「Perlの会社に内定決まるまで」

富山から参加した高専生の二丁さんは、今年のmixi scrap challengeに参加し、東京には沢山のすごい人とエンジニアが集まっているんだと実感して東京のWeb企業への就職を決意しました。地方在住の求職者には避けて通れない東京との距離を乗り越えて内定を決めた経緯を悲喜こもごも交えてトークしました。

三上さん「卵かけご飯とアプリケーション開発」

趣味のイラスト書きが高じ、Twitterアイコンに設定していた「ご飯」に卵をかけて卵かけご飯にしてしまおう、というコンセプトを基に、Paperboy&Co.のお産合宿6でAndroidアプリ「玉子かけまくりごはん」を開発した経緯をデモを交えて解説。タップを繰り返すと卵がひたすら積み上がってしまうデモに会場が沸きました。

佐藤さん「20年越しでPerl4から5に移行した話」

自然言語のデータ変換などを行う研究室に所属している金子さん。研究室紹介で「主にPerlを使っている」という言葉に惹かれ所属したものの、蓋を開けてみると20年前のPerl4を使っているという事実に直面しました。少しずつ研究室の人たちを説得し、まずはPerl5に移行はしたものの、現在の主流コードがPerl5ないしPerl6なのにもかかわらず、20年前のコードが動いてしまうPerlの底力を感じたそうです。

金子さん「Perl入学式に参加してみた」

文系短大生でありながら、ホスティング会社でアルバイトをしている金子さん。普段の業務ではPerlに触れる機会がなかったものの、何かもう一つでも開発言語を習得しようと決意しPerlの勉強をスタートしたそうです。周囲にPerlを使っている人がいなかったため、昨年の遠方からの参加者支援制度でYAPC::Asia 2011に参加した@__papix__さんが毎月開催している「Perl入学式」に参加したそうです。Perl入学式でPerlの楽しさに目覚め、⁠Perl大好きです!奈良でもPMを立ち上げたい!」と力強く語りました。

きょんさん「Functional Testing in YAPC::Asia」

うさぎの耳(うさみみ)を身につけて登壇したうさみみ男子のきょんさんはnagoya.testingなどで活動している、開発環境改善などを研究しているエンジニア。Perlは滅多に書かないけれどLL DdecadeでYAPCの存在を知り、Perlのことを独自の目線で調べた内容を披露しました。

画像

画像

tsucchiさん「Perl と SQL のいろいろ」

元インフラエンジニアだというtsucchiさんのセッションは初心者から中級者までを対象に、陥りがちな問題点やtipsなどをまとめたものです。

DBIのインストールやSQLインジェクション対策、デバック手法、生のSQLを見る方法、SQLの外だし、テストなどについて、コンパクトながらよくまとまったセッションでした。

画像

画像

Yusuke Kawasakiさん「シリコンバレーと世界のPerlエンジニア」

川崎さんは去年一年、サンフランシスコと東京を行ったり来たりした経験や、世界中のpmのミートアップに参加した経験を話しました。2008年のロンドンを皮切りにウィーン、リオ、サンパウロとあちこち回ったそうです。pmの数は世界中で公式のものだけで257あり、ほとんどが小さな交流会だそうです。タイミングが合わなくても緊急ミーティングなどを開いてくれるので、気楽に接触してみましょう、とのことです。

oDeskをはじめとするクラウドソーシングの発達で、日本にいながら世界と競争しなくなりつつある現状に触れ、実際に海外で実際に見て話そうと呼びかけていました。

画像

画像

TAKESAKOさん「Perlで始める!? 初めての機械学習の学習」

TAKESAKOさんのトークは機械学習に関するものでした。まず、機械学習について学ぶ際の定番とされる「パターン認識と機械学習」という書籍について、難易度が高く読むのが大変であることに触れました。そこで、光成さんという方が作成したアンチョコを同人誌として発売したところ、これが書店のランキングトップの売れ行きとなったそうです。

機械学習の応用例としては、Kinectで採用しているRandom Forestアルゴリズムについて簡単に説明がありました。その上で、PerlでKinectを使うためのモジュールを開発中であり、そのデモを実演しました。Perlを業務でしか使わないとCOBOLを使っているのと同じことになってしまいかねないので、このような様々な技術を試してみるのは大事ではないかとし、本セッションを締めくくりました。

画像

画像

papixさん「Perl入学式をやってみた!」

現役大学院生のpapixさんは、Perl入学式を開催した経緯や運営ノウハウについて話しました。Perlの初心者向けの勉強会がほしかったpapixさんは、なければ作ればいいというアドバイスを受け、自身で勉強会を始めるようになったそうです。

Perl入学式は初心者を大切にする勉強会で、月に同じ内容を2回開催をしたり、詰まっている人にはマンツーマンでアドバイスをしたりということに心がけているとのこと。最後に、熱い思いがあれば必ず誰でもPerlコミュニティに貢献できる、と自身の経験を元に呼びかけていました。

画像

画像

Tim Bunceさん「Performance Profiling with Devel::NYTProf」

Perlを書いていれば一度はお世話になっている(であろう)DBI.pmの作者であるTim Bunceさんのセッションです。今回のYAPC::Asiaが初来日だそうです。トークでは自身が開発されているPerlのソースコードプロファイラツールである"Devel::NYTProf"を紹介しました。

プロファイラツールとして広く認知されている"Devel::DProf" が壊れていて、機能的に不十分である事をアピールし、"Devel::NYTProf" の利用を勧めていました。トーク中では「プロファイラが計測すべきものは何か」として、CPU時間ベースと実時間ベース、また、サブルーチン単位とステートメント単位のどちらで時間計測を実行するべきか、といった話題に触れていました。

"Devel::NYTProf"の弱点として、プロファイリング中は4倍程度実行速度が遅くなることや、通常時よりもメモリ使用量が増加することを挙げていました。

プロファイリング結果をKCachegrind形式によるグラフやHTML形式で出力できることはもちろん、よりグラフィカルなマップ形式で出力できることをスライドで示し、聴衆の興味を惹いていました。以降は、実際のプロファイリング結果を参照しながら、結果の読み方やヒントを紹介しました。

その後、Perlプログラムの最適化に関するヒントとTipsについて説明しました。まず最初に、⁠プログラマは高価な存在である一方でハードウェアは安価なので、最適化をはじめる前に、ハードウェアを新しくして速度を上げるべきだ」と口にした瞬間、会場から笑い声が上がりました。そして、ソースコードのシンプルな改善方法として「高速なアクセサを利用すること」「unpacking argumentsの利用は回避すべき」といった手法を提案していました。より高速化するためには、⁠まず処理量をプロファイリングし、Inclusive Timeをチェックしてからサブルーチンのコールされている数を計測すべき」として、⁠サブルーチンのコール数が多い場合はキャッシュやポールロジックを活用すれば良い」とアドバイスしました。また、Perlのアップグレードも効果的であると言います。さらにアグレッシブな最適化手法としては「データ構造の変更」⁠アルゴリズムの変更」といった根幹に関わる部分の変更や、⁠ボトルネックとなっている部分をXS/Cでリプレースする」という方法も挙げていました。⁠このほかにも最適化すべき点は色々あるので、"Top 10 Perl Performance Tips"も参照してほしい」とのことでした。

今後の"Devel::NYTProf" については、⁠現在NYTProfは100ns単位でカウントするクロックを使用している影響で、高速な関数を測定するとオーバーフローして誤差が出てくるので、今以上に正確なタイマーを使用してパワーアップさせたい」と展望を語っていました。

画像

画像

songmuさん「中規模ソーシャルゲーム開発に学ぶWebサービス開発と運用ノウハウ。もしくは2012年にPerlでWeb開発をする理由」

発表は、KAYACエンジニアのsongmuさん。現在運営しているソーシャルゲーム「ぼくらの甲子園シリーズ」を例に、ソーシャルゲームの現場でのPerlの使われ方、また開発にPerlを使用することのメリットを熱く語りました。

フレームワークはArkを使用し、アプリケーションサーバにはServer::Starter+gearman+daemontoolsで構成し、Haproxyを用いてDBやセッション管理サーバへの振り分けを行なっているとのことです。セッション管理にはKyotoTycoon、動的生成したFlashのキャッシュにはmemcachedを使用しており、とくにKyotoTycoonはHTTPでのアクセスも可能なことを活かし、アプリケーションサーバからアクセスしたデータをNginx経由でプロキシさせる使い方もしているそうです。ユーザーの行動ログはfluentdで収集してMongoDBに蓄積し、ユーザーサポート時の照合等に利用していると説明しました。

「中途半端な管理画面を作ると、入力者側で二重管理されてしまうのを避けるため」と、ゲームで使用するマスタ系データにはGoogle Spread Sheetを使用していると言います。それに対して独自に開発したData::GoogleSpreadsheet::Fecther(Net::Google::ShreadSheetsのラッパ⁠⁠」を使用してyamlに変換し、バリデーションを噛ませたうえでDBに登録しているのことでした.

やがて話題は「開発言語としてPerlを使用する理由」へ。⁠Perlはボトムアップ文化」とし、⁠小さなパーツを組み合わせて自分好みのソフトウェアが作れる」⁠教義がなく、いくつものやり方が許容される」と、もともとWeb言語ではなくUnix文化のなかで生まれてきた言語ゆえの魅力があると力説しました。そして、⁠小さなイノベーションが誰にでも起こせるし、それが大きなイノベーションになることもある」と述べていました。

画像

画像

Lightning Talks Day 2

2日目のLightning Talks(LT)です。

画像

riywoさん「Most Powerful High Availity Load Balancing⁠

riywoさんの発表は、DNSを使ったリバースプロクシの利点と問題点について、プロクシを用意しなくてもいいのは利点であるが、キャッシュされてしまう問題があるという内容でした。野球選手募集、と同社の特徴を生かした求人で最後を締めくくっていました。

画像

画像

charsbarさん「Annual Report 2012」

charsbarさんによる、毎年恒例の最強CPAN Author決定選手権の結果の発表でした。今年も首位はxaicronさん。日本人Authorにおけるリリース数は減ってはいるが、これを成り上がれるチャンスと捉えるかは皆さん次第、と新しい世代のCPAN Authorに期待を寄せていました。

画像

画像

karupaneruraさん「Dummy data with Teng」

karupaneruraさんの発表は、Tengでダミーデータを楽に作るにはどうするかを考察するという内容でした。自身で考えた何通りかの方法を紹介した上で、他によい方法があれば教えあいたいと、情報共有を訴えていました。

画像

画像

onagataniさん「スカイアークシステム - 帯広から、愛」

北の国からの五郎の出で立ちで登壇したonagataniさん。帯広では北海道の広大な大地をトラクターで移動しなければならず、と冗談で笑いをとっていました。最後に、クマに勝てる、マイナス20度にも耐えられるエンジニアを募集、と冗談とも本気ともとれる求人をしていました。

画像

画像

tagomorisさん「About our output」

エンジニアはアウトプットをしようと話し始めたtagomorisさんですが、いつの間にかISUCON2の紹介になっていました。10月4日から募集を始めるそうですので、興味がある方は今後も目を離さずにチェックしておきましょう。

画像

画像

kawamurayさん「Imager::HeatmapでVisualization」

CPAN Authorの先輩方から強いプレッシャーを受けているというkawamurayさん。ヒートマップを描くためのImager::Heatmapを作った話を発表していました。最後に、凄腕のHacker達は初心者を育てることで今後楽ができるはずなので、どんどん指導してほしい、とさらなる成長に意欲を燃やしていました。

画像

画像

turuginaさん「ほとんど同じ」画像ファイルを簡単に整理するために」

類似したファイルを見つけ出すImage::Characteristicsというモジュールを作ったという内容でした。画像を領域分割し、特徴点を算出して類似性を判定しているそうです。デモでは、実際に類似した画像が正確に判断されていました。

画像

画像

Futoshi Koresawaさん「株式会社スターダストコミュニケーションズ - Introduce SDC」

Futoshi Koresawaさんによる、女性に人気のショッピングサイトを運営する、スターダストコミュニケーションズさんを紹介するLTでした。ユーザーミーティングを行い、生のユーザの声を聞くことを大事にサービス運営しているそうです。勉強会の会場も提供して頂けるとのことですので、興味がある方はコンタクトをとってみてはいかがでしょうか。

画像

画像

do_akiさん「それ PHP でできるよ」

do_akiさんは、PHPでPerlを動かすことができるpeclの開発が2006年で止まっていることに気がつき、それを修正して現在のPHPでも動くようにしたそうです。デモでは、実際にPerlのコードがPHPで動いていることが見て取れました。perlはPHPでできると断言するdo_akiさんに、会場のPerl Mongerからも賞賛の拍手が送られていました。

画像

画像

Ingy döt Netさん「Last Week!」

Ingy döt Netさんによる、プラガブルなPerl 5構築するためのプロジェクトに関するLTでした。組み替え可能なVMとしてPerl 6も存在することから、Perl 5 + Perl 6 = Perl 11と命名されたそうです。perl11.orgというドメインがすでに用意されていることに、会場からは喝采が起きていました。

画像

画像

M_Ishikawaさん「おせっかい駆動開発のススメ」

おせっかい駆動とは、主に自己満足のために勝手にものを作ることだそうです。これに加えて、スターバックスなどでドヤ顔することで開発を高速に進めるドヤリング型開発も提唱していました。これらにより、M_Ishikawaさんは2chのスクレイパーを開発できたそうです。

画像

画像

Satoさん「株式会社フリークアウト 続・平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用」

広告オークションには高度なテクノロジーが必要だとするSatoさん。数十万QPSをコンスタントに50msで返せるだけの技術力が必要だと訴えました。同社では、フリーランチ、フリードリンク、フリースナックにより、devる環境が整っている、と最後に笑いをとっていました。

画像

画像

moznionさん「だいすきぼくらのサスペンダー」

当連載のレポーターでもあるmoznionさんのLTは、pull-requestをするとdankogaiさんのサスペンダーをpullするサービスを紹介するものでした。途中操作を失敗して先にオチが出てしまいましたが、dankogaiさんも含めて最後までみんなLTを楽しんでいました。

画像

画像

maka2_donzokoさん「今年のPerl同人活動と今後の展開」

国際展示場前.pmを設立したというmaka2_donzokoさん。Acme大全2012とそのシール、そして新たに開発した同人ボードゲーム「やっぱしぃYAPC」を紹介しました。Acme大全2012は通販でも購入することができるそうです。

画像

画像

takesakoさん「Perl 1+1 耐久テスト」

今回のTAKESAKOさんのLTでは、タイトルの通り1+1の計算を様々な言語で戦わせていました。RubyやPython、PHPは、"1+1+....+1"の"1"の個数が増えるとメモリが不足してevalできず、結果を算出できずにエラー終了してしまいました。最後に残ったPerlとnode.jsですが、5千万個の1の足し算をnode.jsが処理しきれず、優勝した言語はPerlでした。Perlの一風変わった潜在能力がまた1つ明らかになった、大変興味深いLTでした。

画像

画像

Gosuke Miyashitaさん「How Perl Changed My Life」

クロージングキーノートです。Gosuke Miyashitaさんは自身のperlとの関わりと、その中でで得たもの、学んだものについて話しました。

全社的な技術的問題の解決に関わるテクニカルマネージャーの仕事や自身のperl経歴とスピーカーをやるようになった経緯に触れた後、perlで得たものとしてブログでの技術情報の発信をきっかけに仕事を得たこと、perlのでのアウトプットきっかけに現在のテクニカルマネージャーのポジションを得たこと、そしてなによりも素晴らしい仕事仲間を挙げ、一人一人を紹介してどのようにサポートしてもらっているかを述べていました。

続いてperlで得たこととして、コードを書く力やオープンにすることの力について言及しました。perl作者であるラリーウォールをはじめ、積極的に関わるようになるきっかけとなった宮川さん、そして全てperl mongerに感謝しました。

そして最後に「この後ブログでこのセッションについて書くならば、人生を変えたものについて書いて欲しい」と締めくくると、会場から大きな拍手が起きていました。

画像

画像

Daisuke Makiさん「Closing」

牧さんのクロージングです。⁠楽しめましたか?」という声がけから始まりました。

会場変更など、2011年から変わった点も多いYAPC::Asiaだったっと話します。子どもが生まれて牧さん自身も「My Life changed」となった年だったそうです。そして今年はスポンサー33社、スタッフ43名、トーク/セッション63(LT以外)だったとし、発表者やスタッフを含めて841名の過去最大の参加者となったことを示しました。

続いて、参加者が投票してベストトーク賞を決めるBest Talk Awardsの受賞者を発表しました。結果は、3位は「平均レスポンスタイム50msをPerlで捌く中規模サービスの実装/運用」を発表したTatsuro Hisamoriさん(@myfinder⁠⁠、2位は「10 more things to be ripped off」を発表したTatsuhiko Miyagawaさん(@miyagawa⁠⁠、1位は⁠新しい」を生み出すためのWebアプリ開発とその周辺」を発表したYusuke Wadaさん(@yusukebe)でした。

その後、I have dreamとして、今後のYAPCが「間口の広いカンファレンスであってほしい」⁠想いをshareする場所であってほしい」とし、いまもできていることを、これからも続いてほしいと話します。そしてYAPCをいろいろなところで開催したい、と述べていました。

最後はスタッフについて言及しました。首謀者である櫛井さん、JPA理事会、ボランティアスタッフに感謝しました。そしてスタッフ全員がステージに上がり、参加者が拍手で称え、今年のYAPCは幕を下ろしました。

画像

画像

画像

LT-thon

1日目に引き続き、2日目も大盛況のLT-THONから、レポーターが特に注目した発表をピックアップしました。

画像

saisa6153(たんないゆうき)さん - 献血とPerl

献血という、およそPerlとの関連性が見つけ辛いテーマで、たんないさんが発表しました。彼によれば、秋葉原の献血ルームにWi-Fiや飲み物が完備されており、看護師さんと仲良く話せることにささやかな喜びを感じると言います。

いよいよトークにPerl成分が入り込んできたと思ったところでドラがなりましたが、LT-THONにおいてはドラは目安でしかないので、続行。いつ献血に行けばよいのかを調べるWebサービスを開発したことを説明しました。

社会貢献と自己欲求を満たした、とても斬新な内容でした。

画像

minemazさん - できる!エクセル方眼!

minemazさんの発表は、プログラマがもっとも畏怖するとされるエクセル方眼(表計算ソフトのセルを方眼紙のように扱った文書データ)に関するものでした。

Excelはよく強制終了し、CPANモジュール"Win32::OLE"はMacで動作しないという理由から、簡単な書式のテキストデータからエクセル方眼を出力するコマンドラインツール"txt2excelhogan.pl"を開発。簡易なテキストからエクセル方眼を生成するデモを披露しました。

今後はExcelの読み込みに対応したいと意気込みも見せ、聴衆からの大きな拍手を受けていました。

画像

Motoyamaさん - ほんとに便利なフォントの話

デザイナーであるMotoyamaさんは、デザイナーならではのテーマで発表しました。

初めにシンボルフォント(アイコンのベクターデータをフォントにしたもの)についての解説を行い、アルファベットにフォントを割り当てていることによる弱点を説明しました。解決策として、Ligature Font(合字)にシンボルフォントを割り当てて、弱点を克服。Webによるデモを交えて、利便性を伝えていました。

Perlと直接関連性の無い内容ではありましたが、エンジニアでは思いつかない驚きの解決法に、聴衆も惜しみなく拍手を送っていました。

画像

松村竜次さん - カスタムタグで高速開発

松村さんの発表は、カスタムタグを使った開発手法の解説でしたが、その基盤となる言語はArc。珍しい言語の話に、聴衆の中には思わずうなる方もいました。

まずカスタムタグが使われている事例やTwitter Bootstrapを挙げ、ここまで便利になったマークアップ環境があるとはいえ、HTMLは人間が書くものでは無いとバッサリ。その代案として、Arcのコード(S式)でHTMLを表現し生成するというアプローチを披露しました。高速開発につながる方法だということです。

また、arc-users.jpを復活させたことを報告し、実はArcは流行っていると述べていました。

画像

クロージング

総勢63名(そのうち約半数が飛び入り参加)という圧倒的な発表人数の中から、⁠拍手くん」経由で受けた拍手の数がもっとも多かった発表者であったtechno_nekoさん(スープカレーについて発表した)に対し、主催のuzullaさんより「ベストエルティニスト賞」としてトロフィーが贈られました。そして、飛び入り以外の発表者に対して、LT-THON発表者専用Tシャツが贈られました。

最後に、uzullaさんから参加者全員への感謝の言葉をもって、大盛況のうちにLT-THONの幕が下ろされました。

地域.pm ミートアップ

本日お昼に、LT-thonと同じ会場で全国から地域pmが集まり、⁠地域.pm ミートアップ」が行われました。

この地域pm ミートアップは「PerlコミュニティというのはYAPCや超大型pmだけではなく、全国に『地域pm』として存在している。意外とその存在を知られていない地域pmを知ってもらい、それ積極的に参加してもらいたい。そして、もし身近に地域pmが存在していなくて、コミュニティに参加するのが難しいようであれば地域pmを立ち上げてほしい。その手助けになれれば」という動機から企画されたそうです。

地域pm ミートアップの開催に先立って、LT-thonおよび地域pm ミートアップ主催の@uzullaさんがHachioji.pmを紹介しました。他のpmとひと味違う、独特なスタイルで運営・実行されていることを発表しているとし、観客を惹きつけていました。

地域pm ミートアップは、各地域pmのPRを中心に行われました。

トップバッターはFukuoka.pmでした。⁠Shuranokuni.pmでは無いですよ」と口火を切ると、会場がどっと笑いに包まれました。Fukuoka.pmは2007年11月から発足し、既に21回開催しており、来月10月には第22回が開催されるそうです。Fukuoka.pmの内容は、技術プレゼンやミーティングが中心で、その後に企画される飲み会はだいたい4次会まで行われると話していました。

Hokkaido.pmは5, 6人のコアメンバーで構成されており、平均的には20人、最大で40人程度の人が集まるpmとのことです。会議室を借りてプレゼンを中心に行うというスタイルのpmだそうです。また北海道という土地柄、ご飯が美味しいため懇親会が大変人気だと紹介しました。

Nagoya.pmは「名古屋でPerlをゆるく語る会」「Nagoya.pm」の2つが並行的に開催されていて、前者は月に1回程度、後者は2, 3ヶ月に1回程度のペースで行われているそうです。⁠Webサービス系の企業が少なく、実践的なノウハウが少ないのが少し残念」としながらも、⁠Perlが好きであれば誰でも気軽に参加しほしい」とアピールしていました。されていました。

1日目の本編LTでも登壇していたSendai.pmは、⁠自分以外に東北から(地域pm ミートアップに)参加している人が1人もいない」とした上で、⁠これが運営に支障をきたしているのはお分かりでしょう」と自虐的なジョークで笑いを誘っていました。Sendai.pmは2010年に結成し、2011年の11月に第1回が開催されたとのことです。⁠"www.eikichi.jp" にアクセスしてもらえれば、色々な情報を得られるのでよろしくお願いします」とPRしていました。

Niigata.pmは冒頭、⁠今、日本で一番アツい地域pm」と自称しました。その言葉に違わず、地域pm ミートアップに参加していたNiigata.pmのメンバーは6人という大人数で、その存在感の大きさを存分に発揮していました。⁠新潟は仕事でPerlを使っている会社が少なく、Niigata.pmを構成する人員も趣味でPerlを使用している人間がほとんど」としましたが、⁠仕事でPerlを使っている人がいないからといって、pmを開催するのは無駄なことでは無いからどんどんやるべき」と地域pmの活性化を促していました。

関西で開かれているPerlの勉強会であるPerl 入学式が、関西のPerlコミュニティ事情を報告しました。関西にはKansai.pm やKyoto.pmといった比較的規模の大きい地域pmが存在していることや、奈良でも新しいpmが発足する話が挙がっていること、また関西でもHachioji.pm的なガチュアルなpmの立ち上げが企画されていることを挙げ、関西のPerl熱が高まっていることを発表しました。

来月10月20日に第1回が開催されるChiba.pmは、その発足の経緯を発表しました。"LL Decade"の懇親会でのやりとりがきっかけでChiba.pmの立ち上げを決意し、Chiba.pmの立ち上げをブログに書いたところ反響があり、応援してくれる人が多数集まったそうです。⁠近所にpmが無いならばぜひ作るべき。pmを主催するのに特別なスキルは必要無い」として、地域pmの開催を勧めていました。

「pmでは無いんですが」という前置きで、Perl Beginnersが登壇しました。Perl Beginnersは初心者向けのPerl勉強会で、⁠登壇者が質問をする」という通常のセッションの逆方式を採用しているそうです。来月10月26日に第5回Perl Beginners が開催されると告知しました。

最後を飾ったのはKokusaitenjijoumae.pm(国際展示場前.pm)でした。Acme大全を頒布されている事でおなじみの@maka2_donzokoさんが旗揚げした地域pmで、今回の地域pm ミートアップが初のお披露目とのことでした。本来はKomike.pmという名前をつける予定でしたが、komikeは登録商標だったので断念し、今の形に落ち着いたと話していました。活動としてはコミックマーケットの会場で年2回開催されるpmとのことです。内容は人気深夜アニメをオマージュしたネタがふんだんにちりばめられており、会場は大盛り上がりでした。

各pmの自己紹介の後に、地域pm代表者のパネルディスカッションが行われました。ディスカッションでは、地域pmが慢性的に抱える参加者不足に関する話題が中心となっていました。地域pmに人を集める方法としては「近隣地域からも参加者を集める」といった方法や、⁠大学など、アカデミックな方面から攻めて人材を集める⁠⁠、⁠種をまくように、Perl初学者を積極的に育てていく」という方法が提案されていました。また、⁠pmだからと言ってPerlに過度にこだわりを持たず、他の言語や技術の話題も取り入れて行くのも1つの方法では」という意見も出ていました。

最後に、Tachikawa.pmとOkinawa.pmの立ち上げを考えている有志の方が登壇してその抱負を語り、会場からは期待が寄せられていました。

画像

画像

(随時更新していきます!)

おすすめ記事

記事・ニュース一覧