YAPC::Asia Tokyo 2010
今回、スポンサー枠でYAPC Asia Tokyo 2010のチケットが手に入ったので、初めてYAPCに参加してきました。
会社が技術に理解があるのは、すばらしい。前の会社にいたら、少なくとも今回は参加していなかった。
やはり今回も少し道に迷ったが、偶然、広報の方に出会って案内してもらった。
今回もらったノベルティグッズなど。
グリーのノートとボールペンとシールは今年作ったノベルティ。
mixiはバッグ(すごく助かった)と、フリスク。
DeNAからはモバゲーのコインと交換できるカードをもらえた。
モバコインカードは配りやすくて、
サービス導入にも良くて、良いアイデアだなぁ、などと思ったのでした。
Web APIのすすめ 巨人にさらなる力を by @xaicron
http://blog.livedoor.jp/xaicron/archives/51178458.html
http://blog.livedoor.jp/xaicron/:@xaicronさんは、DeNAでオープンソーシャルをやっている方。
Web APIで重要なもの
早さが重要。早くないと使う気が起きない。
高速なWeb APIの提供方法
既存のWAFは使わない。無駄な機能の無い、おれおれWAFが良い。
Webフレームワークつくるなら
ちょっとしたものならすぐ書ける。
たしかに、問題はOAuthの認証まわりくらいかな。
実践編
- 高速なディスパッチャーは簡単に書ける
- 問題はモデルの構造。
- perlのパフォーマンスでは、メソッドの呼び出しを減らすことでパフォーマンスを上げられる。
- オブジェクトの生成を減らすのが有効。ORマッパーはコスト高い。
まとめ
おれおれフレームワークは簡単に作れるから、恐れずに作ってみましょう。
nginx & Perl by sfujiwara
http://d.hatena.ne.jp/sfujiwara/20101016/1287205507
nginx
HTTPのプロキシ
マルチプロセス + non blocking IOなサーバー
割り込みがあったら、そちらの処理を先に行う。少ないプロセスで沢山の処理を行える。
いろいろモジュール紹介
Perlの組み込み
自動的には入らないのでビルドが必要。
nginxの注意点
時間のかかる処理は書いてはいけない
アプリケーションの処理は書いてはいけない。
プロキシだし、通常、処理を書く必要ないでしょう。
Perl で自然言語処理 by @overlast
http://www.slideshare.net/overlast/perl-5460697
こつ
- 最初は簡単に。徐々に洗練すると良い。
- 機械はミスする。少しの間違いは許容すること
- データは自分で集めて、自前で管理すること
Webサービスによくある悩み
Webユーザーの回遊性を高めたい
- レコメンドを使う
興味が似ているユーザーを検索して表示。
例. CPAN Algorithn::NaiveBayes
- アンカーテキストをつける
例. CPAN Text::Darts
データがあるけど、検索機能がない
用意する。
単語A、単語Bって一緒にならないの?
正規化する。
代表表記を決めて、寄せる。
ユーザーが全てのアイテムを見てくれない
ランダム表示するなどして対応。
出力結果の順番
ソート順を変える
ソート順を機械学習させる
データにカテゴリ化
感想
自分は今はWebサービスをしているので、発表内容はとても参考になりました。
映画に出てくるハッカーになりたい by cho45
http://subtech.g.hatena.ne.jp/cho45/20101016/1287204627
ハッカーの特徴
- 文字が流れる
- 暗号を使う
何故ハッカーになりたいか
もてたいから
ハッカーになるため、何をするか
何かプログラムを作ろう
ただし、実用性も欲しい
tail -f
これをもっとかっこよく
リアルタイムにグラフを作って表示。
Unix Programming with Perl by Kazuho Oku
ちょっと席が足りなかった。
エラーNO
ディレクトリが無いときにどうするか。
ディレクトリの存在チェックするだけでは不十分。
→ Errnoモジュールで判定しましょう。
$!とErrnoモジュールとの違い
$! は数字と判定すると数字が返り、文字と判定するとメッセージが返る
Errnoは システムのエラーナンバーを返す。
- エラーナンバーを調べるには、manを使う。
$ man 2 mkdir
fork
forkはメモリをコピーする。
元のプロセスがもっていたファイルのロックを、新しいプロセスでも同じファイルのロックを見てしまう。
ファイルハンドラーなども、同じものを見てしまう。
防ぐには
ファイルはクローズしておくと良い。
Welcome Perl 6! Is Rakudo Star useful? by risou
Rakudo Star
2010/07/29に出た、Perl6の実装。
最新は9/28版
使える機能、まだ使えない機能がある。
Rakudo Starの心配点
- 使いやすさ
- 早さ
Easy Using
- Perl5はとても便利。モジュールも多い。
- Perl6のモジュールが少ないので、利便性はPerl5には及ばない。
- 情報がない。
Speed
- 遅い。
Rakudo Starは使えるか
- Perl5 is alive
- Perl5に、Perl6の機能が入ってきたので、Perl5でも良いんじゃない?
- Perl6は、正規表現が良いので、使っている。
Inside mbga platform by Toru Yamaguchi
http://www.slideshare.net/zigorou/inside-mobage-platform
- PC向けは全て 2-Legged OAuth
個人的には、この発表内で最も注目した発言。
実は認証まわりをどうしているのか、いろいろ疑問だったのだが明言してくれたことで解決。
Yahooモバゲーで思い切って2-Legged使うということは、他のモバゲーのサービスのいくつかの認証も2-Legged OAuthを使っているに違いない。
オープンソーシャルのコンテナの作り方
他社の状況を結構つかんでいるようだ。
PHP版のShindigも作りがJava版と似ているので、直す場所は大体おなじになります。
PHP版のShindigは、PHPだけど、PHPの流儀では書かれていないのです。
- Shindigには、いろいろ不満があるようだ。