ep49 Monthly Web 201902
- published_at
- 2019-03-05
- guest
- @sisidovski
- toc
-
headings
Theme
第 49 回のテーマは 2019 年 02 月の Monthly Web です。
Show Note
Chrome 動向
- Stable: 73.0
-
Updates
- Prototyping Stack Packs for Lighthouse
- RTCQuicTransport Coming to an Origin Trial Near You (Chrome 73)
- Lightning-fast templates & Web Components: lit-html & LitElement
- The model-viewer web component
-
Chromium Blog: Introducing a Trusted Web Activity for Android
- https://blog.chromium.org/2019/02/introducing-trusted-web-activity-for.html
- https://developers.google.com/web/updates/2019/02/using-twa
- PWA のサイトを Android APP の中で表示できる
- 表示は UI 無しフルスクリーン Chrome で Chrome Custom Tab や WebView より多機能
- Digital Asset Links で連携したページのみ
- Lighthouse で 80 点以上の必要あり?
-
Rendering on the Web
- https://developers.google.com/web/updates/2019/02/rendering-on-the-web
- レンダリングの仕組みと各チェックポイントでの測定の仕方の解説
- Audio/Video Updates in Chrome 73
- Better match results with String.prototype.matchAll()
-
Making wheel scrolling fast by default
- https://developers.google.com/web/updates/2019/02/scrolling-intervention
- デフォルトで passive にしていく
- blog
-
Deprecations and removals in Chrome 73
- https://developers.google.com/web/updates/2019/02/chrome-73-deps-rems
- Remove EXPLAIN and REINDEX support in WebSQL
- Remove isomorphic decoding of URL fragment identifier
- Deprecate 'drive-by downloads' in sandboxed iframes
-
Trust is Good, Observation is Better-Intersection Observer v2
- https://developers.google.com/web/updates/2019/02/intersectionobserver-v2
- Trusted Types help prevent Cross-Site Scripting
- .isVisible が入り、 transform や opacity も含め false negative で取れる
- https://developers.google.com/web/updates/2019/02/trusted-types
-
Get Ready for Priority Hints
- https://developers.google.com/web/updates/2019/02/priority-hints
- M73 から priority hints の origin trial が始まった
- そもそも h2 priority のきちんとした実装は難しい
- CDN での実装具合のテスト結果も出ている
- Replacing a hot path in your app's JavaScript with WebAssembly
-
Constructable Stylesheets: seamless reusable styles
- https://developers.google.com/web/updates/2019/02/constructable-stylesheets
- CSS を style 要素を経由せずに作って適用する API
- Shadow Parts の中での適用などがしやすくなった
-
Exploring a back/forward cache for Chrome
- https://developers.google.com/web/updates/2019/02/back-forward-cache
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/OVROmzNUng0/1gTmi-I3EQAJ
- 遷移前の状態を JS ヒープまで含めてキャッシュし、戻るで復元する
- Firefox / Safari は既に違う実装でこれを行なっている
- Chrome は multi-process のアーキテクチャが違うので Safari の実装は使ってない
-
Web Dev Ecosystem team - February wrap up
- https://developers.google.com/web/updates/2019/02/feb-wrap-up
- Chrome チームによる Monthly Web が始まった
-
Intents
- Ship: WebAssembly Threads
- Ship: PointerEvent.getPredictedEvents API
-
Ship: Signed Exchange Reporting for distributors
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/bHo6cy9qKuw/6xqZt_1LAAAJ
- SXG で証明書エラーなどのエラーを NEL API で取れる
- 主に distributor (つまり AMP Cache など)がレポーティングエンドポイントになる
-
Implement: Signed Exchange Reporting for distributors
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/ZcJNEfRFbj0/kl42H12-GAAJ
- SXG を配信する CDN などが、その SXG が表示できなかった場合のエラーをとれる
- 証明書が取れない、署名が古いなどの状況が把握できる
- NEL を拡張しその内容を report-to に送れる
- Ship: Private class fields
- Ship: Web Authentication getTransports
- Ship: Intl.Locale
- Implement and Ship: PaymentRequest.hasEnrolledInstrument()
- Implement and Ship: Remove [NoInterfaceObject] from Geolocation API interfaces
- Implement and Ship: Remove [NoInterfaceObject] from DeviceOrientation Event interfaces
-
Implement and Ship: CSP violation reports observable by ReportingObserver
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/dBc_epXL-r4/XhhajwQVBQAJ
- reporting api に送ると ReportingObserver に送られないのを修正
- Implement and Ship: User Activation Delegation through postMessages
-
Implement and Ship: Simulcast with PeerConnection AddTranceiver API in WebRTC
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/N31xFKvgbck/h5G0a9RqAQAJ
- SDP をいじらず AddTranceiver することで Simulcast できるように
- Implement and Ship: SctpTransport in WebRTC
- Implement: Async Clipboard read/write with image support
-
Implement: Unified V8 & Blink Garbage Collection (aka Unified Heap)
- https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/oilpan%7Csort:date/blink-dev/tg2rXkjHw9g/e1TuqxfoFgAJ
- V8 と Blink の GC 統合 Oilpan が Finch で入り始めた
- M74 で Wrapper つきで入った
- M75 からちょっとづつ抜いていく
- Implement: File Handling
- Implement: Throw on invalid "basic-card" data
-
Implement: Import maps, basic support
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/qYeQFqgFOyA/rXJapjMaEAAJ
- import する module と url のマッピングを定義する仕様
<script type="importmap">
に JSON で書く- 複数記述し import 時の fallback を実現できる
- ブラウザ実装と polyfill の fallback も実現できる
- Implement: Notification Triggers
- Implement: Payment Request - Merchant Validation
- Implement: Improved Js Java interaction for Android WebView
- Implement and Experiment: Skip Ad in Picture-in-Picture window
- Implement and Experiment: Unoptimized images policies
- Extend Origin Trial: EventTiming
- Extend experimentation Wasm Threads/Atomics
- Change:
- Unship:
- Remove: Insecure usage of DeviceOrientationEvent and DeviceMotionEvent
- Remove : Nonsecure usage of MediaDevices, getUserMedia(), getDisplayMedia(), enumerateDevices() and related types
- Deprecate and Remove: Unimplemented -webkit-appearance keywords
- Eeprecate Remove: Sending user-agent to HTTP proxies when establishing tunnels.
- PSA: XHR now fallbacks to UTF-8 when invalid encoding is specified
-
PSA: Intent-to-* templates transitioning into Chromestatus.
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/4kefOvdfsF4/OsQcKEn6AwAJ
- https://github.com/GoogleChrome/chromium-dashboard/issues
- Intents テンプレートのツールが改良され、今までのようなフォーマットのブレが長期には解消される予定
- バグは Github に
- Team Weekly Snippet
- v8
-
Other
- Official Google Webmaster Central Blog: Consolidating your website traffic on canonical URLs
- Google Developers Blog: Hello, .dev!
- Android Now FIDO2 Certified, Accelerating Global Migration Beyond Passwords - FIDO Alliance
- What's new in AMP, Q1 2019: Improvements to consent, videos, forms and lists
Firefox 動向
- Stable: 65
-
Updates
- These Weeks in Firefox: Issue 53
- These Weeks in Firefox: Issue 52
- These Weeks in Firefox: Issue 51
-
Intents
- Ship: Devirtualizing IPC method calls
- Ship: sharing compartments across globals on the web and adjusting document.domain behavior
- Ship: aligning with the spec on document.open behavior and removing wyciwyg
- Ship: BigInt
-
Ship: Hashbang syntax in JS (a "#!" line at the very start of a script is a single-line comment)
- https://groups.google.com/forum/#!msg/mozilla.dev.platform/CMfwpMe5I1M/bZ-61vb6BwAJ
- Shebang ともいうアレ
- 1 月に v8 も intents が出ている
- Implement and Ship: CSS 'prefers-color-scheme' media feature
- Implement and Ship: InputEvent.data and InputEvent.dataTransfer
-
Implement and Ship: Gamepad Extensions
multi touch
andlight indicator
- Require Secure Context for Web Notifications
- Implement: -webkit-line-clamp
-
Important: Update to latest central before running
|mach try|
- Unship: Fake Plugins
- Deprecate: insecure getUserMedia & enumerateDevices requests
- Extension opt-in for Private Browsing: Fx 67
- Site Compat
-
Other
-
Refactoring MDN macros with async, await, and Object.freeze() - Mozilla Hacks - the Web developer blog
- https://hacks.mozilla.org/2019/02/refactoring-mdn-macros-with-async-await-and-object-freeze/
- David Flanagan 先生の記事
- kumascript ??
-
Why Does Mozilla Maintain Our Own Root Certificate Store?
- https://blog.mozilla.org/security/2019/02/14/why-does-mozilla-maintain-our-own-root-certificate-store/
- Mozilla が自分で証明書ストアを管理する理由
- OS のストアは OS ベンダが自分の証明書をかってに追加したりできる
- 中立であるために自分でやっている
-
Implications of Rewriting a Browser Component in Rust
- https://hacks.mozilla.org/2019/02/rewriting-a-browser-component-in-rust/
- Rust で Style Component を書き直す話
- パフォーマンスの為に始めたがセキュリティ向上の副産物が
- これまで 69 個の脆弱性があったが、最初から Rust で書いてたら 51 個は発生しなかった
-
Refactoring MDN macros with async, await, and Object.freeze() - Mozilla Hacks - the Web developer blog
Safari 動向
- Stable: 12.0.3
-
Updates
-
Safari 12.1 Release Notes
- https://developer.apple.com/documentation/safari_release_notes/safari_12_1_release_notes
- Safari 12.1 is included with iOS 12.2 and macOS 10.14.4.
- It's also available for macOS 10.13.6 and 10.12.6.
-
General
- Updated the push notification prompt for Safari on macOS to require a user gesture.
-
Password AutoFill
- Updated Password AutoFill to sign in automatically to websites after filling in the credentials.
-
Security and Privacy
- Removed support for the expired Do Not Track standard to prevent potential use as a fingerprinting variable.
- Updated the link behavior for
"target=_blank"
to include rel="noopener" implicitly.
-
Intelligent Tracking Prevention
- Removed support for partitioned cookies for domains with cross-site tracking capabilities. The Storage Access API now provides third-party access to cookies.
- Improved Intelligent Tracking Prevention to limit long-term tracking based on client-side first-party cookies and to verify partitioned cache entries.
-
Web API
- Added a supported-color-schemes meta tag to indicate a website supports light and dark color schemes.
- Added support for the Intersection Observer API, which detects the intersection of visible elements relative to other elements. Elements include the viewport of the top-level document.
- Added support for the Web Share API to invoke the native share dialog provided by the system.
- Added support for
<input type="color">
. - Added support for the
<datalist>
element.
-
Payment Request API
- Added support for granular errors.
- Added support for the default addresses and contacts configured in Wallet system preferences on macOS, or Wallet & Apple Pay settings on iOS.
- Added support for special fields for Japan including phoneticName, subLocality, and subAdministrativeArea.
-
CSS and Text
- Added support for the CSS media queries prefers-color-scheme: light and prefers-color-scheme: dark.
- Added support for CSS rules to customize text decorations like underlines and dashed underlines.
- Added support for new rgb() color functions from the CSS Color 4 specification.
-
Media
- Added support for WebRTC Unified Plan, H.264 simulcast, and VP8 to improve support for multi-party video conferencing.
- Enabled cross-browser Encrypted Media Extensions (EME) by adding APIs without the webkit prefix.
- Intelligent Tracking Prevention 2.1
-
Safari 12.1 Release Notes
-
Safari Technology Preview NN
-
Release Notes for Safari Technology Preview 75
- https://webkit.org/blog/8594/release-notes-for-safari-technology-preview-75/
- Enabled Screen Capture (r240635)
- Added the ability to enable and disable Intelligent Tracking Prevention Debug Mode in the Develop menu (r240129)
- Implemented flow-relative inset properties (r240334)
- Implemented flow-relative margin, padding and border shorthands (r240251)
- Removed support for the expired Do Not Track standard to prevent potential use as a fingerprinting variable. (後述)
-
Release Notes for Safari Technology Preview 76
- https://webkit.org/blog/8607/release-notes-for-safari-technology-preview-76/
- Fixed overflow element scrollbar for dark mode content
- Simplified and streamlined code that creates an appropriate document based on MIME type
- Added basic scrollability for async overflow scrolling
- Aligned with Fetch on data: URLs
- Added a "Reset All to Defaults" option in the Experimental Features menu of the Develop menu
-
Release Notes for Safari Technology Preview 75
-
Other
-
DNT の削除
- TP には expired と書かれてる
- おそらく先月(2019/1)に DNT の WG がクローズしたことを言ってそう
- Draft は WG-Note として公開されている
- 形骸化しており Fingerprint にしか使われていない
- GDPR や ITP など、別の方法の効果が出たので、消すことにしたのではないだろうか
- IntersectionObserver in WebKit
-
DNT の削除
Edge 動向
- Stable:
- Status Updates
- EdgeHTML
- Build Changelog
-
Chakra
- Release ChakraCore v1.11.6 · Microsoft/ChakraCore
-
Other
-
The perils of using Internet Explorer as your default browser - Microsoft Tech Community
-
https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer-as-your-default-browser/ba-p/331732
- IE はかつて DOCTYPE の有無で quirks/standard mode をスイッチした
- ただし今ほど単純な DOCTYPE ではなく正しく DTD を入れる必要があった
- ドキュメントをちゃんと読み込まない多くの人には難しかった
- その後 IE が多くの標準をサポートしていった
- 古い standard mode 実装に依存して、互換が壊れる恐れがあった
- Internet では IE8 Standard, Intra では IE7 Standard と使い分けた
- Intra では古い標準で作らないといけなくなってしまい、これを断ち切る必要があった
- 2014 IE11 でエンタープライズモードを入れる時、これを断ち切った
- レガシーなサイトを見つける discovery 機能をリリースし、それらだけスイッチした
- IE がこれをしないと、開発者は前に進めないから、これをやった
- IE は Compatibility Solution で、これ以上新しい標準をサポートしない
- 開発者も IE でのテストなんてしていない
- もし過去のやりかたを続けていたら、新しく作ったものが動かない世界が続いてしまう
- 我々がやりたいのは、漸進的な Web をサポートすることだ
- という記事を engadget 英語版が紹介した
- これをさらに日本語にしたらこうなるらしい(原文の引用すらない)
- https://japanese.engadget.com/2019/02/08/internet-explorer-ie/
-
https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer-as-your-default-browser/ba-p/331732
- マイクロソフトも使用やめるよう声明 国会で Internet Explorer 論争
-
MicrosoftEdge/wptest
- https://github.com/MicrosoftEdge/wptest
- https://wptest.center/#/new
- より簡単に WPTest を書くための仕組み
-
The perils of using Internet Explorer as your default browser - Microsoft Tech Community
WHATWG/W3C 動向
-
Recommendation
- User Timing Level 2 is a W3C Recommendation
-
Proposed Recommendation
- Web Authentication
- Pointer Events Level 2
-
Candidate Recommendation
- CSS Values and Units Module Level 3
- CSS Scroll Snap Module Level 1
- Update CR of CSS Contain L1
- Updated CR of CSS Scroll Snap
- Updated CR of CSS Values and Units Level 3
- Call for Exclusions: CSS Values and Units Module Level 3
- Call for Exclusions: CSS Scroll Snap Module Level 1
- Working Draft
-
First Public Working Draft
- First Public Working Draft: WebXR Device API
- CSS Shadow Parts Level 1
-
Chartering
- Secure Web Payments Interest Group
- Work in Progress on Media Working Group Charter (Advance Notice)
- CSS-in-JS Community Group Proposed
- SVG Community Group created
- Proposed W3C Charter: Web Application Security Working Group (until 2019-03-15)
- Conversational Interfaces Community Group Proposed & Created
-
Other
- Salesforce が W3C に参加
- Engaging in Web Standards-The "Compatible with Most Web Developers" Approach
-
New W3C Membership level aimed at organizations with medium range revenues
- https://www.w3.org/blog/news/archives/7562
- 企業規模に応じた会員費用の安いプランを用意する動き
- $50M(5000 万ドル,50 億円) から $500M(5 億ドル,500 億円) は 2.5 万ドル,250 万円
-
Jun Murai enters the French National Order of the Legion of Honour
- https://www.w3.org/blog/news/archives/7570
- the Knight of the Legion of Honour Medal from the French government.
- 村井純先生がフランスのレジオン・ドヌール勲章シュヴァリエを受賞
-
Transition of QUIC specifications back to ORTC (and probably, WICG) CGs
- https://lists.w3.org/Archives/Public/public-ortc/2019Feb/0001.html
- WebRTC-QUIC の策定は WebRTC WG でやらず ORTC でやることに
-
W3C updates its Process Document
- https://www.w3.org/blog/news/archives/7568
- W3C の Process が更新された
- W3C AB のメンバーが fixed 9 人から、 range 9~11 人に変更
- 一人のメンバが WG 内の単一 Organization にしか参加できなかったのが、複数可能に
- WG メンバ外からの Contribution についての新しいライセンスを追加
- 不明瞭な部分を明瞭に
TC39 動向
-
Announcing a New Management Structure for Ecma TC39
- https://hacks.mozilla.org/2019/02/announcing-a-new-management-structure-for-ecma-tc39/
- TC39 は 40-60 人が年 6 回(奇数月)に集まるまでに成長した
- Single-Chair + Vice Chair 構成から Flat 3 Chair にし、責任を分散する。
- この構成を今年から試していく。(もしかしたら meeting を増やすのかも)
-
before
- Chair: Rex Jaeschke (Bocoup)
- Vice Chair: Leo Balter (Bocoup), Dan Ehrenberg (Igalia)
-
after
- Chair: Aki Braun (PayPal)
- Chair: Brian Terlson (Microsoft)
- Chair: Yulia Startsev (Mozilla)
- Facilitate: Myles Borins (Google)
- Facilitate: Till Schneidereit (Mozilla)
-
Editorial: master is now ES2020 · tc39/ecma262@7a9a9b6
- https://github.com/tc39/ecma262/commit/7a9a9b6b25c115fcda95e943e8875432636f2cfd
- ES2019 の作業がまとまったので master で ES2020 が始まった
- Meeting
-
Proposals Diff
- https://github.com/tc39/proposals/compare/master@{2019-02-01}...master@{2019-03-01}
-
0->1
-
Freezing prototypes
- 後述
-
new.initialize
- 後述
-
Iterator helpers
- 後述
-
Intl.DisplayNames
- 後述
-
Freezing prototypes
-
1->2
- Promise.allSettled
- Richer keys
- 2->3
-
3->4
- Object.fromEntries
- Well-formed JSON.stringify
- String.prototype.{trimStart,trimEnd}
- Array.prototype.{flat,flatMap}
-
New Proposals
-
Freezing prototypes
- https://github.com/tc39/proposal-freeze-prototype
- オブジェクトの Prototype を freeze するにはオブジェクト自体も freeze する必要がある
- しかし、それをすると拡張不可(not extensible)になる
- Object.prototype は Immutable Prototype Exotic Object でありそれができる
- これを自分でも生成できるようにしたい
- でもまだ API はどうするか考え中
-
new.initialize
- https://github.com/littledan/proposal-new-initialize
class A extends B{}
をnew
する前にA.__proto__
を変えることができるnew A
で必ず B の constructor を呼ぶにはfreeze()
しないといけない- でも
freeze()
したくなければ A の constructor でReflect.construct(C, [], new.target);
する - これの戻り値に独自のプロパティを定義することができ、 built in class はこうなってる
- でも親の private/public field を継承する余地が無い
new.initialize()
で親の field も継承する- 応用すれば private field の proxy もできる
-
Iterator helpers
- https://github.com/tc39/proposal-iterator-helpers
- generator で作った iterator に対して take/map/collect したい
-
Intl.DisplayNames
- https://github.com/tc39/proposal-intl-displaynames
- 言語や地名などの翻訳を提供する API
- Firefox が既に独自実装を持っている
- https://firefox-source-docs.mozilla.org/intl/dataintl.html#mozintl-getlanguagedisplaynames-locales-langcodes
-
Freezing prototypes
IETF 動向
-
RFC
-
RFC 8492 - Secure Password Ciphersuites for Transport Layer Security (TLS)
- https://tools.ietf.org/html/rfc8492
- Password を使ったクライアント認証を元にした TLS
- dragonfly という PAKE(Password Authenticated Key Exchange) を使う
-
RFC 8492 - Secure Password Ciphersuites for Transport Layer Security (TLS)
- IETF Last Call
- WG Last Call
- Call for Adoption
- I-D Action
-
Draft
- Algorithm Identifiers for the HMAC-based Extract-and-Expand Key Derivation Function (HKDF)
- HTTP Transport for the Open Trust Protocol (OTrP)
- Composite Public Keys and Signatures
- Online Certificate Status Protocol - Version 2 (OCSPv2)
- Multi-languages string: Polystring
- CBOR Object Signing and Encryption (COSE): Hash Algorithms
- CBOR Object Signing and Encryption (COSE) - Structures and Process
- CBOR Algorithms for Object Signing and Encryption (COSE)
- Concise Binary Object Representation (CBOR) Sequences
-
Using GitHub at the IETF
- https://tools.ietf.org/html/draft-thomson-git-using-github-00
- こんな風に使えるよ、とか事例(COSE, QUIC)とかの話
-
GitHub Configuration for IETF Working Groups
- https://tools.ietf.org/html/draft-ietf-git-github-wg-configuration-00
- 管理者向けにどう運用すればいいかとか、バックアップ取れよという話
- IETF 以外にも AB などの用途でこういうことしたい人も参考にできそうかも。
- 5G Session Continuity Support in MPTCP
- Local Naming Protocol -- LNP (v.1.0)
- Fake Server Name Indication
- The Proxy-Status HTTP Header Field
- Associating a DoH Server with a Resolver
- BGP Security Tracking
- TLS Resumption across Server Name Indications for TLS 1.3
- Extended Tokens and Stateless Clients in the Constrained Application Protocol (CoAP)
- Minimal TCP Convergence-Layer Protocol
- TLS Resumption across Server Name Indications for TLS 1.3
- Measures against cache poisoning attacks using IP fragmentation in DNS
-
The MASQUE Protocol
- https://tools.ietf.org/html/draft-schinazi-masque-00
- HTTP/3 のコネクション確立後、それを VPN に使う
- TLS 1.3 Extension for Certificate-based Authentication with an External Pre-Shared Key
- JSContact: A JSON representation of addressbook data
- Security is a function, not a layer
-
The Deprecation HTTP Header
- https://tools.ietf.org/html/draft-dalal-deprecation-header-00
- https://zapier.com/engineering/api-geriatrics/
- API はいずれ古くなり deprecation されるが知らせる方法はまちまち
- version と date によって API の deprecation を知らせるヘッダを HTTP に
- X-API-Deprecation として独自にやっていたことを標準化したい
- sunset header と関連
- Special Purpose Label terminology
- Other
セキュリティ動向
-
韓国で SNI Blocking
- https://japanese.joins.com/article/139/250139.html
- SNI でのブロッキングが韓国で開始
- 艦これなども影響
- Encrypted SNI ならいけるか
- [TLS] SK filtering on SNI, blocking ESNI
-
Fake Server Name Indication
- https://tools.ietf.org/html/draft-belyavskiy-fakesni-01
- ESNI ブロックされないように SNI を偽でつけておく
-
Master of Web Puppets: Abusing Web Browsers for Persistent and Stealthy Computation
- https://www.ndss-symposium.org/wp-content/uploads/2019/02/ndss2019_01B-2_Papadopoulos_paper.pdf
- Service Worker を用いて裏で起動させっぱなしで攻撃を継続するという手法の論文
- ただし SW の仕様をよくわかってない、かつ間違いがある論文のように見える
- おそらく Chrome チームが調査しているのでは無いか?
周辺動向
-
1991: A SERVER-SIDE WEB FRAMEWORK WRITTEN IN FORTH
- http://www.1-9-9-1.com/?fbclid=IwAR3hGJKPTF-JPo6Y2ZZBEYAhaQ6Dy1SGGTzVQmVPG6q3dX-RzxA48FaOuWQ
- Forth という言語で書かれたフレームワーク
-
DeskGap
- https://deskgap.com/
- Web 技術でデスクトップアプリを作るフレームワーク
- Node.js をバンドルし、 System の WebView に表示
- Creating standards for CDNs
-
AddyOsmani.com - JavaScript Loading Priorities in Chrome
- https://addyosmani.com/blog/script-priorities/
- https://medium.com/dev-channel/javascript-loading-priorities-in-chrome-57c54cfa6672
- Priority Hints 以前の preload や async/defer の priority の話
イベント
-
3 月
- 23-29: IETF 104 Prague
-
4 月
-
9-10: BlinkOn 10 Canada
- https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/5K4WbTlD9rI
- 3min LT 大会が復活したらしい
- 17-18: AMP Conf 2019: Tokyo
-
9-10: BlinkOn 10 Canada
-
5 月
- 7-9: Google I/O
-
6 月
- 1-2: JSConf EU
- 7 月
- 8 月
-
9 月
- 16-20: W3C TPAC 2019 (Fukuoka)