Slide 1

Slide 1 text

JavaScript-Free JavaScript-Free Soft-Realtime Soft-Realtime Browsing Browsing niku niku

Slide 2

Slide 2 text

資料 資料 2 . 1

Slide 3

Slide 3 text

わたしヽ(´ ・肉・`)ノ わたしヽ(´ ・肉・`)ノ Ruby 歴10 年くらい 札幌に住んでいる Farmnote という会社におりWeb アプリで牛を管 理をするソフトを作っている サッポロビームというErlangVM あたりのイベン トを毎週楽しんでいる https://github.com/niku 3 . 1

Slide 4

Slide 4 text

夢 夢 サーバーを記述する言語で書いたテンプレートがブラ ウザでサクサク( あわよくば60FPS で) 動くといいなあ 4 . 1

Slide 5

Slide 5 text

こういうやつが動くとう こういうやつが動くとう れしい れしい 5 . 1

Slide 6

Slide 6 text

LiveErb というのを実装し LiveErb というのを実装し てみました てみました 6 . 1

Slide 7

Slide 7 text

アプリケーション1 アプリケーション1 6 . 2

Slide 8

Slide 8 text

アプリケーション - カウンター アプリケーション - カウンター 6 . 3

Slide 9

Slide 9 text

アプリケーション - o の移動 アプリケーション - o の移動 6 . 4

Slide 10

Slide 10 text

夢の実装 - ライブラリ 夢の実装 - ライブラリ 6 . 5

Slide 11

Slide 11 text

夢の実装 - ライブラリスクリプト 夢の実装 - ライブラリスクリプト 部分抜粋 部分抜粋 6 . 6

Slide 12

Slide 12 text

1/60 秒ごとにクライアントからリクエストをなげて 1/60 秒ごとにクライアントからリクエストをなげて 更新している 更新している まあまあ動くのがおどろき 6 . 7

Slide 13

Slide 13 text

改良番LiveErb2 改良番LiveErb2 7 . 1

Slide 14

Slide 14 text

クライアントスクリプト部分抜粋 クライアントスクリプト部分抜粋 7 . 2

Slide 15

Slide 15 text

サーバーのアップデート箇所抜粋 サーバーのアップデート箇所抜粋 7 . 3

Slide 16

Slide 16 text

1/60 秒ごとにサーバーからSSE でレスポンスを送りつ 1/60 秒ごとにサーバーからSSE でレスポンスを送りつ けている けている まあまあ動きます。すごいね。 7 . 4

Slide 17

Slide 17 text

改々良番LiveErb3 改々良番LiveErb3 変 所省略 参照 8 . 1

Slide 18

Slide 18 text

アプリケーション側が更新したら アプリケーション側が更新したら publish を呼ぶ publish を呼ぶ 8 . 2

Slide 19

Slide 19 text

必要があるときだけ更新するよう 必要があるときだけ更新するよう になりました になりました すごい! 8 . 3

Slide 20

Slide 20 text

まとめ まとめ ヒマをみて3 日くらいで実現できたわたしすご い…… わけじゃなくてそう思わせてくれるRuby す ごい このネタはElixir のWeb フレームワーク PhoenixFramework のLiveText からインスパイア されました 次の火曜日にasakusa.rb があれば行きたいのでも しあれば仲良くしてください 9 . 1