Kyoto.js 11を開催しました! #kyotojs

こんにちは!Kyoto.js主催の id:amagitakayosi です。 先日開催された Kyoto.js 11 のレポートをお送りします!

kyotojs.connpass.com

☟前回のレポートはこちら☟

http://blog.javascript.kyoto/entry/2016/05/16/163339

目次

タイムテーブル

今回は通常発表5人、LT5人という構成になりました! 「増える分にはウェルカム」という事で多めに設定したんですが、発表枠が先に埋まるとは思いませんでした 😹
京都近郊のエンジニアはアウトプットに積極的なんでしょうか……?

発表者の皆様、ありがとうございました!!

発表者 タイトル
12:30 開場 -
13:00 開会 & 乾杯 -
13:05 amagitakayosi はてな教科書 他1本
13:25 bouzuya WHATWG Streamsをためした
13:45 休憩 -
13:55 pastak お絵かき体験向上作戦
14:15 mikakane 勉強会駆動開発 Serverless と Line Notify
14:35 kamiyam Node.jsでKinectを触ろうとして色々しくじった話
14:55 休憩 -
15:00 LTタイム開始! -
15:00 _hiroqn cycleのrouterを考察
15:10 mohayonao Electronとnode-midiで仮想MIDIデバイスを作る
15:20 spring_raining 今こそCSS組版
15:30 susisu ジェネレータを有効活用し隊
15:40 uiureo 永遠(仮)
15:50 わいわい -

開会まで

10/22 は京都三大祭りの一つ、時代祭の日でもありました。 僕は時代祭を見たことがなく「遠方から来る参加者の方々が発表のついでに京都観光できたら良いな〜」と楽観的に構えていたのですが、時代祭の影響で会場ビルの表玄関が閉まり、しかも道路が一部交通止めになるなんて、、、! その影響か、開会ギリギリまで人が集まらずメッチャ不安になりましたが、開始2,3分でだんだん席が埋まってきて一安心 🙏

開会

今回は「開会即乾杯」というスタイルをとりました。 Kyoto.jsは、ガチガチの勉強会というよりも、リラックスして斧を投げあうイベントになると良いな〜と思っています。 毎度いい感じに質問や会話が行われているのですが、乾杯のおかげか、いつもより少し距離の近い感じになってよかったです。

--

以下、今回の発表についてザッと紹介していきます。

通常トーク (20min)

amagitakayosi「はてな教科書 他1本」

speakerdeck.com Spectacleについて - Speaker Deck

1人目の発表は僕 id:amagitakayosi です。 今年のはてなインターンではJavaScript編の教科書をリニューアルしたのですが、そこで追加した内容や気をつけた点について話しました。 また、React製のスライド作成ツールである Spectacle について、使ってみてハマった所を紹介しています。

bouzuya「WHATWG Streamsをためした」

speakerdeck.com

2人目の発表は id:bouzuya さんです。 WHATWG Streamsの基本から特徴的な概念、落とし穴を紹介しつつ、TodoMVCで試してみた、という内容です。 「まず実装がnpmにない→つくった」というDIY精神あふれる発表でした。

pastak「お絵かき体験向上作戦」

pastak-diary.hatenadiary.com

3人目の発表は id:Pasta-K さんです。 こちらの発表は Kyoto.なんか での発表の続編ということでした。 Gyazoの画像編集機能で使われている canvas で遭遇した問題やその対処法を紹介しています。

mikakane「勉強会駆動開発 Serverless と Line Notify」

qiita.com

4人目の発表は id:mikakane さんです。 Serverless フレームワークを利用し、AWS Lambda から Line notify を送る手順を紹介しています。 発表前日にテーマが決まって一日で資料まで作ったということでした。スピード感がすごい……!

kamiyam「Node.jsでKinectを触ろうとして色々しくじった話」

www.slideshare.net

5人目の発表は kamiyam さんです。 ハロウィンの企画でKinectやポリッドスクリーンをつかってゲーム?を作る話です。 個人的には「Kinect→Processing→WebSocket→Node.js」という方法がグッと来ました。

LT (10min)

hiroqn「Cycle jsにおけるRouter考察」

LT1人目は id:hiroqn さんです。 Cycle.js でアプリケーションを作る際に Router をどう設計するか、という内容でした。 Observable の理解が前提のマッチョな展開……!

mohayonao「Electronとnode-midiで仮想MIDIデバイスを作る」

speakerdeck.com node-midiで仮想MIDIデバイスを作る - 音の鳴るブログ

LT2人目は id:mohayonao さんです。 node-midiで仮想MIDIデバイスを作り、PC上ではElectron、iPadではWebアプリとして操作するツールを開発した、という発表でした。 Electron + Reduxにおけるデータフローを示した図がわかりやすい!

spring_raining「今こそCSS組版」

speakerdeck.com

LT3人目は id:spring_raining さんです。 React Nativeの同人誌をCSS組版で作り、夏コミで頒布したという話です。 紹介した同人誌は会場で実際に頒布されていました。

pentapod.github.io

susisu「ジェネレータを有効活用し隊」

speakerdeck.com

LT4人目は id:susisu さんです。 ES2015 Generatorの基本から、利用方法を色々考えた結果、パーサコンビネータの実装に使ってみたという発表でした。 他の言語でのジェネレータの活用事例も気になりますね。

uiureo「永遠に動くWebアプリケーションが作りたい」

LT5人目は id:uiureo さんです。 現在のWebのモデルは信用できない、P2Pモデルであれば永遠に動くアプリケーションが作れるのではないか?ということで、P2Pで動作するWebサービスやゴシッププロトコルを紹介していました。

懇親会

発表終了後は1時間ほど懇親タイムを設けました。 開幕即乾杯した上、LTの途中でピザが到着して食べ始めていたので、最初からフルスロットルで会話が弾んでいたようです。 意外とお酒が無くならなくて助かった!

まとめ & 今後の課題

トークも人もたくさん集まってよかったです!!
今回の Kyoto.js は大成功なのではないか!?!

今後の課題としては

  • ちゃんと出欠確認する
  • 名札ほしい
  • 前回から間があいてしまった

という感じですかね。 KPTして次回につなげたいと思います。

その他にもご要望があれば、ぜひ Kyoto.js Slack やTwitter の #kyotojsハッシュタグ@amagitakayosi までお願いします!

発表者ならびに参加者の皆様、本当にありがとうございました!!!!!!
次回のKyoto.jsにも是非お越しください!!!!

Kyoto.js # 10を開催しました

kyotojs.doorkeeper.jp

こんにちは!Kyoto.js運営の id:amagitakayosi です。
5/8 (日) に開催した Kyoto.js #10のレポートをお送りします。

前回のレポートはこちら↓

Kyoto.js # 9を開催しました - マルシテイア

タイムテーブル

時間 発表者 タイトル
13:10 t_kyt はてなにおけるフロントエンドテスト
13:30 hoto JavaScript over HTTP/2
13:45 pastak Chrome Extensionを Firefoxにインストールする - WebExtension移植物語
13:05 nanto_vi 知られてそうで知られてない少し知られてるECMAScript2015の新機能
14:20 amagitakayosi node-web-audio-apiにコントリビュートした話
14:35 nitoyon Tampermonkey, livereloadxの話
14:50 懇親会 懇親会

今回はなんと 通常トーク 1人(!) + LT 5人 という構成でした😅
GW最終日にしたのは、GW中に遠出した京都の方々が帰ってきているだろうと見込んでの事だったのですが、トークも参加者も応募が少なくてメチャクチャ焦りました……。
当日朝の時点では トーク 1人 + LT 3人 という状態。

ふたを開けてみるとドタキャン0人、飛び入りLTも2人名乗りでて下さったおかげで、なんとか勉強会の体を保つことができました!!
皆様ありがとう御座います 🙇🙇🙇🙇🙏🙏🙏🙏

発表内容

"はてなにおけるフロントエンドテスト" / t_kyt

トップバッターにして唯一の通常発表枠は、はてなid:t_kyt です。
彼は僕と同期入社なのですが、僕と違って新規プロジェクトにガンガン投入されています。
社内でのフロントエンドテストの状況について、後日ブログで公開するとの事なので、ご期待ください!

"JavaScript over HTTP/2" / hoto

www.slideshare.net LT1人目はGaiaxの @hoto さんです。
HTTP/2を導入するのメリットをフロント開発の観点で紹介。
質問タイムでは、モジュールの依存関係をどう解決するのか、現状で不要なモジュールのロードを防ぐにはどうするのか、といった議論が行われました。

"Chrome Extensionを Firefoxにインストールする - WebExtension移植物語" / pastak

speakerdeck.com LT2人目は京都大学2回生の id:Pasta-K さん。
WebExtensionによって、ChromeでもFirefoxでも動く拡張機能を実現する話でした。
不安定なAPIに頭から突っ込んでいく姿勢は素晴らしいですね :muscle:

"知られてそうで知られてない少し知られてるECMAScript2015の新機能" / nanto_vi

知られてそうで知られてない少し知られてるECMAScript 2015 (ES6)の新機能: Days on the Moon

LT3人目は、はてなより id:nanto_vi さんです。
Ad hoc委員会に参加し、ECMAScript仕様のレビューを行った氏。
「Well-known SymbolsによるRegExpの挙動の変更」「制御構文の本体が空ならundefinedが返る」など、マニアックな仕様のオンパレードです。
会場では絶えず感嘆のため息が聞こえていました。

"node-web-audio-apiにコントリビュートした話" / amagitakayosi

speakerdeck.com LT4人目は僕、 id:amagitakayosi です。
2月末頃、Web Audio APIの実装をJavaScriptに移植するため、Chromiumの実装を読んだりした件について話しました。
Chromiumはファイルごとにライセンスが違ったりするので難しいです。
C++からJavaScriptに愚直に移植すると冗長になったりわかりにくくなったりして、両言語のクラス設計の違いを感じました。

Tampermonkey, livereloadxの話 / nitoyon

LT最後は、てっく煮ブログ でお馴染みの @nitoyon さん。
イベントでの発表は数年ぶりとのことでしたが、とてもノリのよい発表でした。
発表内容は、Tampermonkeyを使ってちょっとした作業を自動化するというもの。
懐かしい名前ですが、まだまだ現役で役立っているようです。
デモ中では、自作のlivereloadxというツールを使ってスクリプトデバッグを行っていました。

nitoyon.github.io

発表後

会場でビールやジュース、お菓子を食べながら懇親会。
発表終了後も2時間くらい話していました。
夜の勉強会だと、翌日の事や終電を考えてしまい、話し足りないという事が多いです。
今回は昼間に開催して正解でした。

感想

GW中の開催は難しいですね……!
発表者/運営ともに準備期間が長く取れるだろうと思ったのですが、休みに突入してしまうと中々話が進まなくなってしまいました。

ただ、今回は東京や神戸など、遠方から複数の方が参加していただけました。
事前の準備さえちゃんとすれば、多くの人を呼ぶ良いチャンスになるでしょう。
来年のGWに活かします 😅

ところで、こうやってまとめ記事をかくと、写真の一枚もないのは寂しいですね。
全体の雰囲気とか、発表者の方の写真があると良さそう。
次回から写真撮影しようかな。

改めて、発表者ならびに参加者の皆様、ありがとうございました!!

次回

7,8月くらいかなー