#jxck_sushi でserverlessの話をしてきた
#jxck_sushiに参加してきた。
2回目の#jxck_sushi
だった。
今回はServerlessを使った匿名でGitHub Issueを立てるAPIを作ったという話をしてきた。
jser/ping: ping! your issusを作ったときに必要だったのAPI Gatewayとlambdaを使ってAPIとして作った話。
Walter
TODO: スライドはここに
- FirebaseとIndexedDBの話
#jxck_sushi 🍣 pic.twitter.com/YcLaJR6dK2
— azu (@azu_re) October 18, 2016
CQRS寿司 #jxck_sushi pic.twitter.com/K9tWo8xGl6
— Yosuke FURUKAWA (@yosuke_furukawa) October 18, 2016
これからの Web について真剣に議論している #jxck_sushi pic.twitter.com/WQxTaieQng
— Jxck (@Jxck_) October 18, 2016
#jxck_sushi による🍣 pic.twitter.com/PMNoJa8gRn
— Laco (@laco0416) October 18, 2016
次世代のアーキテクチャについて真剣に議論している #jxck_sushi pic.twitter.com/GPuAQFX2u1
— 83 (@armorik83) October 18, 2016
内容は
Serverless FrameworkでのAPI作成
- jser/ping: ping! your issus
- API Gatewayとlambdaを使ってブラウザから叩けるAPIを作る話
- CORSの設定とかもServerless Frameworkから設定ファイルだけで簡潔して便利だった
- lambdaのテストについて
- handlerのスクリプトをローカルで実行できるようにするしか…
- ApexやServerlessは実際にlambdaを叩くCLIがある
-
console.log
を細かく仕込んでCloudWatchで見るとか - AWSのサービスと連携した場合が結構たいへん
Web Component v1
- Custom Element v1などがでた
- ライブラリ
- Polymer 2.0
- SkateJS
- が対応してる
- Custom Element v1はクラス継承に対応してる
- Polymer 2.0は継承路線
- SkateJSはWebComponentとJSXとincrementJSに対応してたり、タグ定義は独自関数
- 自前でpolyfillを持っている
らこ「Polymerはbower」
— 83 (@armorik83) October 18, 2016
一同「bowerか〜〜」 #jxck_sushi
- HTML Imports
- PolymerはHTML Import頑張りたい姿勢
- SkateJSはHTML Importを捨てている。モジュールの仕組み
- Firefox: Mozilla and Web Components: Update ★ Mozilla Hacks – the Web developer blog
- Loaderで似たようなことができるかもしれないのに、別途HTML Importやるのが微妙という姿勢
AMP
- 社内フレームワークとしてのAMP
- 社内フレームワークとしてのWeb Components
- よくJavaScriptとかしらない人が
<TPLogin />
とかでログイン画面を作れるとか - AMPのいいところは imageのwidthを指定しないとバリデーションで落ちる
- バリデーション通らないとSEO不利なのに皆対応するという強制力
- そういった強制力をWeb Componentsで出せる?
- JSXのpropTypesみたいな?
- 今のところ仕組みはなさそう
「俺が書いたHTMLのほうがAMPより早い」 #jxck_sushi
— azu (@azu_re) October 18, 2016
Web Components 銀の弾丸
- CSSにとってはやっぱり銀の(ry
- CSSのスコープ
- けどCSSはレイアウトをするために外から差し込める口が必要
- テーマ機能とか
- CSSむずかしい
- v1ではopenとclose modeとなった
- どちらもCSS Custom PropertyをI/F的に使えるのは同じ
- 僕がネイティブな CSS 変数にわくわくする理由
- closeは外からさせない
- openは外からさせる
- コンポーネントをattachShadowする時に確定する仕組みになった
それCSSでできるよ
- 可変長のリストの話
「Webの技術の中で一番難しいのがCSS」 #jxck_sushi
— 83 (@armorik83) October 18, 2016
セマンティックス
-
<img src="jxck.png">
を見てどう思うかalt
title
-
alt
を付けるのはスクリーンリーダのためだけではないという話
「セマンティックスはPull型であるべきだ」 #jxck_sushi
— azu (@azu_re) October 18, 2016
-
title
属性の使い道は現在のUAだとツールチップぐらい - セマンティックスが先にあって、それを消費する形が正しい姿
- 今title属性を消費するクライアントがないからという理由で、titleを省略していくという考えは変なのではという話
HTMLとして正しいじゃなくて、ウェブとして正しいかという話になってしまう。
— azu (@azu_re) October 18, 2016
なのでやや抽象的で、どこから見た視点なのかという話になる
#jxck_sushi
- HTMLの仕様ではMUSTが正しいとは言えるけど、それ以外はどう見たら正しいのかという指標が難しい
- 正しさを正しいと評価するツールが欲しいのは分かる
仕様上のMUSTだと結構範囲は狭い、ユースケースまで行くとある程度の正しい形は書かれてる #jxck_sushi
— azu (@azu_re) October 18, 2016
- HTTP
- getでdeleteするな話
- Google Botsがクロールして全部getして消える話
- Google Botsのために”getでdelete”を避けるじゃない
Node Interactive Europe
- Node Interactive Europe 2016 に参加しました。 - from scratch
- Node.js 今互換性を気にしすぎで少し停滞してる
- またio.js?
- Node.jsの競合がでるのが正しい競争の形
- Web標準も色々やっていきたい in Node.js
prh
- prhのWEB+DB PRESS校正ルール最新版を作成した話 - Qiita
- WEB+DBの
prh.yml
最新版情報 - 別でprh.ymlをまとめたリポジトリ
- azu/prh.yml: A collection of prh.yml
preflight
- WHATWG module loaderでCORS強制する?
- TODO: この辺に議論されてるURLが入る
「タイミングのpreflightが届いてなかった」 #jxck_sushi
— azu (@azu_re) October 18, 2016
Angular1と2
- Angular2は半年に1度メジャーを上げる予定?
- Angular1と2で落差がある
- 信頼を取り戻すのに Angular 4ぐらいまでかかりそう
- 1を管理画面などの業務系に使っていた人たちが多い
- Truly覚悟が必要
Angular 2は別のネームスペースの1.0にしなかったから今後一生「Angular 2」って呼ばれそう #jxck_sushi
— 83 (@armorik83) October 18, 2016
おわり
ありがとうございました! #jxck_sushi pic.twitter.com/qf3Durm9wa
— Jxck (@Jxck_) October 18, 2016
お知らせ欄
JavaScript Primerの書籍版がAmazonで購入できます。
JavaScriptに関する最新情報は週一でJSer.infoを更新しています。
GitHub Sponsorsでの支援を募集しています。