東京Node学園 13時限目を開催しました。 #tng13

さてさて、東京Node学園 13時限目を開催しました。

今回はSocket.IO v1.0がリリースされたため、それの話をメインに。
後はLTでは、social-cms-backendの話、titaniumの話、gulpの話、chest.jsの話をしてもらいました。

togetterはこちら
東京Node学園13時限目 - Togetterまとめ

Socket.IO v1.0 introduction

というわけで、自分の発表資料。engine.ioの解説からbinary supportの話、scalabilityの話、socket.io-emitterの話と細かなTipsについて広く浅くをメインに説明しました。

Binary support ってことで、カメラから画像を取得してbroadcastするアプリを作り、それのDEMOをしてみました。

URL公開しておくので、試しにみてみたい方はどうぞ。(複数タブを立ち上げれば自分の画像が送られてるのが分かるかと。)

socket.io binary demo ※ Digital Ocean の一番安い1coreプランなので繋がりにくい可能性があります。

githubはコチラ:
yosuke-furukawa/socket.io-video · GitHub

Socket.IO の変更点、内部的な話

socket.io コントリビュータである、 @nkzawa にもう少し深い話をしてもらいました。Socket.io v1.0で接続する方法とか深いところまで説明されていて、socket.io v1.0に関わる方だったら読んでおいたほうがいいです。すごくよくまとまってます。

LT 大会

social cms backend の話


social cms を簡単に作るためのexpress middlewareの話で、Single Page Applicationで動作する事をベースにsocket.ioやangularjsを使って作っているという事でした。実際にDEMOが動いてて、Twitterのクローンを簡単に作れるという触れ込みでした。

DEMOはコチラ:Twitter clone sample

Node.jsが使えるホスティング環境としても利用可能なBaaS、Appcelerator Cloud ServicesとJavaScriptでネイティブアプリを作成できるTitanium by @yagi_

Appcelerator Cloud Serviceの話とTitaniumの紹介でした。Titaniumの自虐的な話とNode.jsへのdisが印象的で、npmでtitaniumライブラリが使えるとかNode.jsが利用できるBaaSがあるよ、みたいな重要な話が僕の耳にあまり届かなかったw

gulp.jsチートシート: 使いこなしの7パターン by @cognitom

gulpの使いこなしというタイトルでLTに来てもらいました。
gulp cheat sheetはコチラですね。gulpを使う上では必ず読んでおいたほうがいいです。pipeの勘所やdestを並列にする時はどうするかといった話が載っていてgulp初学者にとっては非常に有用です。

増え続けるmetafileが生む問題とchest.js by @watilde

増え続けるmetafileとして、package.jsonやbower.json、jshintrcとかgruntfile.jsといったものがプロジェクトのルートに並ぶことでルートの見た目が悪くなる事、またsetupがnpm install の後でbower installしなきゃいけないなどのセットアップ手順が煩雑になるといった問題があり、それを解消してくれるツールとしてchest.jsを開発されたとのこと。

この話も非常に面白くて、割りとあるあるなネタでプロジェクト作者の心を鷲掴みしてた。
資料の公開お待ちしてます!!

総括

Socket.IO v1.0が出たということで割りとキャッチーなネタではあるものの、まだネイティブクライアントの対応が追いついてないクロスドメインで使った時にiOSのインジケータが回り続けるといった壁があり、いきなりプロダクションで使うには若干時期尚早感はあるかな、というのが感想です。
ただ、v1.0になり非常に完成度が高いライブラリになっているのでこれからのプロダクトでひとまず使ってみて、問題を踏んでいくのはありかと思います。*1

gulpの話とか、そういうフロントエンドツール系の話は割りと需要がありそうなので、一個くらいは発表に挟んでいきたいですね。

あと、socket.io meetupが7/3 同じくヒカリエで実施するので、是非参加をお願い致します

*1:踏まれた問題はブログとかqiitaでシェアして知見高めましょう。