41554 blogs · [ { "id": "01a0878f-fdb7-7062-9967-29937f952e46", "title": "Anatomy of a Test", "url": "https://jonathan-frere.com/posts/anatomy-of-a-test/", "published_at": "2026-09-04T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-29938074571c", "title": "Pushing and Pulling: Three Reactivity Algorithms", "url": "https://jonathan-frere.com/posts/reactivity-algorithms/", "published_at": "2026-03-06T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-2993813bb4bb", "title": "Additional Thoughts about the Command Pattern", "url": "https://jonathan-frere.com/posts/command-pattern-followup/", "published_at": "2025-11-29T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299381a7d6aa", "title": "Storing Unwise Amounts of Data in JavaScript Bigints", "url": "https://jonathan-frere.com/posts/bigints-are-cool/", "published_at": "2025-09-21T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-29938234382f", "title": "This Overly Long Variable Name Could Have Been a Comment", "url": "https://jonathan-frere.com/posts/names-vs-comments/", "published_at": "2025-07-01T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299382959775", "title": "Side Effects in SolidJS", "url": "https://jonathan-frere.com/posts/side-effects-in-solidjs/", "published_at": "2025-05-27T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-2993836f76a2", "title": "Bunny Updates", "url": "https://jonathan-frere.com/posts/bunny-updates/", "published_at": "2025-04-16T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-2993845df2e9", "title": "Accessing Fastify Sessions via tRPC Websockets", "url": "https://jonathan-frere.com/posts/trpc-fastify-websockets/", "published_at": "2025-04-15T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299384ac7e94", "title": "Switching to BunnyCDN in Less Than 2 Hours", "url": "https://jonathan-frere.com/posts/switching-to-bunny-cdn/", "published_at": "2025-03-09T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299385379264", "title": "Why are Jujutsu's ID Prefixes So Short?", "url": "https://jonathan-frere.com/posts/jujutsu-shortest-ids/", "published_at": "2025-02-27T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299386041279", "title": "Helix: Why (And How) I Use It", "url": "https://jonathan-frere.com/posts/helix/", "published_at": "2024-12-12T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-29938678bdd7", "title": "Surprising Programmer Tools #53: The Sudoku", "url": "https://jonathan-frere.com/posts/useful-tools-sudoku/", "published_at": "2024-10-24T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299386ba6558", "title": "10 Years of Programming", "url": "https://jonathan-frere.com/posts/10-years-of-programming/", "published_at": "2024-09-26T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299386f93f91", "title": "Adding Discussions to my Blog", "url": "https://jonathan-frere.com/posts/adding-discussions/", "published_at": "2024-08-05T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299387724f9d", "title": "Why Test?", "url": "https://jonathan-frere.com/posts/why-test/", "published_at": "2024-06-23T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-2993881b96e3", "title": "New Disposable APIs in Javascript", "url": "https://jonathan-frere.com/posts/disposables-in-javascript/", "published_at": "2024-05-06T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299388d855c8", "title": "I (Re)designed My Blog", "url": "https://jonathan-frere.com/posts/blog-redesign/", "published_at": "2024-04-29T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-2993895ff009", "title": "How I Do Dependency Injection With Closures", "url": "https://jonathan-frere.com/posts/how-i-do-dependency-injection-with-closures/", "published_at": "2023-10-31T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-299389e661b8", "title": "Wait, Rust Has Effects?", "url": "https://jonathan-frere.com/posts/effects-in-rust/", "published_at": "2023-03-15T00:00:00+00:00" }, { "id": "01a0878f-fdb7-7062-9967-29938a1348b2", "title": "Book Review: A Philosophy of Software Design", "url": "https://jonathan-frere.com/posts/philosophy-software-design/", "published_at": "2020-07-01T00:00:00+00:00" } ] posts Claim your blog
Back to Jonathan's Blog
Blog · corpus.blog/blogs/jonathan-frere.com/posts

Jonathan's Blog

jonathan-frere.com

2026

2025

2024

2023

2020