8月31日に リクルートテクノロジーズさん で開催された「Node学園 27限目」に行ってきました。
イベント概要
月に一度のペースで開催されている、 Node.js 日本ユーザーグループ主催による Node.js の勉強会です。
参加動機
- 24 限目参加時の記事にも書いたように、 Node.js に強く興味を持ったので積極的に参加していこうと思っていたため。
- プライベートで Headless Chrome を勉強していて、 Puppeteer はまだ触れていないが興味があった。
- ES Modules や Server Side Rendering など話題の技術をキャッチしておきたかった。
「ayojs」 by yosuke_furukawa
Ayo.js とは
- Node.js から fork されて生まれた Ayo.js (読み方は特に決まっておらず、アイ・オー、エイ・ヨーなど)。
- コードより “人” にフォーカスしたプロジェクトで、現在は Node.js そのままだが Ayojs で改善していこうという動きもある。
Ayo.js を fork した理由
- 技術面で大きな功績のあるメンバーが、 Code of Conduct 違反があったため除名の可否の投票を行ったが却下され、そしてその結果を受けてメンバーの何人かが抜けた。
- Code of Conduct とは行動規範を示したもので、みんなが居心地よく活動するためのルール。
- 違反を行った場合、Github の organization から ban や除名が行われる。
- 渦中のコミッターからの意見がブログに挙げられている。
- 問題は解決していると思っていた、人を傷つけているつもりがなかった、また無根拠な指摘もあるという内容だそう。
Node.js と Ayo.js の今後
- io.js は技術的な背景により生まれたプロジェクトだったが、 Ayo.js は政治的な背景により生まれたプロジェクト。
- Ayo.js が Node.js に統合されるかはまだ不明。
- Node.js もそのままではなく、改善していこうという動きがある。
[発表とパネルトーク形式]ES Modules 現状質問会 by teppeis, jxck
- 直前に公開されたブログ記事の解説から始まる。
- 循環参照、ユニバーサル標準、ブラウザと Node で同じやり方でモジュール定義ができるそう。
- 記事を読んでいなかったのであとで読み直す(読んだ)
- Node.js における ES Modules はまだ色々と決まっていないことが多く、今後の話については議論が分かれる模様。
- 議論の内容にはあまりついていけなかったけれど、先に書いたようにまだ決まっていないことも多いようだし、焦って使う必要はなさそう。
メモ
- import.meta.url ( URL ベースになると置き換え不可能な、
__filename
の代わりに追加されることを検討されている機能) - @std/esm(パッケージングの仕方が面白いらしい)
- webpackaging
GraphCMS + Node(apollo-client) + Elastic Beanstalkで環境構築 by tgfjt
- WordPress から Netlify へ。
- 静的に構築・運用可能なものへの置き換え。
- 動的な部分もあるが WordPress は辛い -> GraphCMS
- GUI により GraphQL を知らない状態でも操作・作成が可能
- ただし、エディタがぶっ壊れている。 Markdown のコードブロックとか。
高機能ホスティングサービス Netlify www.netlify.com
GraphQL クライアントライブラリ github.com
Express と互換性のある Node.js のフレームワーク github.com
教える人のための Node.js by chantoku
www.slideshare.net
- 教える側の人はプロだが、教わりたい人は プログラミング〜 JavaScript 中級者 まで様々。
- 教える側と教わる側の技術に差がありすぎて、教える側からは何が分からないのか分からない。
- 例えば、「 Node.js でも async/await が使えるようになりました」でも、 async/await とは何か? -> コールバックとは何か・それの何が辛いのか -> Promise とは何? と理解していくことになる。
- ES2015 など書き方が変わりすぎている( Twitter にて、 3 年以上前の資料は読まなくていい、と教えているという意見も )。
- ここ一年で JavaScript を勉強したので、どれもこれも分かりすぎる内容で自分だけじゃなかったという安心感が。
はじめてのSSR by brn227
- SSR = Server Side Rendering
- Node.js はよく落ちるので Supervisor で監視
- ブラウザの Routing と Node.js の Routing の二重管理になっているのが問題点
- 本当に必要になるまでやるべきではないかなあ(情報も散らばっていて、分かりにくい)
- フロントのコードがサーバーでも動くので、フロントと Node の両方を意識しないといけない
- SSR はまだ触れられていないので、あれこれと色んなことを理解しておかないといけないので、今の自分にはつらそう。。。
puppeteer 入門 by mkamakura
- 読み方は「ぱぴてぃあ」
- puppeteer 以外にも、 Chromy, Chrominator, Chromeless
- しっかりした設計、他のライブラリは不得意なタブなどもうまく扱っている by Chromy 開発者
- API ドキュメントいっぱいいろいろあります
- コードが await だらけになる