エピソード

  • More build tools: Nix
    2024/10/29

    After talking about Bazel in one of our previous episodes, we are now looking at Nix, a build system that has been getting increasing attention lately.

    Resources:

    • OTMT Bazel episode
    • Surma's video on Nix
    • Eelco Dolstra's PhD Thesis
    • Nix & NixOS
    • A branch of Squoosh using Nix
    • Nixpkgs manual
    • Comparison of size and freshness of different package managers
    • Home Manager
    • Nix pills
    続きを読む 一部表示
    41 分
  • The new stylable select element
    2024/10/08

    We're finally getting a element we can fully control with CSS! A bunch of other stuff needed to be added to the platform to make it work, and the good news is we can use it a lot of them independently of .

    Resources:

    • Chrome's article on the new , and how you can provide feedback.
    • The CSS appearance property. Nope, I still don't know what it does.
    • The Popover API.
    • "On popover accessibility: what the browser does and doesn’t do" by Hidde de Vries and Scott O'Hara.
    • The CSS anchor positioning API.
    • The previous spatnav spec effort.
    • The hidden attribute until-found value (sorry, I said if-found in the episode).
    • The CSS element function.
    • Timing of cloning for the element.
    • Animating to height auto.
    • The new entry-exit animation feautres.
    • The proposed command and commandfor attributes which give buttons declaritive activation behavior.
    続きを読む 一部表示
    45 分
  • Chrome's new LLM AI API OMG
    2024/08/30

    Chrome is experimenting with exposing an LLM to the web platform. Jake and Surma dig into how the API works, and whether something like this could work on the open web.

    Resources:

    • The explainer
    • ChatGPT functions
    • Chrome's initial vague docs about the feature
    • Gemini terms of use
    • The EURion constellation
    • WebNN
    続きを読む 一部表示
    38 分
  • Chrome’s secretly installed extensions
    2024/08/06

    Luca found a hidden Chrome extension that is installed by default in Chrome and most Chromium derivatives. Surma and Jake dig into what this extensions does and how reasonable it is to get angry about it.

    Resources:

    • Luca’s original tweet thread
    • The extension’s source code
    • Discussion on blink-dev
    • The original PR that introduced the extension
    • Brendan Eich’s response
    • Brave PR disabling the extension
    続きを読む 一部表示
    30 分
  • Are web components worth it?
    2024/06/12

    In this episode, Jake and Surma chat about web components. Why they were invented, what they're useful for, and how they would improve.

    Resources:

    • Surma showers his eyeball.
    • The old custom elements 'v0' spec.
    • The old shadow DOM 'v0' spec.
    • The old HTML imports spec.
    • The initial version of Polymer.
    • Lit (formally lit-html).
    • HTML attributes vs DOM properties.
    • Issue looking at ways custom elements could have behavior.
    • The ElementInternals API, for making custom elements interact with forms.
    • The is attribute.
    • WebKit's position on the is attribute.
    • Programmatically assigning children to slots.
    • Issue looking at ways to slot children that aren't direct children of the shadow host.
    • Declarative shadow DOM.
    • Custom element support in React 19.
    • pinch-zoom custom element.
    続きを読む 一部表示
    43 分
  • Why Source Maps don’t always work
    2024/06/03

    In this episode, Surma shares with Jake all the things he learned reading up on source maps and DWARF.

    Resources:

    • Jake's Jericho triangle
    • source-map-explorer
    • Hacker News comment by Joseph Shorr on the origins of source maps
    • The Source Map "specification"
    • EvanW's source map visualizer
    • Wikipedia: VLQ
    • DWARF specification
    • llvm-dwarfdump
    • gimli
    • addr2line
    • bundlephobia
    • Wasmphobia
    • WebAssembly Debugging Chrome Extensions by Ingvar
    • TC39 source maps spec
    • Squoosh
    • Animal Well
    • .kkrieger: Gameplay video and Wikipedia article
    • "C64 'fast loaders'"
    • "Thank you for playing Wing Commander"
    続きを読む 一部表示
    43 分
  • Putting React In The Browser
    2024/04/22

    In this episode, Jake and Surma chat about the complexities of adding common framework patterns into the web platform, and work that has been done on that so far.

    Resources:

    • Michael Jackson's tweet.
    • Is WebAssembly magic performance pixie dust? - Surma's investigation into wasm performance.
    • defaultValue reflects the value attribute.
    • The value property is complicated.
    • HTML template instantiation.
    • DOM parts API.
    • DOM Parts Imperative API.
    • DOM Parts Declarative Template API.
    • Atomic move for elements.
    • Shizo Kanakuri's marathon record
    続きを読む 一部表示
    44 分
  • Canvas-based Web Apps
    2024/03/25

    In this episode, Surma talks about web apps that (partly) abandon the DOM and use canvas instead, to take rendering matters into their own hands. Figma is one popular app that uses this approach, while Flutter is an entire app platform that went with this technique to provide portability. Jake and Surma discuss the tradeoffs of building apps this way.

    Resources:

    • AI text-to-speech having a stroke
    • ServiceWorker Static Routes
    • Targeting the browser with Bevy
    • Flutter’s “Showcase” section with a 6MB gif
    • Flutter’s Material 3 Demo w/o Wasm
    • Flutter’s Material 3 Demo w/ Wasm
    • Ian 'Hixie' Hickson’s “Towards a modern Web stack” document
    • HarfBuff
    続きを読む 一部表示
    46 分