2004/12/22

 

[Diary] Shibuya Perl Mongers テクニカルトーク #5 メモ

 キムタクのドラマを見たことがある人よりも、アイスホッケーの試合を見たことがある人の方が数が多いドメインへようこそ!(挨拶)

 もう1週間前の話になりますが、16日に神保町で行われたShibuya Perl Mongers テクニカルトーク #5へ行ってきました。
 総じてたいそう面白く、またこういうイベントがあったら行きたいなーと思わせるに十分な、なかなか充実した内容のセッションだったと思います。

 以下、自分用まとめ。

iPod&iTunes Hack (宮川達彦)

 iTunesとAirMacの間で使われているプロトコルをHackしてAirMacを操作したり、iTunes SDK を使ってiTuneをブラウザから制御したり、ネットワーク上のiTunesライブラリを覗いたりしてみようとかいう趣旨。プロトコル内で使われている Apple Lossless フォーマットを解析して動的に生成することができれば、PCがなくても再生が可能になるなど、更に自由度が増すとのこと。詳しい話はこちら(手抜き)。
 いわゆる「サービスを作ったらAPIを公開して他のサービスと連携できるようにすれば、みんなハッピーになれるよ!」系のお話と解釈した。

アイスホッケーの成績集計とテスト駆動開発 (吉田裕美)

 アジアリーグアイスホッケーの集計システムを構築した際は、ホッケーの複雑なルールをシステムが実装できたか確認するためのテスト工程が重要だった! ということで導入した、TDD(テスト駆動開発)手法の解説。コードの生成とテストコードの実行を反復できるので、リファクタリングに適しているのが特徴とのこと。
 今まさに自分の仕事がそういうフェーズに入っているので、テストの進め方についてとても参考になった。

再考ですかーっJavaScript (小山浩之)

 Mozilla の JavaScript-C 実装である SpiderMonkey を積極的に使おうぜ! みたいなノリのお話。
 C から JavaScript を呼び出すケース、および C で独自の関数を作って JavaScript に組み込んで使うケースのそれぞれについて説明。がんばれば Apache のモジュールにしたり、HTMLに書かれたJavaScriptをサーバサイドで実行できるとかいう熱い話も。Hack value 的な価値の高さがポイントか。
 このセッションに対する質疑応答で「C から JavaScriptを使えて何が嬉しいんですか?」というものがあったが、それを言ったらおしまいだと思った。

PerlとJavaで異言語Webサービス連携 (竹迫良範)

 SOAP/WSDLを使ってシステム間通信を実装した経験を元に、SOAP::Liteを使う上での実践的かつ現実的なアプローチを解説。SOAP::Liteに色気が出てきている私としては興味深い内容。
 Perlのバージョンに依存しないUTF-8フラグを落とし方(文字化けを回避するために必要)、WSDLでインターフェースを定義する時のタイプチェックに起因するトラブルの回避策、日本語環境でSOAP::Liteを使うための情報の共有の呼びかけなど、バッドノウハウ的なお話が満載。
 SOAP/WSDLを使えば様々な環境との連携の対応が簡単になるメリットを享受できるとは言え、やっぱりそれだけ余計な苦労も多いんだなと思った。

はてなの開発裏側見せますパート2 (伊藤直也)

 はてなのシステムははてなフレームワークを使って作ってます、という話。詳細はこちら(手抜き)。
 はてなはとにかくあらゆる面でパフォーマンスを重視しており、Perlのモジュールは動作が軽くて「枯れたもの」を使用する、XML系のモジュールは重いのでSOAP::Liteではなく正規表現を使う、検索専用のレプリケーションサーバを作って検索を早くする、レプリケーションDBは全てオンメモリで収まるサイズで運用する、などのテクニックを駆使しているという。
 更に、フットワークを軽くするための開発技法についてのトークもあって興味深かった。詳細はこちら(手抜き)。

 開発の裏側の話をしてくれるってのは、技術者としてというよりは、ユーザーの一人として純粋に楽しい。こんな距離感の取り方が「はてな」の力なのだろう。

JAPH を読む (水野貴明)

 "Just Another Perl Hacker" という文字列を表示するだけのPerlプログラムを如何に難しく(=Obfuscatedに)書くかを競う、JAPHについての話。この辺のセッションから、だんだん内容がお笑いの方向に。
 インタプリタが解釈できない文字列が出てきたらそれを単なる文字列として扱う "bare word"、A xor B と書くと A と B のどちらも式として評価するために処理を実行することを利用した xor 演算子による処理の区切り、何でも式として評価してしまう eval の活用(というか乱用)、文字をインクリメントすると文字コードに1加算された文字が入る"マジカルインクリメント"など、様々な技法を駆使したプログラムの数々にビビる。
 こういうヤバい話で盛り上がれるセッションに参加できて幸せだ。

Perl大改造!!劇的ビフォーアフター (早川真也)

 テクニカルトークというよりは、Perlプログラミングで「大改造!!劇的ビフォーアフター」をやってしまうというアイデアで笑いを取った、早川真也氏のセンスがひたすら光ったセッション。「レキシカル変数の仕掛人」という代名詞は伊達じゃないと思った。
 テクニカル的には多分やりすぎ。だがそれがいい。

Posted at 00:00 | WriteBacks (0) | permalink
WriteBacks
TrackBack ping me at
http://fukaz55.main.jp/diary/shibuyapm.trackback
Post a comment

writeback message: Ready to post a comment.















Syndicate this site (XML)  Subscribe with Bloglines  Subscribe with livedoor Reader    blosxom 2.0.2