Top all-time · #1615
Nick Fitzgerald
Personal blog · fitzgeraldnick.comprogrammingsystemsweb
Nick Fitzgerald's personal blog at fitzgeraldnick.com covers programming, systems and web. Since 2009, 43 different Hacker News readers have linked it 70 times, most often “Always Bump Downwards (2019)”. It is still writing: the last post was on 2026-06-01, and you can follow it by feed.
Too few sampled comments (24) to say how often HN recommends it.?
Why HN links it
Comments link Nick Fitzgerald's posts on Rust and WebAssembly speed versus JavaScript, source maps, Firebug and Firefox devtools, and bump allocators, mostly as references. A few commenters recommend specific posts.
Summarised by Claude from a sample of 24 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Always Bump Downwards (2019)6 people · 6 mentions · first linked 2019-11-02
- /2018/02/26/speed-without-wizardry.html4 people · 5 mentions · first linked 2021-02-28
- Async Stack Traces in Rust4 people · 4 mentions · first linked 2019-08-28
- Garbage Collection Without Unsafe Code3 people · 3 mentions · first linked 2024-02-07
- Source Maps Are an Insufficient Debugging Format for the Web3 people · 3 mentions · first linked 2017-01-05
- Speed Without Wizardry3 people · 3 mentions · first linked 2018-02-26
- Synthesizing Loop-Free Programs with Rust and Z32 people · 2 mentions · first linked 2020-01-13
- Demangling C++ Symbols in Rust2 people · 2 mentions · first linked 2017-02-22
- Scrapmetal – Scrap Your Rust Boilerplate2 people · 2 mentions · first linked 2017-08-03
- Hiding Implementation Details with ECMAScript 6 WeakMaps2 people · 2 mentions · first linked 2014-01-13
What Hacker News says?
So, in general, Rust should be good for writing VMs. If you want a JIT, though, Rust may not have any super huge advantage with it, specifically, as it would basically be all unsafe anyway. There was a really great blog post about writing a Scheme implementation, including a GC: http://fitzgeraldnick.com/weblog/60/
Comment linking /weblog/60/
on “Announcing Rust 1.0”Submitted Demangling C++ Symbols in Rust as a story · 245 points
HN discussion> The whole resources view https://bugzilla.mozilla.org/show_bug.cgi?id=926449 Here's a screencap of the WIP (ignore the text): https://bug970517.bugzilla.mozilla.org/attachment.cgi?id=841... > JavaScript profiling (heap, cpu, events) We have CPU profiling now, but we are in the process of reworking the UI to make it more useful and include a better presentation for events and how they fit into that picture. I'm wor…
Comment linking /weblog/54/
on “Firefox 29”Submitted Rust and WebAssembly in 2019 as a story · 237 points
HN discussionThere was a back and forth on that subject a few years back: Mozilla rewrote their sourcemap parser from JS to naïve Rust (/WASM) for a 5.89x gain, mraleph objected to the need and went through an epic bout of algorithmic and micro-optimisations to get the pure JS to a similar level, then the algorithmic optimisations were reimported into the Rust version for 3x further gain (and much lower variance than the pure JS…
Comment linking /2018/02/26/speed-without-wizardry.html
on “PR that converts the TypeScript repo from namespaces to modules”Submitted Speed Without Wizardry as a story · 206 points
HN discussionI'm working on these tools now, finishing up initial platform work, should start on business logic/UI fairly soon here and get a version 0 out soon. See http://fitzgeraldnick.com/weblog/54/ for some implementation details.
Comment linking /weblog/54/
on “Firebug 2.0”Submitted Destructuring Assignment in ECMAScript 6 as a story · 123 points
HN discussionYes it is. I also wrote more about the backend implementation on lobste.rs < https://lobste.rs/s/cvtz0x/firefox_s_new_memory_tool >: Hi folks, For the last year or so, my coworker Jim Blandy and I have been designing and implementing APIs in SpiderMonkey (Firefox’s JavaScript engine) to support various kinds of memory allocation/retention introspection. We are finally shipping a frontend to users as well, and this b…
Comment linking /weblog/61/
on “Firefox’s New Memory Tool”Submitted How does dynamic dispatch work in WebAssembly? as a story · 98 points
HN discussionRight. As far as I know, they currently work in Chrome, in Node.js (with a library), in Webkit nightlies, and are getting close-ish in Firefox nightlies: http://fitzgeraldnick.com/weblog/45/
Comment linking /weblog/45/
on “CoffeeScript 1.6.0 released with support for source maps”Submitted Source Maps Are an Insufficient Debugging Format for the Web as a story · 71 points
HN discussionAnd if you are willing to depend on Rust code, there's also a C++ symbol demangler written in Rust... :) http://fitzgeraldnick.com/2017/02/22/cpp-demangle.html
Comment linking /2017/02/22/cpp-demangle.html
on “Building Tiny Rust Binaries for Embedded Linux”Submitted Back to the Futu-Rr-e: Deterministic Debugging with Rr as a story · 61 points
HN discussionDon't forget to follow that up with the second follow-up: http://fitzgeraldnick.com/2018/02/26/speed-without-wizardry....
Comment linking /2018/02/26/speed-without-wizardry.html
on “Replacing JavaScript Hot Path with WebAssembly”Submitted Beyond Source Maps as a story · 53 points
HN discussionWhat's probably missing is a standard test suite for the protocol... Can't one generate one with model-based testing or another rather automatic mean. Who's the boss of the lsp project? :-) I'm adding something from my open tabs: https://fitzgeraldnick.com/2020/08/24/writing-a-test-case-ge...
Comment linking /2020/08/24/writing-a-test-case-generator.html
on “Diffsitter: A tree-sitter based AST difftool to get meaningful semantic diffs”Submitted Message Passing, Duck Typing, Object Composition, and not Inheritance as a story · 35 points
HN discussionThank you! TLDR: JSX transformer makes the following ES6 features compatible with old browsers (IE8+) * arrow functions [ http://tc39wiki.calculist.org/es6/arrow-functions/ ] * classes [ https://github.com/esnext/es6-class ] * destructuring [ http://fitzgeraldnick.com/weblog/50/ ] * object concise methods [ http://ariya.ofilabs.com/2013/03/es6-and-method-definitions.... ] * rest parameters [ http://tc39wiki.calculis…
Comment linking /weblog/50/
on “A React.js case study”Submitted Writing a Test Case Generator for a Programming Language as a story · 31 points
HN discussionPretty much, yeah. Today's web applications go through multiple forms of compilation and transformation. Conversion from ES6 modules to CommonJS, compilation of newer JS syntax into equivalent older syntax supported by more browsers, minification that renames symbols to cut down on the total byte size delivered, and bundling of hundreds of individual modules into a single output JS bundle (or possibly several code-s…
Comment linking /2015/06/19/source-maps-are-insufficient.html
on “What is a Source Map”Submitted Memory Management in Oxischeme as a story · 21 points
HN discussionPerformance. See the graphs here: https://fitzgeraldnick.com/2018/02/26/speed-without-wizardry... Look how much spread there is in the JS, and how little there is in the wasm. Depending on what you're doing, this may or may not matter to you.
Comment linking /2018/02/26/speed-without-wizardry.html
on “WebAssembly”Submitted Synthesizing Loop-Free Programs with Rust and Z3 as a story · 20 points
HN discussionhttps://fitzgeraldnick.com/2018/02/26/speed-without-wizardry...
Comment linking /2018/02/26/speed-without-wizardry.html
on “Maybe you don't need Rust and WASM to speed up your JS (2018)”Submitted Macros in JavaScript as a story · 18 points
HN discussionYou can give scripts names using the sourceURL pragma: http://fitzgeraldnick.com/weblog/59/ And I'm not sure what you mean about the source. I see the correct source when I debug evaled scripts in Firefox Nightly.
Comment linking /weblog/59/
on “Firebug 3 and Multiprocess Firefox”Submitted Always Bump Downwards (2019) as a story · 13 points
HN discussionPlease, don't skip the last step and make sure that you test them, too! http://fitzgeraldnick.com/weblog/51/ :)
Comment linking /weblog/51/
on “Let’s get serious about ES6 generator functions”Submitted Always Bump Downwards as a story · 13 points
HN discussion