いってきました!
聞いたセッション
- workshop - socket.io v1.0 @TonyKovanen
- 基調講演 @rauchg
- What’s coming in Node, Express & LoopBack @ijroth
- すべてのノードトランスパイラーがひどい!ならば、ノードトランスパイラーをいかに改善できるか。 @leichtgewicht
- Node Past, Present, Future @mikeal
- ギャルでもゎかる node-webkit @upgrade_ayp
海外勢に会える機会はそもそも少ないやろーし、
国内勢はきっとマメに資料を公開してくれるやろーし・・!
ということで、主に海外スピーカーのセッションを聞いてきました。
以下、簡単にメモ。
全編通してですが、Twitterでメモってる人もかなりいたので、
以下のタグを追うとだいたいわかりますw
workshop - socket.io v1.0 @TonyKovanen
ワークショップですね。
ただ作るものが3DのFPSゲームってことで、まじか!ってなりながらのスタート。
Socket.IOを使ってログインからロビーから部屋作ってゲーム・・みたいなのが全体像。
とりあえずcloneして、困ったらファイルまるっとコピーして編集してました。
ページのマークアップとクラス名が気になって仕方なかったのは職業病ですね。
ライブコーディングのスピード自体はそれなりに早かったけど、
いかんせん最終形の完成度が高すぎて、時間が足りず最後までできずに終わりました。
時間の90%はログインしてロビーを表示する部分までで使いきっちゃって、
対戦相手が画面にうつった時点で終了でしたw
Githubにコードあるので、ぜひとも見返したいところ。
developブランチならredisとか使ってない部分までになってるそうな。
基調講演 @rauchg
Wordpressも作ってるAutomatticという会社のCTOで、Socket.IOの作者さま。
最近のSocket.IO
MicrosoftのOfficeとかZenDeskなどエンプラ分野だけでなく、
最近流行りのIOTのシーンでも使われてて、まさかの潜水艦でも動いてるらしいです。
ファイルアップロードがつらい
Socket.IOによって従来のWebより進んだUXが提供できるようになったものの、
ファイルのアップロードに関しては今もまだ辛いまま。
Httpはそもそもそんな用途に向いてないし、
とかいってFTPはポーズもレジュームもリトライもできないので使い勝手が悪い。
そこでXHR2!
- バイナリサポート
- progressとれる
- FileAPIと一緒に使えばアップロードのタイミングもとれる
これはワンチャンあるのではってことで・・。
What’s coming in Node, Express & LoopBack @ijroth
express作ってるStrongLoop社のCEOのIssac氏のお話。
node v0.12で使えるようになる機能の紹介など
GeneratorでcallbackHELLにさよならをって話とか、
HeapDump見れるよとか、
エラースタックが詳細になるとか。
What's next in Express
次のExpress5はどうなるのって話。
Yoな方のGeneratorがつくらしい?
すべてのノードトランスパイラーが(略 @leichtgewicht
Google翻訳のニオイがしますね!w
Transpilerとは、SourceをSourceにするCompilerのことだそうな。
CoffeeもSassもHandlerbarsも、いうなればTranspilerだと。
ひどいっていうタイトルやけどそんなにdisりまくる感じではなくて、
- 非同期で解析できないからコンパイルが遅いー
- キャッシュが効かないから遅いーとか
- 設定ファイルに記法やオプションがいっぱいありすぎるとか
- 依存してるモジュールが更新されたら自動で動いてほしいとか
当たり前に色んなものを色んな書き方で使ってるけど、
まあひとつになってたらありがたいよねぇーという話。
統一したインターフェースにするためには、
全Transpilerの設定をラップする何かを用意するしかないかなーと考えてるとのこと。
にしても日本語お上手です。
Node Past, Present, Future @mikeal
Nodejsでproxyサーバーを書いてたんやけど、
Nodeがアップデートしてっていろんな実装が入る度に、
そのコードが短くなってったよ!って話からスタート。
モジュールの書き方
モジュールのスタイルもパターン化されてきてて、
// Module pattern module.exports = function() {} // Callback pattern api(arg1, arg2, function(err, result) {}) // Stream pattern var readable = myModule(), writable = yourModule(); readable.pipe(writable);
ってな具合。
コールバックもつらかったけど、
とかthunkifyとかで楽になってきたよねー。
思ったよりメモ取れてなかった・・orz
ギャルでもゎかる node-webkit @upgrade_ayp
ここでオジサンたちの目の色が変わった・・・!
というかはじめてご本人さまをお見かけしたのですが、
すごいテンポですごい濃い内容を話すあのプレゼンスタイルは圧巻の一言でした。
(^q^) があんな効果的に使われてる資料はじめてみた!
node-webkitでちゃんとしたもの作るときには、ぜひ一読しておきたい系のスライドでした。
そもそもhtml/css/jsだけでなんとでもなるし、
アプリにしちゃえばプログラムわかんない人にも渡せるし、
node-webkit、良いですよねー。
LT枠
電池が残り少なかったのでメモほぼ無しですが、ざっと思い出すと。
その後のフリーLT枠も盛り沢山な内容で、お腹いっぱいです。
サンドイッチも食べ過ぎてお腹いっぱいです。
ありがとうございます弊社。
おわりに
あっという間の一日とはまさにこのことで、
いろいろとモチベーションが上がったよき日でした。
ほんまにびっくりしたけど、
まさかのIssac氏に話しかけられて冷汗めっちゃかいたけど、ええもんもろた( ´ ▽ ` ) #nodefest pic.twitter.com/gV3ipzlCMw
— りぃ (@leader22) 2014, 11月 15
あとはTwitter上では何度かお世話になってる@t_wadaさんにも直接ご挨拶できて良かったです!
てか普段TL上でお見かけする人をもっと探しだして絡みにいけばよかった・・といまさら。
ほんとにみなさんお疲れ様でした! #nodefest
私信: にしても普段の会長を見慣れてるせいか、今日の会長は輝いててちょっと見直しました。