Nicolas Dupont

Nicolas Dupont

I'm a software engineer from Paris, based in New York. I run Cyborg and spend most of my time building things (some ship, most don't). I really enjoy working on performance optimization and applied cryptography, and sometimes I write. Outside of being an absolute nerd, I'm a big football/soccer fan (Allez les Bleus & Ici c'est Paris!) and an avid snowboarder.
Who Owns the Bytes? Making numpy-ts as Fast as Native
JSNation US 2026JSNation US 2026
Upcoming
Who Owns the Bytes? Making numpy-ts as Fast as Native
Python's scientific and data ecosystem rests on one library: NumPy. Pandas, scikit-learn, SciPy, and most ML tooling are built on top of it. JavaScript has never had a real equivalent, and that gap is a big reason serious numeric and data work still defaults to Python. The hard part about bringing NumPy to JS? Performance.numpy-ts is a complete NumPy for TypeScript and JavaScript, and this talk is the story of making it fast. The first version was 15x slower than native NumPy. The obvious move, rewriting hot paths in WASM, got it to roughly 2x slower and then stalled, for reasons that turned out to have nothing to do with FFI overhead. The fix was architectural: changing where the array data lives.We'll trace that journey across 7,159 benchmarks, from 15x slower to faster than native, and the copy tax hiding inside most WASM-accelerated JS libraries along the way.