56,966 blogs · [ { "id": "01a0d904-3c0b-7304-892f-8584797fbd55", "title": "Contributions: Sep 13–20, 2026", "url": "https://jasnell.me/contributions/2026-W38", "published_at": "2026-09-20T00:00:00+00:00" }, { "id": "01a0baa2-5b78-71ee-a714-f5dbb4f24164", "title": "Contributions: Sep 6–13, 2026", "url": "https://jasnell.me/contributions/2026-W37", "published_at": "2026-09-13T00:00:00+00:00" }, { "id": "01a0878b-5e65-71a9-a190-640d14a89b0f", "title": "Contributions: Aug 30 – Sep 6, 2026", "url": "https://jasnell.me/contributions/2026-W36", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22d4a7cd6", "title": "Contributions: Aug 23–30, 2026", "url": "https://jasnell.me/contributions/2026-W35", "published_at": "2026-08-30T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22e20daa1", "title": "node:bench", "url": "https://jasnell.me/posts/a-node-bench-module", "published_at": "2026-08-28T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22ead332f", "title": "Contributions: Aug 16–23, 2026", "url": "https://jasnell.me/contributions/2026-W34", "published_at": "2026-08-23T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22f4aa738", "title": "Hypothesis testing, EWMA, and portable histograms in Node.js", "url": "https://jasnell.me/posts/histogram-stats-and-exchange", "published_at": "2026-08-20T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22f920e91", "title": "Making Node.js histograms more useful", "url": "https://jasnell.me/posts/histogram-analysis-apis", "published_at": "2026-08-19T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc22ff320f8", "title": "Contributions: Aug 9–16, 2026", "url": "https://jasnell.me/contributions/2026-W33", "published_at": "2026-08-16T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc230d8ccd2", "title": "Contributions: Aug 2–9, 2026", "url": "https://jasnell.me/contributions/2026-W32", "published_at": "2026-08-09T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc230f26247", "title": "Contributions: Jul 26 – Aug 2, 2026", "url": "https://jasnell.me/contributions/2026-W31", "published_at": "2026-08-02T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2312a6eb0", "title": "Contributions: Jul 19–26, 2026", "url": "https://jasnell.me/contributions/2026-W30", "published_at": "2026-07-26T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2316862d8", "title": "HTTP Server API: A Draft Specification", "url": "https://jasnell.me/posts/http-server-api-draft", "published_at": "2026-07-20T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2321e3340", "title": "Contributions: Jul 12–19, 2026", "url": "https://jasnell.me/contributions/2026-W29", "published_at": "2026-07-19T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc232c91d9a", "title": "Fetch Needs Error Codes", "url": "https://jasnell.me/posts/fetch-needs-error-codes", "published_at": "2026-07-12T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc232d181cd", "title": "Contributions: Jul 5–12, 2026", "url": "https://jasnell.me/contributions/2026-W28", "published_at": "2026-07-12T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2332d05f1", "title": "Fetch Is Not Enough", "url": "https://jasnell.me/posts/fetch-is-not-enough", "published_at": "2026-07-10T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23406aeb3", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000790-2", "published_at": "2026-06-27T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23416de5b", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000784-2", "published_at": "2026-06-26T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2350617bc", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000759-2", "published_at": "2026-06-25T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc235b6fc9c", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000745-2", "published_at": "2026-06-24T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc236891186", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000743-2", "published_at": "2026-06-23T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2375bf0ff", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000721-2", "published_at": "2026-06-22T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc237ffe195", "title": "What If npm Ran on AT Protocol?", "url": "https://jasnell.me/posts/what-if-npm-ran-on-atproto", "published_at": "2026-06-21T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc238c33723", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000712-2", "published_at": "2026-06-21T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc239a75ca1", "title": "Contributions: Jun 14–21, 2026", "url": "https://jasnell.me/contributions/2026-W25", "published_at": "2026-06-21T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23a9d9736", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000583-2", "published_at": "2026-06-20T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23b3e816e", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000557-2", "published_at": "2026-06-19T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23b3eee8a", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000554-2", "published_at": "2026-06-18T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23bab79de", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000533", "published_at": "2026-06-17T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23c9033ed", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000530-2", "published_at": "2026-06-16T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23d8da8e7", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000515-2", "published_at": "2026-06-15T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23d980739", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000513-2", "published_at": "2026-06-14T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23de5e312", "title": "Contributions: Jun 7–14, 2026", "url": "https://jasnell.me/contributions/2026-W24", "published_at": "2026-06-14T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23ecf1db8", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000503-2", "published_at": "2026-06-13T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23eee0d8c", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000498-2", "published_at": "2026-06-12T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23f349e5e", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000481-2", "published_at": "2026-06-11T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc23fe010dd", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000470-2", "published_at": "2026-06-10T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24066f5da", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000459-2", "published_at": "2026-06-09T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc241064460", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000445-2", "published_at": "2026-06-08T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc241f2630c", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000440", "published_at": "2026-06-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc242bf0b94", "title": "Contributions: May 31 – Jun 7, 2026", "url": "https://jasnell.me/contributions/2026-W23", "published_at": "2026-06-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc243407479", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000423-2", "published_at": "2026-06-06T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24351b497", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000379-2", "published_at": "2026-06-05T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc244175150", "title": "Show Your Work", "url": "https://jasnell.me/posts/show-your-work", "published_at": "2026-06-04T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc244b72f96", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000357-3", "published_at": "2026-06-04T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc244ef5528", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000352-3", "published_at": "2026-06-03T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc245079239", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000082", "published_at": "2026-06-02T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24519f3d1", "title": "Cities", "url": "https://jasnell.me/photos/cities-do01000052", "published_at": "2026-06-01T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc245a556ee", "title": "Contributions: May 24–31, 2026", "url": "https://jasnell.me/contributions/2026-W22", "published_at": "2026-05-31T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc245f657a3", "title": "Contributions: May 17–24, 2026", "url": "https://jasnell.me/contributions/2026-W21", "published_at": "2026-05-24T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc246bcd881", "title": "Experimental DTLS Support in Node.js", "url": "https://jasnell.me/posts/experimental-dtls-in-node", "published_at": "2026-05-21T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc246c8cf1a", "title": "Contributions: May 10–17, 2026", "url": "https://jasnell.me/contributions/2026-W20", "published_at": "2026-05-17T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc247b50a6a", "title": "Contributions: May 3–10, 2026", "url": "https://jasnell.me/contributions/2026-W19", "published_at": "2026-05-10T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24801b55f", "title": "OpenSource is still art", "url": "https://jasnell.me/posts/open-source-is-still-art", "published_at": "2026-05-08T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24858a7f9", "title": "Teaching libuv's UDP Stack New Tricks", "url": "https://jasnell.me/posts/libuv-udp-extensions", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2491edb79", "title": "QUIC and HTTP/3 Come To Node.js (finally)", "url": "https://jasnell.me/posts/quic-comes-to-node", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc2492ed1f1", "title": "QUIC Endpoints, Sessions, and the QUIC Connection Lifecycle", "url": "https://jasnell.me/posts/quic-part-2", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24952beb9", "title": "QUIC Streams - Sending and Receiving Data", "url": "https://jasnell.me/posts/quic-part-3", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc249ed3e26", "title": "HTTP/3 Over QUIC in Node.js", "url": "https://jasnell.me/posts/quic-part-4", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24ac289aa", "title": "Advanced QUIC", "url": "https://jasnell.me/posts/quic-part-5", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24b0534c4", "title": "Contributions: Apr 26 – May 3, 2026", "url": "https://jasnell.me/contributions/2026-W18", "published_at": "2026-05-03T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24b9ed17e", "title": "Contributions: Apr 19–26, 2026", "url": "https://jasnell.me/contributions/2026-W17", "published_at": "2026-04-26T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24c261271", "title": "Contributions: Apr 12–19, 2026", "url": "https://jasnell.me/contributions/2026-W16", "published_at": "2026-04-19T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24c88cad7", "title": "Contributions: Apr 5–12, 2026", "url": "https://jasnell.me/contributions/2026-W15", "published_at": "2026-04-12T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24cbbcdca", "title": "Contributions: Mar 29 – Apr 5, 2026", "url": "https://jasnell.me/contributions/2026-W14", "published_at": "2026-04-05T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24dbb966d", "title": "Contributions: Mar 22–29, 2026", "url": "https://jasnell.me/contributions/2026-W13", "published_at": "2026-03-29T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24ea54e2d", "title": "Contributions: Mar 15–22, 2026", "url": "https://jasnell.me/contributions/2026-W12", "published_at": "2026-03-22T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24ef62473", "title": "2 AI or not 2 AI... Is really not the question", "url": "https://jasnell.me/posts/ai-in-os", "published_at": "2026-03-18T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc24fcff3c3", "title": "A few standards-related MCPs", "url": "https://jasnell.me/posts/a-few-standards-related-mcps", "published_at": "2026-03-16T00:00:00+00:00" }, { "id": "01a0878b-5e69-72a1-96bf-dbc250bd2be7", "title": "This blog now runs on vinext", "url": "https://jasnell.me/posts/vinext", "published_at": "2026-03-15T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712d916b2e0", "title": "Contributions: Mar 2–9, 2026", "url": "https://jasnell.me/contributions/2026-W11", "published_at": "2026-03-09T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712d9564a4f", "title": "Contributions: Feb 23 – Mar 2, 2026", "url": "https://jasnell.me/contributions/2026-W10", "published_at": "2026-03-02T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712d9d3363c", "title": "Contributions: Feb 16–23, 2026", "url": "https://jasnell.me/contributions/2026-W09", "published_at": "2026-02-23T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712da5a960c", "title": "Contributions: Feb 9–16, 2026", "url": "https://jasnell.me/contributions/2026-W08", "published_at": "2026-02-16T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dab084ab", "title": "Contributions: Feb 2–9, 2026", "url": "https://jasnell.me/contributions/2026-W07", "published_at": "2026-02-09T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712db3d1773", "title": "Contributions: Jan 26 – Feb 2, 2026", "url": "https://jasnell.me/contributions/2026-W06", "published_at": "2026-02-02T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dc1c2ef1", "title": "Contributions: Jan 19–26, 2026", "url": "https://jasnell.me/contributions/2026-W05", "published_at": "2026-01-26T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dc248449", "title": "Contributions: Jan 12–19, 2026", "url": "https://jasnell.me/contributions/2026-W04", "published_at": "2026-01-19T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dcc8b161", "title": "Contributions: Dec 29 – Jan 5, 2026", "url": "https://jasnell.me/contributions/2026-W02", "published_at": "2026-01-05T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dd5f1460", "title": "Contributions: Dec 22–29, 2025", "url": "https://jasnell.me/contributions/2026-W01", "published_at": "2025-12-29T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712ddd5e8d5", "title": "Implementing the Web Streams API in Node.js", "url": "https://jasnell.me/posts/webstreams", "published_at": "2021-08-06T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dea5168b", "title": "Two episodes of OpenHive.js! One with Charlie Robbins and one with Gil Tayar", "url": "https://jasnell.me/posts/openhivejs-two-for-one", "published_at": "2021-07-30T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712deb3cde6", "title": "New crypto capabilities in Node.js - UUID's and Primes", "url": "https://jasnell.me/posts/new-crypto", "published_at": "2021-07-29T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712df095a75", "title": "Using AbortSignal in Node.js", "url": "https://jasnell.me/posts/abortsignal", "published_at": "2021-07-22T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712df103a6d", "title": "OpenHive.js on Integration Tests with JavaScript", "url": "https://jasnell.me/posts/openhivejs-goldberg", "published_at": "2021-07-09T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712df8b4129", "title": "OpenHive.js with Rob Palmer on Server-side Javascript and TypeScript", "url": "https://jasnell.me/posts/openhivejs-palmer", "published_at": "2021-06-10T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712dfe7ea5e", "title": "Broken Promises - The Node.js Event Loop", "url": "https://jasnell.me/posts/broken-promises", "published_at": "2021-06-03T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e08a4868", "title": "OpenHive.js with Danielle Adams on Cloud Native Buildpacks", "url": "https://jasnell.me/posts/openhivejs-adams", "published_at": "2021-05-12T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e0da14af", "title": "OpenHive.js with Kent C. Dodds on JavaScript Training", "url": "https://jasnell.me/posts/openhivejs-dodds", "published_at": "2021-04-07T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e1c03fa7", "title": "Getting to know HKDF", "url": "https://jasnell.me/posts/hkdf", "published_at": "2021-03-18T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e1ce6e39", "title": "OpenHive.js with Liz Parody on building communities", "url": "https://jasnell.me/posts/openhivejs-parody", "published_at": "2021-03-10T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e1ffb349", "title": "OpenHive.js on 25 years of JavaScript", "url": "https://jasnell.me/posts/openhivejs-25years", "published_at": "2021-02-25T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e26d6098", "title": "OpenHive.js with Mikael Rogers", "url": "https://jasnell.me/posts/openhivejs-rogers", "published_at": "2021-01-06T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e2dafe07", "title": "OpenHive.js with Anthony Aragues on Data Visualization", "url": "https://jasnell.me/posts/openhivejs-aragues", "published_at": "2020-11-11T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e39ac1d1", "title": "Implementing the Web Crypto API for Node.js Core", "url": "https://jasnell.me/posts/webcrypto-nodejs", "published_at": "2020-10-20T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e4699bb7", "title": "OpenHive.js with Alessandro Polidori on Open Source and VoIP", "url": "https://jasnell.me/posts/openhivejs-polidori", "published_at": "2020-10-07T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e51e0917", "title": "OpenHive.js with Kenigbolo Meya Stephen on Documentation", "url": "https://jasnell.me/posts/openhivejs-kenigbolo", "published_at": "2020-09-09T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e5778b51", "title": "OpenHive.js with the Covid Green Team", "url": "https://jasnell.me/posts/openhivejs-nearform", "published_at": "2020-08-12T00:00:00+00:00" }, { "id": "01a0878b-5e6a-71e5-9618-5712e5bae3c3", "title": "OpenHive.js with Ramón Guijarro on Modern Web APIs", "url": "https://jasnell.me/posts/openhivejs-guijarro", "published_at": "2020-07-06T00:00:00+00:00" } ] posts Claim your blog
Back to jasnell.me
Blog · corpus.blog/blogs/jasnell.me/posts

jasnell.me

jasnell.me

2026

2025

2021

2020