A deep-dive podcast conversation with Marcin Kulik, creator of asciinema, covering 14 years of development history. The discussion traces the project's evolution from a Python wrapper around Unix's `script` command to a multi-language ecosystem spanning Python, ClojureScript, Go, Rust, and Elixir. Key technical topics include building a proper VT100-compatible terminal emulator (replacing naive regex parsing), the challenges of DOM rendering for terminal playback, why ClojureScript's immutable data structures caused GC pressure at high frame rates, the move to Rust compiled to WebAssembly for the player's core, using Rustler to embed the same Rust terminal emulator library (AVT) in an Elixir/Phoenix backend, and the recent rewrite of the CLI recorder from Python to Rust to support live terminal streaming with reconnection resilience.

1h 26m watch time
285 Impressions