56,966 blogs · [ { "id": "01a0872b-fa2e-7221-9a7a-0f65c8ac8e0b", "title": "Using Opus 4.8 to get a second opinion on an MRI and where it leaves me", "url": "https://antoine.fi/mri-analysis-using-claude-code-opus", "published_at": "2026-06-28T15:27:43+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65c919c9b6", "title": "Reviewing 007 First Light", "url": "https://antoine.fi/007-first-light", "published_at": "2026-06-20T12:28:30+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65c9be9849", "title": "One-shotting an incremental reading app in June 2026", "url": "https://antoine.fi/incremental-reading-app-one-shot", "published_at": "2026-05-31T12:02:31+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65c9fdb04d", "title": "What is the point of having a blog in the age of LLMs", "url": "https://antoine.fi/a-blog-in-the-age-of-llms", "published_at": "2026-05-01T12:01:48+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65ca0852e8", "title": "Should you learn some Japanese before visiting Japan? And how?", "url": "https://antoine.fi/learning-japanese-before-visiting-japan", "published_at": "2025-12-22T20:14:05+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65ca3bd299", "title": "Why and how to sentence mine with Migaku (to Anki)", "url": "https://antoine.fi/sentence-mining-with-migaku", "published_at": "2025-12-04T11:59:37+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65ca7b7bd9", "title": "Should you switch to GCP's C4A CPUs? And charts from our AlloyDB migration", "url": "https://antoine.fi/c4a-alloydb", "published_at": "2025-10-01T12:49:10+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cb50685f", "title": "Self-hosting the Anki sync server with Tailscale", "url": "https://antoine.fi/selfhosting-anki-sync-server", "published_at": "2025-09-24T09:32:37+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cbae9929", "title": "Building an N+1 language deck using LLMs, TTS and image generation for Anki", "url": "https://antoine.fi/building-n-plus-one-deck-using-ai", "published_at": "2025-09-18T10:44:34+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cbd5271b", "title": "Lessons learned from building a sync-engine and reactivity system with SQLite", "url": "https://antoine.fi/sqlite-sync-engine-with-reactivity", "published_at": "2025-08-15T10:52:40+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cc2cc4ed", "title": "Learning a foreign language when you do not need to", "url": "https://antoine.fi/learning-languages-for-fun", "published_at": "2025-08-06T15:40:27+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cc436aa6", "title": "Trying out Cursor's BugBot PR reviewer", "url": "https://antoine.fi/cursor-bugbot", "published_at": "2025-06-04T07:33:07+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cd321492", "title": "OpenAI's Codex: A review after a dozen AI generated PRs", "url": "https://antoine.fi/openai-codex-review", "published_at": "2025-05-19T08:58:46+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65ce154fa5", "title": "Duolingo's engagement tricks", "url": "https://antoine.fi/duolingo-engagement", "published_at": "2025-04-14T07:28:10+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65ce5b3348", "title": "Reviewing OpenAI's Deep Research: A good starting point", "url": "https://antoine.fi/review-openai-deep-research", "published_at": "2025-02-04T10:29:42+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cf290a15", "title": "Accessing OpenAI's Operator outside the USA", "url": "https://antoine.fi/openai-operator-outside-usa", "published_at": "2025-01-29T07:38:46+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65cf7db5b5", "title": "OpenAI Operator review: Currently too limited but reasons to be hopeful", "url": "https://antoine.fi/trying-openai-operator", "published_at": "2025-01-29T07:03:12+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65d05d5937", "title": "Building an offline first E2E encrypted web app with PGlite and Electric", "url": "https://antoine.fi/electric-pglite-offline-first", "published_at": "2025-01-26T10:55:39+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65d128d87f", "title": "Enriching or modifying an Anki deck with LLMs", "url": "https://antoine.fi/anki-enrichment-llms", "published_at": "2025-01-03T10:52:50+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65d1a16ef3", "title": "Thresholds, not goals", "url": "https://antoine.fi/thresholds", "published_at": "2024-12-28T16:45:35+00:00" }, { "id": "01a0872b-fa2e-7221-9a7a-0f65d2624018", "title": "Using OpenAI's o1 models for code reviews (and my custom rake task)", "url": "https://antoine.fi/o1-code-review", "published_at": "2024-12-18T11:47:24+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f91fe23bbd3", "title": "Trying out the paid Bug Finder in Cursor", "url": "https://antoine.fi/cursor-bug-finder", "published_at": "2024-12-12T20:53:14+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f91fe64f562", "title": "Setting up a free private Docker registry for deploying with Kamal", "url": "https://antoine.fi/container-registry-for-kamal", "published_at": "2024-11-25T20:47:15+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f91fecf9ebd", "title": "Running Windows 98 on an Apple Silicon Mac: A practical guide and some thoughts", "url": "https://antoine.fi/windows-98-on-apple-silicon", "published_at": "2024-11-12T10:32:46+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f91ff6b3f38", "title": "Potato Analytics: Minimalistic, privacy-conscious tracking for your website", "url": "https://antoine.fi/potato-analytics", "published_at": "2024-11-08T14:47:17+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f91ff9a0a67", "title": "First rule of server security: Zero access", "url": "https://antoine.fi/server-safety-zero-access", "published_at": "2024-11-05T14:30:24+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920026c7c5", "title": "PSA: Don't use Cloudflare Fonts in production", "url": "https://antoine.fi/psa-cloudflare-fonts-doesnt-work", "published_at": "2024-11-03T13:36:08+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f92002f605a", "title": "Using embeddings to display related articles with Supabase in Ruby on Rails", "url": "https://antoine.fi/related-posts-embeddings-with-supabase", "published_at": "2024-10-31T08:49:09+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920063713d", "title": "Call of Duty: Black Ops 6 campaign review — Delivers the fun", "url": "https://antoine.fi/black-ops-6-review", "published_at": "2024-10-27T14:13:07+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9200d069be", "title": "You're using your AirPods too much", "url": "https://antoine.fi/too-much-airpods", "published_at": "2024-10-24T17:37:11+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9201aede75", "title": "Building Integral Review v2... and a blogging platform", "url": "https://antoine.fi/openlism-and-integral-review-v2", "published_at": "2024-10-20T14:03:21+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9201df2c56", "title": "Reflect Notes review (as my primary notes app)", "url": "https://antoine.fi/reflect-notes-review", "published_at": "2024-06-19T12:44:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9202678dbf", "title": "Why players love WoW Classic and why older games seem better", "url": "https://antoine.fi/wow-classic", "published_at": "2024-06-01T18:26:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9202c00eaa", "title": "The uselessness of lying", "url": "https://antoine.fi/lying", "published_at": "2024-05-10T10:20:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f92039834cf", "title": "The negligible impact of purchasing green electricity", "url": "https://antoine.fi/green-electricity", "published_at": "2024-04-10T21:06:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9203ea6410", "title": "Using Time Machine and Tailscale for remote backups", "url": "https://antoine.fi/time-machine-with-tailscale", "published_at": "2024-04-08T11:45:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9204e9f1cb", "title": "Star Trek's beautiful praise of professionalism", "url": "https://antoine.fi/star-trek-professionalism", "published_at": "2024-02-19T16:19:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920586b8ea", "title": "Should you localize remote workers' compensation?", "url": "https://antoine.fi/remote-compensation-localization", "published_at": "2024-01-23T09:51:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920598ac5d", "title": "A principled approach to when businesses should or shouldn't engage in politics", "url": "https://antoine.fi/company-politics", "published_at": "2024-01-11T16:08:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9206864be3", "title": "There’s no problem: Understanding and dealing with stress", "url": "https://antoine.fi/dealing-with-stress", "published_at": "2024-01-07T11:11:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920768c291", "title": "Optimizing for Feet Health and Function", "url": "https://antoine.fi/feet-health-and-function", "published_at": "2023-07-30T15:42:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9207f4e077", "title": "Dark review: Too consistent for its own good", "url": "https://antoine.fi/review-dark", "published_at": "2023-07-17T15:17:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9208a15271", "title": "Nutri-Score: A (Potentially Dangerous) Disappointment", "url": "https://antoine.fi/nutri-score", "published_at": "2022-04-14T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9208e4bc66", "title": "From noob to champion: Winning at Halo Infinite (and other FPS)", "url": "https://antoine.fi/fps-champion", "published_at": "2022-02-19T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9209b7088c", "title": "Reviewing Masterworks: Interesting service, difficult market", "url": "https://antoine.fi/masterworks", "published_at": "2021-12-12T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920a424998", "title": "Thoughts on rent control and better alternatives", "url": "https://antoine.fi/rent-control", "published_at": "2021-06-07T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920b1b650f", "title": "A guide to building a blockchain & cryptocurrency from scratch in Ruby", "url": "https://antoine.fi/building-a-blockchain-and-cryptocurrency-in-ruby", "published_at": "2021-04-28T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920b6f0aa4", "title": "A minimalist free commenting system built with Cloudflare Workers", "url": "https://antoine.fi/simple-commenting-system-static-website", "published_at": "2021-04-21T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920c580e46", "title": "10 risks and challenges you should be aware of in P2P Lending", "url": "https://antoine.fi/p2p-lending-risks", "published_at": "2021-04-03T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920d1f69a5", "title": "Introducing my latest project: VocalBird", "url": "https://antoine.fi/vocalbird", "published_at": "2020-05-07T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920d55ebce", "title": "Getting more productive is the most human thing you can do", "url": "https://antoine.fi/getting-more-productive", "published_at": "2020-02-15T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920e1e591f", "title": "Security needs the best UX", "url": "https://antoine.fi/security-needs-ux", "published_at": "2020-01-25T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920ecdca2e", "title": "A system to be calm", "url": "https://antoine.fi/a-system-to-be-calm", "published_at": "2019-12-28T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920f71932b", "title": "Business opportunities well-funded startups cannot take from bootstrapped businesses", "url": "https://antoine.fi/business-opportunities-for-bootstrapped-businesses", "published_at": "2018-10-06T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920f937ca5", "title": "Gaming the NPS", "url": "https://antoine.fi/gaming-nps", "published_at": "2018-06-12T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f920fb8b477", "title": "Not raising funds to stay small and happy", "url": "https://antoine.fi/not-raising-funds-to-stay-small-and-happy", "published_at": "2017-12-22T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9210355337", "title": "Tools distract us from building", "url": "https://antoine.fi/tools-distract-us-from-building", "published_at": "2017-05-21T22:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9210aadd46", "title": "HTTPS is hurting users far away from your servers, and what to do about it", "url": "https://antoine.fi/https-is-hurting-users-far-away-from-your-servers-and-what-to-do-about-it", "published_at": "2017-03-09T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9210ade619", "title": "Super simple worker pools in Go using channels", "url": "https://antoine.fi/super-simple-worker-pools-in-go-using-channels", "published_at": "2017-02-27T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9210bcfdd9", "title": "How to disable some of your website’s endpoints in seconds", "url": "https://antoine.fi/how-to-disable-a-websites-endpoint-in-seconds", "published_at": "2017-01-05T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f921106f87b", "title": "Lessons learned from our Security Bounty Program", "url": "https://antoine.fi/lessons-learned-from-our-security-bounty-program", "published_at": "2016-12-08T23:00:00+00:00" }, { "id": "01a0872b-fa2f-7321-8faf-4f9211ed47fb", "title": "Getting hired as a remote worker", "url": "https://antoine.fi/getting-hired-as-a-remote-worker", "published_at": "2016-10-25T22:00:00+00:00" } ] posts Claim your blog
Back to antoine.fi
Blog · corpus.blog/blogs/antoine.fi/posts

antoine.fi

antoine.fi

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016