When it’s ready.

出来るまで出来ない

WebSocketBOFに参加した

8月30日にWebSocketBOFに参加した。BOFの言いだしっぺは@MiCHiLUさんで、氏の作ったパケットモニタとかに感動したのでどんなふうになっているのか?他にもどんな人が使っているのか気になっての参加。 (参加者リスト: http://bit.ly/dnkEVl

参加者は全部で15名弱で半数弱がGの中の人だった。ひとつの会社でサーバからブラウザまで作ってる稀有なところで色々と苦労されていそうだけど今後に期待できる雰囲気をかもし出していた。いつものごとく詳細は一切分からないので想像するしか無いが・・

RubyKaigiの為にイギリスから来られた方がBOFにも参加してくれていてhttp://pusherapp.com/を作った人だった。HTML5の前のGearsのように、牛歩なWebSocketを横目に若干独自拡張しながら即使えるサービスを作られていてスケールアウトの方法等面白かった。

他にも、C(++?)でhttpd実装してOpenCVでキャプったカメラ動画をWebSocketで配信するのを作っている人もいて、あまりの滑らかさとWebSocketの柔軟性に新たな可能性を感じた。VGAムービがブラウザのみで30fps弱動いているのはちょっと感動した。WorkerつかってWebSocketで受信したあと画像を再構築して、Draw()してるらしい。アイデアを実装に移せる人は素晴らしい。

BOFで一番の盛り上がりを見せたのは、chrome上でのWebSocketモニタリングする方法。もう少しでChromeのDevToolでも見れるようになるらしいが chrome://net-internals/ だともっと見れそうですよというchromeチームから教えてもらったとき

あとは、みんな共通で困ってた(影響を受けてた)のは、WebSocketの仕様が全然安定してないところ特に最近の変更は通信が全くできなくなるくらいのインパクトをもった変更があったのでそれが今後も固定されないとめんどくさいよねぇっていうのは一致した意見だった。
最後の方で、サーバー実装してる方がほワイドボードに最新のフレームの仕様をわかりやすく説明してくた。

以前は、0x00から始まり0xffで終わるように指定できるテキスト用のフレームが有ったのだけどそれが廃止され、ヘッダーとそれに続いてフレームの個数 + フレームの長さを示す[長さ指定パケット]を付けてデータを流しこむように変更になった。(さらに巨大なフレームにも対応出来るようにヘッダに[長さ指定パケット」のサイズを表すフラグを付ける必要がある)キャリア組や、パフォーマンス大好きな人達にはとっても有意義な変更かもしれないけど、サンデープログラマな人達にとっては、フレームのテキストタイプがなくなったのは残念に思う。使いたい人は使えるように残してくれればいいのにと思う・・

個人的に参加して思ったことは、WebSocketが一般化すると劇的に変化するサービス群と影響を受けないサービス群が生まれそうだなぁと、ほとんどのサービスが前者なんだけど今までプロトコルが増えたり減ったり変更があっても、WebSocket程劇的な変化じゃなかったのでこれから生まれてくるサービスは、このイノベーションを同活用してくるのか楽しみ。ws長者が生まれる予感・・・

そんなこんなで、少人数で殆どの人がそれぞれいろんな思いを語り和気あいあいと楽しい会でした。BOFするのに全然段取りをできてなかったことをお詫びします。今後とも精進しますのでよろしくお願いします。