PHPプログラマ in YAPC::Asia 2006 Tokyo - 0330
本日も偵察してきました。本日はセッションが二つに分かれているためどちらかを選ばなければなりませんでした。
後者 (4階) のプレゼンでは質疑部分も通訳がないことが多くて、英語の質問だけがなされたりと言う光景もありました。
まぁ大体理解できたから良いんですけど。4階も立派な部屋とスクリーンでした。
Thursday, March 30
Time: 9:30 AM - 10:00 AM
Summary: Glue: Separate Application Logic from Code -- Atsushi Kato
Time: 9:30 AM - 10:00 AM
Summary: Marrying Perl with Other Languages -- Chia-liang Kao
前者はPerl用のモジュールの紹介に見えて、まあ後者もそうなのですが、生かせるアイデアがあるかな、と思って後者に参加。
PerlからJavaScriptなどの他の言語を呼べる、と言うことですが、仕方ないのかもしれませんが、
$jsfuncstr = "function f(x){return x * 2;}"; みたいなことになったりとか、メソッドはまだ perl_call_method($o, $methodname, $arg);
と呼ばなきゃいけなかったりとか、ちと使いづらそうな感じでした。
Time: 10:00 AM - 10:45 AM
Summary: Perl 5.8 and Unicode: Myths, Facts and Changes -- Dan Kogai
Time: 10:00 AM - 10:45 AM
Summary: Template Toolkit for non-web applications -- Marty Pauley
テンプレートテクノロジーをはWebアプリケーション以外に適用、と言う考え方が応用できるかな、と参加。
さっそくメール送信に使っていた。あと、Apache configファイル(複数サーバー運用時)やmakeファイルとかdnsレコードとか。Javaのテンプレートにも使ってましたが、どうかな・・・。基本的には、m4(さも前から知ってたみたいに言ってますけど最近知りました) みたいなプリプロセッサの一種として捉えれば、色々なことに使えるし、プリプロセッサとしては高性能な部類に入るんじゃないの、と言うことのようです。
Time: 10:45 AM - 11:30 AM
Summary: Perl 6 Update -- Damian Conway
Time: 10:45 AM - 11:15 AM
Summary: Kwiki-Kwiki -- Kang-min Liu
Best Wiki Framework. Perl hacker Playgroundとのことで、簡単に構築できて、簡単に配布できるWiki。確かに簡単に作れそうでやってみようかな、と思いましたが、よく考えると、好みのプラグインなどを使って拡張できるWikiをコマンドひとつでtarballにまとめて友達にあげられる、と言う発想が面白いです。
It helps hackers to create a customized wiki.
It helps users to run a wiki easily.
なるほど。
Time: 11:15 AM - 11:45 AM
Summary: Inside Net::AJP13 -- Hiroyuki Oyama
Apache2.2のAJP13プロトコルの内容は意外と単純で、Perlで通信できました、みたいなことを言っていました。なんの役に立つかは別として、と言うことですが、こういう人が人の突っつかないところを調べて説明してくれるのは良いことなのかな。
Time: 11:30 AM - 12:15 PM
Summary: Perl DateTime project -- Dave Rolsky
Time: 11:45 AM - 12:15 PM
Summary: Development of Unified Legacy Encoding handler on Open Source software -- Masayuki Moriyama
ミラクルリナックスの人とのことですが、Windows XPを使ってプレゼンなだけでなく、見掛けから喋り方、プレゼンまで堅く、このイベントの中では却って異質に見えました。現在アプリ間でUNICODE変換表が一致していないために起きる、「1バイト円記号が2バイトバックスラッシュになる」「WAVE DASHほかの問題」「機種依存文字」の3つの問題を解決するために、ISO2022-JPMSと言う新エンコーディングを作り、Perlだけに限らず様々なモジュール(Ruby, PHP, PostgreSQL, MySQL, nkf, libiconv, GNUlibcなど)をこれに対応させていく、と言うことで、IPA2005にも採択された、とのことですが、Macの機種依存文字や携帯の機種依存文字は今はあまり不平が膨らんでいないので今回は考えない、とのことで、その場しのぎな気がして心配になりました。
この人だけでUNICODEの仕組みを変えるには至らないのかもしれませんが、どんどん文字コードが増えていく状況は、外国の人に受け入れられるのでしょうか?
Time: 1:30 PM - 2:00 PM
Summary: Fighting with Blog spams -- Tatsuhiko Miyagawa
Time: 1:30 PM - 2:15 PM
Summary: Learning Haskell -- Audrey Tang
Time: 2:00 PM - 2:20 PM
Haskellも熱いようで、Haskell側を広い会場にしようか、と言う話もしてたようですが、私は実践に生かせる話がありそうな、Blogスパム側に出ました。トラックバックはAPI規格があるので本物と区別がつきにくい、とのことで、Lookup(DNS/URLBL(BlackList)等)、Link(#,LocalBL,EmailLocalBL), Keyword Filter などでscoreをつけた上でスパムかどうか、トラックバックを受け付けるか承認を通すか却下するか総合判断をしているとのことです。
bulkfeedsでは1日100万pingが来るが、70万がURLBLで引っかかるとのことです。
amazon楽天等アフィリエイトサイトへのリンクが多すぎるサイトをはじいたり、SpamSubmissionと言う一人のユーザーの評価を他のユーザーの評価に生かす仕組みなどをしているようですが、なかなか撲滅には至らないようで大変そうです。SpamSubmissionをもっと多くの人に使ってもらい自動評価とかにすればよいのかな?
Summary: On debug screens -- Kenichi Ishigaki
Time: 2:20 PM - 3:05 PM
Summary: Getting Your Feet Wet With XS -- Daisuke Maki
Time: 2:15 PM - 2:45 PM
前者にでました。RoRやCatalystなどでスタックトレースやソース行つきの綺麗なエラースクリーンがでるのをPerlの様々なモジュールに実装されていった話で、リクエストやレスポンスなども入っているようです。もちろん環境変数などを見て、開発環境でのみこの画面は出るようです。はてなの伊藤さんの科白だそうですが、開発者にとって「良いもの使ってる感」て大事だよね、と言うのがあり、また、でかいログ見るの嫌だからデバッグ画面に凝る、と言う動機を最初はしていましたが、実は
経験ある技術者は、別にログ見りゃ良いじゃんで、ログ見るの嫌がる時点で経験が浅いかな、そして浅い人は、このエラー画面を見てもこういうものかと思って何も思わないかもしれませんね。けど逆に、経験ある技術者こそ、エラー画面がこんな凝ってるの見たら驚くよね、と言う話をしてました。これが「良いもの使ってる感」と言うことなのでしょう。
ちょっと心理学的な感じもしますが面白かったです。
Summary: SVK: Version Control without the Headaches -- Chia-liang Kao
Time: 2:45 PM - 3:15 PM
バックアップが重要だった時代から、1982年RCS、1992年CVS、2002年Subversionと、Subversionに来るまで20年も掛かっていること、それはみんな忙しいからツールの使い方に時間掛けたくないてことだよね、と言っていた。(ソース管理だから枯れていないと嫌だ、と言うのも大きいと思うけど)
ちなみにアンケートとってテ、RCSを使ってる人は少なかったけど、CVS使ってる人は大半で、Subversion使ってる人もその8割くらいはいました。で、2003年9~2005/5svkを作ったのは、主にローカルでのブランチやマージの作業がしやすいように、とのことです。でもバージョン管理システムはGUIの方がずっと使いやすいと思います。。
Summary: 混合語 -- Marty Pauley
Time: 3:15 PM - 4:00 PM
Perl6の新機能、Role(Interface)をdoes(implements)する、とか、traitとかを、書き方が日本語ぽいよね、と言う形で紹介していました。
Summary: Inside Hatena::Bookmark's Backend -- Naoya Ito
Time: 3:15 PM - 4:00 PM
Summary: Sufficiently Advanced Technologies -- Damian Conway
Time: 4:00 PM - 4:30 PM
後者も見たかったのですが、前者を見ました。やっぱO/Rマッピングあってこそと思いました。もう生SQLは禁止にしようかな。あと、1から書き直したいと言う衝動に駆られるが書き直しには意外と時間が掛かる、と言って、人力検索の例をあげていて、リファクタリングで、と言ってました。どうせ1から書き直してもまた書き直したくなるので、重要なのは、モジュール単位の書き直しができる構造と、リファクタリングし続けられるかと言うことだと思います。
Summary: Catalyst Everything! -- Daisuke Murase
Time: 4:00 PM - 4:30 PM
Summary: Wikiwyg -- Ingy döt Net
Time: 4:45 PM - 5:45 PM
途中から参加でしたが、最初は、Firefoxでのプレゼンテーションの仕組みを話してました。PerlもどきのテキストをPerlを通してXULにしてJavaScript制御してるみたいです。後半は、WikiにはやりのWYSIWYGエディターをつけるモジュールの話でした。
Summary: Lightning Talks
Time: 5:45 PM - 6:30 PM
これ短いプレゼンを何人もしていくスタイルで、もう眠いので略しますが、SQLてリレーショナルでなくて、論理と実装が混じっているからだまされるなよ、と言う、昨日買った本の話がさっそくされていたので、本をよく読もうと思いました。でも、また冗談めかして極端なことを言ってるのかなと感じた人がいるんじゃないかとちょっと心配です。
Summary: Keynote -- Larry Wall
Time: 6:30 PM - 6:40 PM
Fedoraマシンがトラブってうまくプレゼンできず、だいぶ時間掛かってました。プレゼンでありがちな話ですが、誰しも陥るんですね。もっと早く誰かフォローしてあげればよかったですね。日本人の前でAll your baseのもじりを使ってましたがいまどきあんま知ってる人もいないんじゃないかな。
Summary: Wrap up
ありがとうございました。
他の人の感想は http://tokyo.yapcasia.org/planet/ にも溜まっているようですね。
では、PHPの世界に帰ります。Perlの人はRubyをうらやみHaskellにおどろきPHPを軽蔑すると言う文化になっているようです。
