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プログラミングで「大改造!!劇的ビフォーアフター」をやってしまうというアイデアで笑いを取った、早川真也氏のセンスがひたすら光ったセッション。「レキシカル変数の仕掛人」という代名詞は伊達じゃないと思った。
テクニカル的には多分やりすぎ。だがそれがいい。
2004/12/20
[Diary] スタイラス紛失
日曜日、出かけた帰りの電車の中で iPod を聞きながら(伏線)CLIE TJ25 を使おうとしたところ、本体に刺さっているはずのスタイラスがなくなっていることに気付く。どこかで落としてしまったらしい。
落としてしまったものは仕方がないとしても、今スタイラスがないとCLIEを使えないので困る。何かスタイラスの代わりになるものはないか? と思って鞄の中を探したのだが、でもペン状のものは何も持っていなかった。
その時、「いや違う! オレは今一つだけ、ペンの形態をしたものを持っているじゃないか!」と気付いた。
その直後、オレはおもむろにiPodからイヤホンを引き抜き、イヤホン端子をCLIEのGraffiti入力エリアに突き立てた!
書ける! 書けるよ!
イヤホンの端子部分でも字が書けるよ!
iPodってスゲエなあ!(まちがい)
解決編:
とりあえず、今日から先代のPalmである Visor Edge 付属のスタイラスを、CLIEと一緒に持ち歩くことにしました。
CLIEのものより遙かに書きやすいです。Visorラブ(オチ)。
2004/12/16
[Diary] Shibuya Perl Mongers テクニカルトーク #5 に行ってきます
Shibuya Perl Mongers : Shibuya Perl Mongers テクニカルトーク #5
Shibuya Perl Mongersテクニカルトーク#5 を2004年12月16日に開催します。
この日はちょっと横浜まで出向く用事があるので、それが終わった後にこちらに参加する予定です。
技術的について行けるかどうかちょっと不安ですが、こういうイベントに行くのはえらい久しぶりなので楽しみ。
2004/12/14
[Clipping] 卓球短歌カットマン
レベル15のウィザード使いの僕であるが シェイクハンドダブルス前衛
身の中にマブチモーターを仕込んでるとしか思えぬ奴の素振りだ
例えるなら池上正雄は年老いたSF作家のような顧問だ
元卓球部 現生徒会長木戸健太が毎日部室に来るので困る
Fuku Diaryで知った、卓球部所属の中学生の生き様を綴った短歌。作者のしんくわ氏のサイトはこちら。
まるで四コママンガ誌に載ってそうなマンガチックな中学生の部活動の描写と、でも読んでいるうちにどことなく「あの頃」への郷愁を誘うナイーブな雰囲気を併せ持つ、絶妙なセンスが素晴らしいと思った。
「言葉の持つ力を改めて思い知らされました。
」という(福)さんのコメントに激しく共感したのでクリップ。
[Clipping] ScrapBook
ScrapBook :: Mozilla Firefox ExtensionScrapBook はWebページの保存と収集したコレクションの整理を手助けするための Mozilla/Firefox 拡張機能です。
今表示しているページを、右クリック→ページの取り込みを選択、でローカルに保存できるプラグイン。
スラッシュドットの(下手に「著作権」なんて言葉を出したために紛糾しちゃったことで有名な)「ネタの種」スレッドでその存在を知り、何だか便利そうなのでインストール。
確かにメモ代わりに良さそうなので、しばらく使ってみるつもり。最近はこれとか Copy URL+ とか、入れてるとブロガーを気取れるプラグインを入れるのがマイブームなのです。やっかいだ(オレが)。
あと英語版Firefoxにこのプラグインを入れると右クリックで出てくるメニューの表示も英語になるのですが、これを日本語にしたい場合は user.js に
user_pref("general.useragent.locale", "ja-JP");
を書き加えてやると良い、と L10N FAQ を読んで知りました。奥が深いなあFirefox(今までロクに調べなかっただけです)。
[Clipping] ベティちゃんの骨
Michael Paulus :: Skeletal Systems
Weekly Teinou 蜂 Woman の 12/ 5の日記で知った、アニメキャラの骨格を描写したパネルを展示しているサイト。
アニメキャラの骨格を作ろう、という発想そのものが素晴らし過ぎます。
どのキャラも体格がアニメチックにデフォルメされているため、その骨格はどれも生物学的に(というか物理的に)あり得ない様相を呈していて萌え。頭でっかちで眼球が異様にデカい「パワーパフガールズ」のキャラなんか頭蓋骨がすごいことになっていたり、ピカチュウに至っては尻尾の骨まで稲妻状に曲がっていたりと、どいつもこいつもちょっと凄いことに。
その中でも個人的に一番ツボだったのはベティちゃんの骨格。彼女のチャームポイントはなんと言っても突き出た可愛い唇ですけど、このサイトの骨格図では唇にまで骨が入ってます。やりすぎです。
[Clipping] クリッピング
最近気になったネタをまとめておきます。
- Synergie.: SH901iC 気になる性能/miniSD対応情報
今携帯を買い換えるとしたらおそらくこれを選ぶだろう機種がSH901iC。そのSH901iCに関する情報がまとめられている。
今自分が携帯に望んでいるのはカメラの性能とポータブルメディアプレイヤーとしての機能(後はPCと接続してネットに繋ぐ機能)なのです。既に携帯を電話として使ってない自分がいます。 - 筋トレ職人の実践講座~効率的にトレーニング&シェイプアップ!~
All About Japan のダイエット経由で知ったサイト。最近サボり気味のダイエット運動にやる気を起こさせるために参照中。
開脚ストレッチはぜひマスターしたい。自分の股関節の固さは異常。 - 【特別企画】IT業界で派遣エンジニアとして働く道 (MYCOM PC WEB)
職場を辞めたくなるCMで有名なスタッフサービス協賛の「派遣やらないか」記事。
現在派遣契約で働く自分を鼓舞するために。 - MONSTER iCarPlay Wireless Plus- FM Transmitter for iPods with Dock Connection
前にちょっと書いた MONSTER iCarPlay Wireless FM Transmitter の後継機種。
実はもう iCarPlay Wireless FM Transmitter は購入済みでそこそこ便利に使っているのですが、今度の iCarPlay Wireless Plus では「任意の周波数でプリセットを3点設定可能ですので、干渉のない周波数が設定可能となります。
」という機能がセールスポイント。ちょっと高いけど、おそらくこっち買った方が(他のFM放送への干渉を気にしなくて良い分)良いのではないのでしょうか。
つうか、オレが買った直後に後継機種が出るなんて! さすがオレ!(ダメ)
2004/12/02
[Clipping] 「PSP」という単語からは Paint Shop Pro を連想しますが
「DS」という単語から「ダークシュナイダー」を連想してしまう世代の人?(挨拶)
そんな感じで、ライバルのPSPに先駆ける形で Nitendo DS が発売された模様。自分はお金なくて買えないけど。
世間的には「君のためなら死ねる」専用機という認識が一般的な様だけど、個人的には「直感ヒトフデ」が微妙に気になるところ。お金なくて買えないけど。
買えないので、10月下旬に Google News で見かけた、DS絡みのおもしろ画像を紹介。
この現象は、毎日新聞の記事の中に PSP と DS の写真が両方載っていて、たまたま Google News がこっちを拾っちゃったから発生したっぽいんだけど、もしワザとやってんだったら Google News の中の人はちょっとすごいなと思った。こういう笑いの取り方は大好きだ。
ラヴィ(おわり)