LangGraph for complex workflows
An introduction to using LangGraph for building complex, multi-LLM workflow architectures and automations, with a focus on local execution.
Surma writes in-depth articles on web technologies, systems programming, and developer tooling. His work explores JavaScript, Rust, WebAssembly, Nix, and workflow automation with a strong focus on understanding how things work under the hood.
37 articles from this blog
An introduction to using LangGraph for building complex, multi-LLM workflow architectures and automations, with a focus on local execution.
A technical guide on compiling Rust to WebAssembly without using the standard wasm-bindgen tool, covering low-level details and workflows.
A developer explores transpiling JavaScript to C++ to compile to WebAssembly, sharing lessons from a proof-of-concept for running JS in Shopify Functions.
A developer analyzes what makes a good developer experience, focusing on the inconsistent and 'lumpy' nature of the Web Platform's APIs and abstractions.
An introduction to WebGPU, focusing on using its low-level API for general-purpose GPU computing rather than graphics rendering.
A software engineer shares a personal strategy for excelling in technical coding interviews by focusing on development velocity and iterative problem-solving.
Explains how HTTP range requests enable video seeking and details implementing a streaming file server using WHATWG Streams and Deno.
Explores whether WebAssembly guarantees performance gains, using AssemblyScript and image blurring as a case study.
Explains the physics and optics behind why smartphone portrait mode uses artificial blur instead of true optical depth of field.
An exploration of monochrome image dithering, inspired by the game 'Return of the Obra Dinn', covering techniques, history, and technical implementation.
A technical case study on improving WebXR VR performance by moving a Three.js app's physics calculations off the main thread.
Explores using WHATWG Streams for reactive programming, comparing them to RxJS observables and discussing their suitability for web development.
Explores moving Redux state management off the main UI thread in a React application using Comlink for improved performance.
Analyzes the performance of JavaScript's postMessage API, debunking myths about its speed and providing benchmarks for Web Workers.
Explores the widening performance gap in mobile devices and argues for using Web Workers to handle JavaScript's blocking nature, especially for users on low-end phones.
A guide to compiling C code directly to WebAssembly using LLVM, bypassing the larger Emscripten toolchain for a leaner approach.
Explores the fundamentals of raw WebAssembly, its text format (Wat), and how to create and understand basic modules.
A critique of simplistic performance advice and microbenchmarks, advocating for context-driven analysis and proper measurement in web development.
Explores the concept of headless web development by drawing an analogy between modular camera lenses and decoupled, single-responsibility software components.
The article draws parallels between professional video production and web development, advocating for the Actor Model to improve parallelism and main thread efficiency.