デブサミ出張Shibuyaイベント感想リンク集 – Plagger/JavaScript/Shibuya.pm/Shibuya.js/Shibuya.pl

2/14 と 2/15 は終日 Developers Summit 2007(略してデブサミ)に行ってきました。

デブサミですが、テクノラティJAPANの注目のキーワード第1位になっていました。すごい人気ですね。

テクノラティ: 「デブサミ」のブログ記事検索結果

本エントリーでは出張Shibuyaイベントに関係するセッションを中心にまとめを紹介したいと思います。


[開発テクノロジー]【14-B-3】2/14(水)13:10~14:00
PlaggerによるRSS/Atomフィードのマッシュアップ
~ Web2.0時代のインターネットPipe操作術 ~
発表者: 竹迫良範(サイボウズ・ラボ株式会社 / Shibuya Perl Mongers)
Plaggerは Perlで書かれたオープンソースのRSS/Atomアグリゲータです。洗練されたプラグイン機構を持ち、様々なモジュールを組み合わせることによって世の中に存在する様々なフィードを自分好みにカスタマイズできます。宮川さん個人のハックから生まれたPlaggerが、どのようにして作られどのように成長してきたかを具体例を交えながら面白おかしく紹介します。

そんな中Shibuya.pmから竹迫がPlaggerに関する総まとめの発表をさせていただきました。
20代最後の講演ということもあり、記念に和服+Wiiリモコンで正装してプレゼンしました。

鈴木雄介さん 河村さん 竹迫

写真はコンテンツ委員和服3人組です。


[開発テクノロジー]【14-B-5】2/14(水)15:25~16:15
JavaScriptの現在と未来
~ 今JavaScriptに出来ること / 次世代JavaScriptの勢力図 ~
発表者: 天野仁史(Shibuya.JS)
最先端のAjaxテクノロジーの解説と、JavaScriptのチューニングポイント、JavaScript2.0で何が変わるかについてご説明いたします。 

JavaScriptの現在と未来 - 満席

300席の会場で立ち見が出るほどの大盛況のセッションでした。


[開発テクノロジー]【14-B-7】2/14(水)17:40~19:10
出張Shibuyaイベント
~ Shibuya.pm presents "Shibuya.js x Shibuya.pl mashup night" ~

    

        
  1. Shibuya.pm メイントーク

    • サンフランシスコより中継 (宮川達彦)

        

  2. Shibuya.js 特別対談
    • パネルDISカッション (id:brazil x ma.la) with 江渡浩一郎

        

  3. Shibuya.pl Lightning Talks
    • PRhagger – Pluggable feed aggregator (鶴岡直也)
    • まるごと Plagger インスパイア (Yappo) 発表資料
    • Assurer – サーバテスティング/モニタリングフレームワーク (mizzy)
    • 新春CSSかくし芸大会駈け足ダイジェストとPerl & CSS (ZIGOROゥ)
    • Nagios の Plugin を Perl で + NRPE (kazeburo)
    • Archer で快適なくらしを創造する会 (tokuhirom) 発表資料
    • VH$上映  (youpy)

        

Webカメラ BUFFALO BWC-30H05 1,980円

写真は出張Shibuyaイベントでインターネット中継を行なうためのWebカメラのドライバをインストールしている画面です。この日の朝に急遽ヨドバシアキバで購入したWebカメラです。

前日の入念なリハーサルの結果もあり、なんとか無事に時間通り終了することができました。発表者の皆様、どうもありがとうございました。

このような貴重な機会を与えてくださった翔泳社の皆様、関係者の皆様、平日にもかかわらず参加いただいた皆様、どうもありがとうございました。


以下、Plaggerで収集したデブサミの感想ページへのリンク集です。

デブサミ出張Shibuyaイベント感想リンク集 – Plagger / Shibuya.js / Shibuya.pm

続きを読む

デブサミ会場リハーサル

ということで、Shibuya界隈の人達と目黒雅叙園に会場の下見に行ってきました。

目黒雅叙園(デブサミ会場) B会場(デブサミ会場)

▼リハーサル受付
・場所:目黒雅叙園 3F スピーカー控室にて
・日時:2/13(火) 19:20~20:20 shibuya.js
・場所:B会場

すげー。前日に機材チェックできてよかったです。(><)

IE6でja.wikipedia.orgが遅い件をHTTPキャプチャしてみる

最速インターフェース研究会 :: 最近IE6でWikipedia日本語版の表示が異常に遅いのはKeepAliveのせい

2月初めぐらいからか、キャッシュが空の状態で日本語版のWikipediaを表示すると、IE6が1分間ほど固まる、という不具合があるそうだ。
で、Proxomitronでレスポンスとか調べてみてたりしたのだけれど、プロキシ経由だと問題なく表示される。

これ、私が普段仕事で使っているIE6でも再現していたので、HTTP Debugging Proxy – Fiddlerを使ってブラウザのHTTP通信をキャプチャして調べてみました。
(※2007/02/13追記:upload.wikimedia.orgで対策され、既に本現象は解消されています)

HTTP Debugging Proxy - Fiddler

どうやら画像ファイルhttp://upload.wikimedia.org/wikipedia/ja/b/bc/Wiki.pngの読み込みで詰まっているようです。

このときのブラウザ(IE6)のリクエストは

GET /wikipedia/ja/b/bc/Wiki.png HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
Host: upload.wikimedia.org
Proxy-Connection: Keep-Alive

そして、サーバからのレスポンスヘッダは以下のようになっていました。

HTTP/1.0 200 OK
Content-Type: image/png
ETag: "7176131403926372302"
Accept-Ranges: bytes
Last-Modified: Tue, 28 Jun 2005 12:26:20 GMT
Content-Length: 11248
Date: Sun, 28 Jan 2007 20:04:27 GMT
Server: lighttpd/1.4.13
X-Cache: HIT from sq15.wikimedia.org
X-Cache-Lookup: HIT from sq15.wikimedia.org:80
X-Cache: HIT from sq5.wikimedia.org
X-Cache-Lookup: HIT from sq5.wikimedia.org:80
X-Cache: HIT from sq2.wikimedia.org
X-Cache-Lookup: HIT from sq2.wikimedia.org:80
X-Cache: HIT from sq6.wikimedia.org
X-Cache-Lookup: HIT from sq6.wikimedia.org:80
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from sq14.wikimedia.org
X-Cache-Lookup: HIT from sq14.wikimedia.org:80
X-Cache: HIT from sq5.wikimedia.org
X-Cache-Lookup: HIT from sq5.wikimedia.org:80
X-Cache: HIT from sq9.wikimedia.org
X-Cache-Lookup: HIT from sq9.wikimedia.org:80
X-Cache: HIT from sq5.wikimedia.org
X-Cache-Lookup: HIT from sq5.wikimedia.org:80
X-Cache: HIT from sq15.wikimedia.org
X-Cache-Lookup: HIT from sq15.wikimedia.org:80
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from sq2.wikimedia.org
X-Cache-Lookup: HIT from sq2.wikimedia.org:80
X-Cache: HIT from sq7.wikimedia.org
X-Cache-Lookup: HIT from sq7.wikimedia.org:80
X-Cache: HIT from sq12.wikimedia.org
X-Cache-Lookup: HIT from sq12.wikimedia.org:80
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from sq5.wikimedia.org
X-Cache-Lookup: HIT from sq5.wikimedia.org:80
X-Cache: HIT from sq2.wikimedia.org
X-Cache-Lookup: HIT from sq2.wikimedia.org:80
X-Cache: HIT from sq15.wikimedia.org
X-Cache-Lookup: HIT from sq15.wikimedia.org:80
X-Cache: HIT from sq9.wikimedia.org
X-Cache-Lookup: HIT from sq9.wikimedia.org:80
X-Cache: HIT from sq7.wikimedia.org
X-Cache-Lookup: HIT from sq7.wikimedia.org:80
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from sq5.wikimedia.org
X-Cache-Lookup: HIT from sq5.wikimedia.org:80
X-Cache: HIT from sq8.wikimedia.org
X-Cache-Lookup: HIT from sq8.wikimedia.org:80
X-Cache: HIT from sq4.wikimedia.org
X-Cache-Lookup: HIT from sq4.wikimedia.org:80
X-Cache: HIT from sq2.wikimedia.org
X-Cache-Lookup: HIT from sq2.wikimedia.org:80
X-Cache: HIT from sq4.wikimedia.org
X-Cache-Lookup: HIT from sq4.wikimedia.org:80
X-Cache: HIT from sq12.wikimedia.org
X-Cache-Lookup: HIT from sq12.wikimedia.org:80
X-Cache: HIT from sq9.wikimedia.org
X-Cache-Lookup: HIT from sq9.wikimedia.org:80
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from sq12.wikimedia.org
X-Cache-Lookup: HIT from sq12.wikimedia.org:80
Via: 1.0 sq15.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq5.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq2.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq6.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq14.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq5.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq9.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq5.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq15.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq2.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq7.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq12.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq5.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq2.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq15.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq9.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq7.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq5.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq8.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq4.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq2.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq4.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq12.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq9.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 sq12.wikimedia.org:80 (squid/2.6.STABLE9)
Connection: close

うげ。Via:だけでの1行1390byte、全体で4KBを越えるレスポンスヘッダが返されている。
しかも、Connection: closeなのにサーバからの接続が維持されたまま。
このままIE6のブラウザがタイムアウトの時間まで(デフォルト:1分間)フリーズしてしまうようです。

試しに、英語版のWikipediaの画像を表示したときと比べてみると

GET /wikipedia/en/b/bc/Wiki.png HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
Host: upload.wikimedia.org
Proxy-Connection: Keep-Alive

サーバからのレスポンスヘッダはこんな感じで少なめ。

HTTP/1.0 200 OK
Content-Type: image/png
ETag: "-2317670875754826488"
Accept-Ranges: bytes
Last-Modified: Sun, 10 Dec 2006 22:24:11 GMT
Content-Length: 26959
Date: Mon, 22 Jan 2007 00:20:36 GMT
Server: lighttpd/1.4.13
X-Cache: HIT from sq1.wikimedia.org
X-Cache-Lookup: HIT from sq1.wikimedia.org:80
X-Cache: HIT from yf1005.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1005.yaseo.wikimedia.org:80
X-Cache: HIT from yf1008.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1008.yaseo.wikimedia.org:80
X-Cache: HIT from yf1005.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1005.yaseo.wikimedia.org:80
X-Cache: HIT from yf1009.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1009.yaseo.wikimedia.org:80
X-Cache: HIT from yf1005.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1005.yaseo.wikimedia.org:80
X-Cache: HIT from yf1009.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1009.yaseo.wikimedia.org:80
Age: 37059
X-Cache: HIT from yf1005.yaseo.wikimedia.org
X-Cache-Lookup: HIT from yf1005.yaseo.wikimedia.org:80
Via: 1.0 sq1.wikimedia.org:80 (squid/2.6.STABLE8), 1.0 yf1005.yaseo.wikimedia.org:80 (squid/2.6.STABLE8), 1.0 yf1008.yaseo.wikimedia.org:80 (squid/2.6.STABLE8), 1.0 yf1005.yaseo.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 yf1009.yaseo.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 yf1005.yaseo.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 yf1009.yaseo.wikimedia.org:80 (squid/2.6.STABLE9), 1.0 yf1005.yaseo.wikimedia.org:80 (squid/2.6.STABLE9)
Connection: keep-alive

しかも、英語版の画像は Connection: keep-aliveのヘッダがきちんと返されています。

日本語版でのみ再現する理由はこの辺なのかもしれません。IE6でCSSを切ると背景画像の読み込みが行なわれないので再現しなくなります。

おそらく、レスポンスヘッダの量がSquidの扱えるバッファサイズ(?)を越えてしまって正しくConnection: keep-aliveを返せずに、接続を維持したままConnection: closeを返しているのが原因なんでしょうか。このときのIE6の挙動については、金床さんが詳しくコメントで記述されています。

Squidのソースコードをダウンロードして詳しい挙動を調べようと思ったんですけど、2.5と2.6でhttpd_accel_* for accelerator modeの設定ファイルの書き方が結構変わっているんですね。これ以上の深追いは面倒なのでやめておきます。

ということで、こんなブラウザ特有の変な事象を解析するときは、ブラウザのHTTP通信をキャプチャするツールを使って、原因を特定するのが楽です。以下にお勧めツールをいくつか紹介しておきます。

ブラウザのHTTP通信キャプチャツール

HTTPヘッダのみキャプチャするタイプ

参考情報
Wikipedia:井戸端#日本語版wikipediaが重い。
207/02/13 0:31 時点で ja.wikipedia.org が重い現象は解消されている模様
カテゴリー: HTTP

デブサミで最後のPlagger和服講演

そういえば告知していなかったので。デブサミで最後のPlagger講演をします。

Developers Summit 2007 – デブサミ2007

     
  • 日時 – 2007年 2/14(水) 【13:10から~14:00まで】 【14-B-3】
  •  

  • 会場 – 目黒雅叙園(東京・目黒)夢扇(B会場)
  •  

  • 料金 – 無料
  •  

  • 定員 – 300名
PlaggerによるRSS/Atomフィードのマッシュアップ
~ Web2.0時代のインターネットPipe操作術 ~
サイボウズ・ラボ株式会社 / Shibuya Perl Mongers
竹迫良範
発表内容
Plaggerは Perlで書かれたオープンソースのRSS/Atomアグリゲータです。
洗練されたプラグイン機構を持ち、様々なモジュールを組み合わせることに
よって世の中に存在する様々なフィードを自分好みにカスタマイズできます。
宮川さん個人のハックから生まれたPlaggerが、どのようにして作られ
どのように成長してきたかを具体例を交えながら面白おかしく紹介します。 

なぜかこのブログが勝手に抱かれたい男プレゼン – Google検索でランキング一位にSEOされているのですが、
それとは関係なく20才代最後の講演ということで和服で発表します。

おそらく私がPlaggerに関してプレゼンするのはこれで最後になります。
これを機にPlagger国内エバンジェリストの役を引退する予定です。

まだ座席には余裕があるみたいですので、まだの方はぜひこの機会にデブサミの会場にいらしてください。

2/14の夕方の

デブサミ2007出張Shibuyaイベント(Posted by secondlife)
の方もよろしくお願いします。

デブサミ2007出張Shibuyaイベント詳細公開

発表者が確定しましたので、デブサミ2007出張Shibuyaイベントの詳細を公開しました。

デブサミ2007「出張Shibuyaイベント」
  ~ Shibuya.pm presents "Shibuya.js x Shibuya.pl mashup night" ~

     
  • 日時 – 2007年 2/14(水) 17:40~19:10
  •  

  • 会場 – 目黒雅叙園(東京・目黒)夢扇(B会場)
  •  

  • 料金 – 無料
  •  

  • 定員 – 300名
  •  

  • プログラム (※内容・順番・時間などは予告なく変更する場合があります)
        
          
    1. Shibuya.pm メイントーク (15 min)

      • サンフランシスコより中継 (宮川達彦)

          

    2. Shibuya.js 特別対談 (30 min)
      • パネルDISカッション (id:brazil x ma.la) with 江渡浩一郎

          

    3. Shibuya.pl Lightning Talks (5 * 7 = 35 min)
      • PRhagger – Pluggable feed aggregator (鶴岡直也)
      • まるごと Plagger インスパイア (Yappo)
      • Assurer – サーバテスティング/モニタリングフレームワーク (mizzy)
      • 新春CSSかくし芸大会駈け足ダイジェストとPerl & CSS (ZIGOROゥ)
      • Nagios の Plugin を Perl で + NRPE (kazeburo)
      • Archer で快適なくらしを創造する会 (tokuhirom)
      • VH$上映 (youpy)

          

     

有名なあの方とあの方とのパネルDISカッションなど面白いセッションが目白押しです。

他のデブサミのセッションも無料で受講できますが、出張Shibuyaイベントだけ見に来る人も多いみたいです。
参加にはデブサミ側の登録フォームでの事前登録(初回のみSEshop.comでのユーザ登録)が必要です。

残席残り僅かだそうですので、申し込みはお早めに。