41554 blogs · [ { "id": "01a0e3c8-06e8-724b-9347-59717a00d376", "title": "Mapping millions of little trees across the Cairngorms with airborne LiDAR", "url": "https://anil.recoil.org/notes/cairngorms-woodland-expansion", "published_at": "2026-09-24T00:00:00+00:00" }, { "id": "01a0d531-1709-71aa-b799-3fbf25f42a23", "title": ".plan-26-38: Near, far, wherever you are, Tessera infers on", "url": "https://anil.recoil.org/notes/2026w38", "published_at": "2026-09-20T00:00:00+00:00" }, { "id": "01a0d531-1709-71aa-b799-3fbf26312207", "title": ".plan-26-37: The humans aren't dead, the humans are ahead", "url": "https://anil.recoil.org/notes/2026w37", "published_at": "2026-09-13T00:00:00+00:00" }, { "id": "01a094c6-00b5-7115-857b-b90bb4d25ade", "title": "Hitting a NERVE with attacks on AI-powered brain-computer interfaces", "url": "https://anil.recoil.org/notes/nerve-attacks", "published_at": "2026-09-11T00:00:00+00:00" }, { "id": "01a08c70-d49d-73ee-ab1f-b2e6916dc09a", "title": "Open MPhil/Part II student projects for 2026-2027", "url": "https://anil.recoil.org/notes/student-projects-2026", "published_at": "2026-09-09T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c580e478", "title": ".plan-26-36: Ground control to major MODIS", "url": "https://anil.recoil.org/notes/2026w36", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c586530b", "title": "Security scanning my own code with Scrutineer and local coding models", "url": "https://anil.recoil.org/notes/scrutineer-local-llm", "published_at": "2026-08-31T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c61d7643", "title": ".plan-26-35: All I want for Tesseramas is (GP)U", "url": "https://anil.recoil.org/notes/2026w35", "published_at": "2026-08-30T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c644b0c7", "title": "The 3rd Programming for the Planet 2026 videos are available", "url": "https://anil.recoil.org/notes/pldi26-propl", "published_at": "2026-08-28T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c73aa00b", "title": "Celebrating a year of Tessera embeddings and releasing GeoTessera 0.10", "url": "https://anil.recoil.org/notes/geotessera-a-year-on", "published_at": "2026-08-27T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c757bbe7", "title": ".plan-26-34: Am I human or am I antibotty", "url": "https://anil.recoil.org/notes/2026w34", "published_at": "2026-08-23T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c7d58a15", "title": "Just a rumour of a bug is enough to find a security exploit these days", "url": "https://anil.recoil.org/notes/rumour-is-the-exploit", "published_at": "2026-08-22T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c8a5dddb", "title": "Using Forester to turn Foundations of CS into interactive evergreen lectures", "url": "https://anil.recoil.org/notes/forester-teaching-notes", "published_at": "2026-08-16T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30c96903cd", "title": ".plan-26-33: Zarro rides out and evidence papers pour in", "url": "https://anil.recoil.org/notes/2026w33", "published_at": "2026-08-16T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30ca44c906", "title": "Improving local weather forecasts using Tessera embeddings", "url": "https://anil.recoil.org/notes/weather-downscaling-tessera", "published_at": "2026-08-13T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30caf428a0", "title": ".plan-26-32: Finally a use for serverless and found the Forester for the trees", "url": "https://anil.recoil.org/notes/2026w32", "published_at": "2026-08-09T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cb88a27f", "title": "Updating to the OxCaml 5.2.0-minus39 opam packaging", "url": "https://anil.recoil.org/notes/oxcaml-opam-guards", "published_at": "2026-08-08T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cbf46e66", "title": "GetMOBILE article on benchmarking micro-NPUs now out", "url": "https://anil.recoil.org/notes/sigmobile-npu", "published_at": "2026-08-05T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30ccd6f4ea", "title": ".plan-26-31: Sorting out Tessera and Evidence TAP infrastructure", "url": "https://anil.recoil.org/notes/2026w31", "published_at": "2026-08-02T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cd79a69b", "title": ".plan-26-30: Bananas ripen, models open, and OxCaml releases", "url": "https://anil.recoil.org/notes/2026w30", "published_at": "2026-07-26T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cdbc8cd6", "title": ".plan-26-29: Perfect weather, imperfectly measured, precisely predicted", "url": "https://anil.recoil.org/notes/2026w29", "published_at": "2026-07-19T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30ce2776a9", "title": ".plan-26-28: What fun papers piled up while I was out at sea", "url": "https://anil.recoil.org/notes/2026w28", "published_at": "2026-07-12T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30ce4388c0", "title": ".plan-26-27: Somewhere over the icecap", "url": "https://anil.recoil.org/notes/2026w27", "published_at": "2026-07-05T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30ce4cea6d", "title": ".plan-26-26: Gelato, geospatial, and players of games", "url": "https://anil.recoil.org/notes/2026w26", "published_at": "2026-06-28T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cef6753c", "title": "A scorching CNG London during Climate Action Week", "url": "https://anil.recoil.org/notes/cng-london-2026", "published_at": "2026-06-24T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30cfedbe64", "title": ".plan-26-25: Planetary scale plans, Windows file-descriptor scale problems", "url": "https://anil.recoil.org/notes/2026w25", "published_at": "2026-06-21T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d03510b9", "title": "Sir David Attenborough joins us to celebrate the Cambridge Conservation Initiative", "url": "https://anil.recoil.org/notes/ten-years-of-cci", "published_at": "2026-06-18T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d0b00d1e", "title": "The Royal Society Environmental Prize lecture on feeding the world without costing the earth", "url": "https://anil.recoil.org/notes/ab-rs-env-medal", "published_at": "2026-06-16T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d19d2d08", "title": "Language integrated LLMs as an OCaml function", "url": "https://anil.recoil.org/notes/language-integrated-llms", "published_at": "2026-06-14T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d27cf189", "title": ".plan-26-24: Apparently a professor now; still debugging io_uring at midnight", "url": "https://anil.recoil.org/notes/2026w24", "published_at": "2026-06-14T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d33513fc", "title": "Tessera v1.1 released, with smoother and temporally stable embeddings", "url": "https://anil.recoil.org/notes/tessera-v11-out", "published_at": "2026-06-12T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d3aaeb95", "title": ".plan-26-23: Earth Embeddings, Emails Everywhere, and ERRNOOOs", "url": "https://anil.recoil.org/notes/2026w23", "published_at": "2026-06-07T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d4358b43", "title": "Tessera at CVPR 2026, and the front page of the European Space Agency!", "url": "https://anil.recoil.org/notes/cvpr-tessera-esa", "published_at": "2026-06-06T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d50c96f1", "title": "Self-hosting email the hard way from your own routable IPv4 block up", "url": "https://anil.recoil.org/notes/recoil-self-hosting-2026", "published_at": "2026-06-06T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d510a7ab", "title": ".plan-26-22: From digital rewilding in Edinburgh to uring and Tessera hackery", "url": "https://anil.recoil.org/notes/2026w22", "published_at": "2026-05-31T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d5ecceee", "title": "Rewilding the Web: my workshop report from Edinburgh", "url": "https://anil.recoil.org/notes/rewilding-the-web-report", "published_at": "2026-05-30T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d6265f46", "title": ".plan-26-21: Pint of Science, OxCaml dissertations, and TESSERA 1.1 stirring", "url": "https://anil.recoil.org/notes/2026w21", "published_at": "2026-05-24T00:00:00+00:00" }, { "id": "01a0872a-c49f-7277-89e8-bc30d6e79fa4", "title": "What happens when a hedgehog story prickles its way into the BBC", "url": "https://anil.recoil.org/notes/hedgehog-tessera-week", "published_at": "2026-05-22T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755ac28193e", "title": "Building OxCaml packages for Debian, Fedora, Homebrew and Arch", "url": "https://anil.recoil.org/notes/oxcaml-packages", "published_at": "2026-05-17T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755ac96b1e0", "title": ".plan-26-20: Putting OxCaml in a box and OCaml in orbit (again)", "url": "https://anil.recoil.org/notes/2026w20", "published_at": "2026-05-17T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755ad0fe960", "title": "Voluntary AI disclosure proposal for OCaml: update 1", "url": "https://anil.recoil.org/notes/opam-ai-disclosure-update", "published_at": "2026-05-14T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755adba9793", "title": ".plan-26-19: Ancient oaks, parliamentary evidence, and TESSERA in the City", "url": "https://anil.recoil.org/notes/2026w19", "published_at": "2026-05-10T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755add715b6", "title": ".plan-26-18: From tropical forest protection to oi swallowing its oxcaml tail", "url": "https://anil.recoil.org/notes/2026w18", "published_at": "2026-05-03T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755ae12d059", "title": "Helping tropical forest protection keep up with a fast-changing world", "url": "https://anil.recoil.org/notes/redd-overcrediting", "published_at": "2026-04-30T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755aee65919", "title": ".plan-26-17: Unwedging kernels, dogfood deployments, and managing beef leakage", "url": "https://anil.recoil.org/notes/2026w17", "published_at": "2026-04-26T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755af24b1e1", "title": "AI, science and the UK–EU relationship at the Royal Society", "url": "https://anil.recoil.org/notes/rs-eu-ai-science", "published_at": "2026-04-21T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755af49fe06", "title": ".plan-26-16: Chennai, Cambridge, Belfast: a week on the wing", "url": "https://anil.recoil.org/notes/2026w16", "published_at": "2026-04-19T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755af7b256b", "title": "The FP Launchpad takes off at IIT Madras", "url": "https://anil.recoil.org/notes/fpl-launch", "published_at": "2026-04-13T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b0601f19", "title": ".plan-26-15: Banyan trees, (anti)botnets and Bose-Einstein bases", "url": "https://anil.recoil.org/notes/2026w15", "published_at": "2026-04-12T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b0fb7451", "title": "The Internet needs an antibotty immune system, stat", "url": "https://anil.recoil.org/notes/internet-immune-system", "published_at": "2026-04-08T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b1091eb1", "title": ".plan-26-14: Tracking AI screen time and escaping to pen and paper", "url": "https://anil.recoil.org/notes/2026w14", "published_at": "2026-04-05T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b1c5487f", "title": "A Proposal for Voluntary AI Disclosure in OCaml Code", "url": "https://anil.recoil.org/notes/opam-ai-disclosure", "published_at": "2026-04-03T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b1c813f5", "title": ".plan-26-13: Oxidised, standardised, and syndicated", "url": "https://anil.recoil.org/notes/2026w13", "published_at": "2026-03-29T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b269503e", "title": "TESSERA now supports the Zarr geo-embeddings convention proposal", "url": "https://anil.recoil.org/notes/tessera-embeddings-convention", "published_at": "2026-03-27T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b3665eef", "title": ".plan-26-12: Zarr across space and TESSERA time", "url": "https://anil.recoil.org/notes/2026w12", "published_at": "2026-03-22T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b380829a", "title": ".plan-26-11: Bins, bollards, bots and biodiversity boffins", "url": "https://anil.recoil.org/notes/2026w11", "published_at": "2026-03-15T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b3bc330a", "title": "Streaming millions of TESSERA tiles over HTTP with Zarr v3", "url": "https://anil.recoil.org/notes/tessera-zarr-v3-layout", "published_at": "2026-03-14T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b4378fcc", "title": ".plan-26-10: Streaming TESSERA working, biodiversity action papers, and FPL takes off", "url": "https://anil.recoil.org/notes/2026w10", "published_at": "2026-03-08T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b44cd174", "title": "Connecting the dots for biodiversity action from the NAS/Royal Society Forum", "url": "https://anil.recoil.org/notes/nas-rs-biodiversity-papers", "published_at": "2026-03-07T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b49e844c", "title": ".plan-26-09: Browser TESSERA, package management and Docker in the CACM", "url": "https://anil.recoil.org/notes/2026w9", "published_at": "2026-03-01T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b5150075", "title": "A Decade of Docker Containers on the CACM cover!", "url": "https://anil.recoil.org/notes/cacm-docker-cover", "published_at": "2026-02-24T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b5239086", "title": ".plan-26-08: At AI summit, Shriram's PL opinions, Zarr hacking", "url": "https://anil.recoil.org/notes/2026w8", "published_at": "2026-02-22T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b5b04978", "title": "At the AI Impact Summit in Delhi: people, planet, progress", "url": "https://anil.recoil.org/notes/india-ai-summit", "published_at": "2026-02-21T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b656faff", "title": "1st TESSERA/CoRE hackathon at the Indian AI Summit", "url": "https://anil.recoil.org/notes/first-tessera-hackathon", "published_at": "2026-02-19T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b686565c", "title": ".plan-26-07: Storage, Lego, Echo, and the IUCN", "url": "https://anil.recoil.org/notes/2026w7", "published_at": "2026-02-15T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b6e79e26", "title": ".plan-26-06: Vivas, ARIA and interviews", "url": "https://anil.recoil.org/notes/2026w6", "published_at": "2026-02-08T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b790a496", "title": "Discussing effective conservation with all the UK Chief Scientists", "url": "https://anil.recoil.org/notes/red-pill-conservation", "published_at": "2026-02-03T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b88a4acc", "title": "My (very) fast zero-allocation webserver using OxCaml", "url": "https://anil.recoil.org/notes/oxcaml-httpz", "published_at": "2026-02-01T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b93fa71d", "title": ".plan-26-05: An OxCaml hacking week", "url": "https://anil.recoil.org/notes/2026w5", "published_at": "2026-02-01T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755b994ae9f", "title": ".plan-26-04: Travelling and tracking TESSERA activity", "url": "https://anil.recoil.org/notes/2026w4", "published_at": "2026-01-25T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755ba4dfaae", "title": ".plan-26-03: TESSERA scaling and speaking at AI4Nature's launch", "url": "https://anil.recoil.org/notes/2026w3", "published_at": "2026-01-18T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bb348955", "title": "Five ways to use the LIFE metric for conservation decision-making", "url": "https://anil.recoil.org/notes/life-uses-paper", "published_at": "2026-01-12T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bc254772", "title": ".plan-26-02: Back from India and straight into the conservation conference", "url": "https://anil.recoil.org/notes/2026w2", "published_at": "2026-01-11T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bc286ae9", "title": "Devcontainer for using O(x)Caml and Claude in your projects", "url": "https://anil.recoil.org/notes/ocaml-claude-dev", "published_at": "2026-01-08T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bd1e89d9", "title": ".plan-26-01: Easing into the new year with reading, temples and mosquitos", "url": "https://anil.recoil.org/notes/2026w1", "published_at": "2026-01-04T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bdf52c57", "title": "Happy new year and my fave readings of the year", "url": "https://anil.recoil.org/notes/hny2026", "published_at": "2026-01-02T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755beab1f88", "title": "AoAH Day 25: Claude OCaml Marketplace for all your festive coding needs", "url": "https://anil.recoil.org/notes/aoah-2025-25", "published_at": "2025-12-25T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bee8a435", "title": "AoAH Day 24: Tuatara, an evolving Atom aggregator that mutates", "url": "https://anil.recoil.org/notes/aoah-2025-24", "published_at": "2025-12-24T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bf27dac4", "title": "AoAH Day 23: Unpac unifies git branching with package management", "url": "https://anil.recoil.org/notes/aoah-2025-23", "published_at": "2025-12-23T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755c03a4eda", "title": "AoAH Day 22: Assembling monorepos for agentic OCaml development", "url": "https://anil.recoil.org/notes/aoah-2025-22", "published_at": "2025-12-22T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755c05b2219", "title": "AoAH Day 21: Complete dynamic HTML5 validation in OCaml and the browser", "url": "https://anil.recoil.org/notes/aoah-2025-21", "published_at": "2025-12-21T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933dfd778788", "title": "AoAH Day 20: Human language detection in native code, JS and wasm", "url": "https://anil.recoil.org/notes/aoah-2025-20", "published_at": "2025-12-20T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933dfdd2b000", "title": "AoAH Day 19: Zulip bot framework to bring Vicuna the friendly camel back", "url": "https://anil.recoil.org/notes/aoah-2025-19", "published_at": "2025-12-19T00:00:00+00:00" }, { "id": "01a0872a-c4a0-706a-a1b5-a755bf755824", "title": "Dear ACM, you're doing AI wrong but you can still get it right", "url": "https://anil.recoil.org/notes/acm-ai-recs", "published_at": "2025-12-18T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933dfe509d1a", "title": "AoAH Day 18: TOML 1.1 codecs directly from the spec and paper", "url": "https://anil.recoil.org/notes/aoah-2025-18", "published_at": "2025-12-18T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933dff40005e", "title": "AoAH Day 17: OCaml JMAP to plaster my painful email papercuts", "url": "https://anil.recoil.org/notes/aoah-2025-17", "published_at": "2025-12-17T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933dffb63121", "title": "AoAH Day 16: Vibesplaining JSON Pointers using OCaml/Javascript", "url": "https://anil.recoil.org/notes/aoah-2025-16", "published_at": "2025-12-16T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e00439e1b", "title": "AoAH Day 15: Porting a complete HTML5 parser and browser test suite", "url": "https://anil.recoil.org/notes/aoah-2025-15", "published_at": "2025-12-15T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e004f5a79", "title": "AoAH Day 14: Debugging a Karakeep CLI against the live service", "url": "https://anil.recoil.org/notes/aoah-2025-14", "published_at": "2025-12-14T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e008abd49", "title": "AoAH Day 13: Heckling an OCaml HTTP client from 50 implementations in 10 languages", "url": "https://anil.recoil.org/notes/aoah-2025-13", "published_at": "2025-12-13T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e0172d5b6", "title": "AoAH Day 12: Eio Connection pooling and event tracing", "url": "https://anil.recoil.org/notes/aoah-2025-12", "published_at": "2025-12-12T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e01f0d01a", "title": "AoAH Day 11: HTTP Cookies and vibing RFCs for breakfast", "url": "https://anil.recoil.org/notes/aoah-2025-11", "published_at": "2025-12-10T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e020a207d", "title": "AoAH Day 10: Building a TUI for Sortal using Mosaic", "url": "https://anil.recoil.org/notes/aoah-2025-10", "published_at": "2025-12-10T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e0238cbfe", "title": "AoAH Day 9: Adding a Bonsai terminal UI to Sortal", "url": "https://anil.recoil.org/notes/aoah-2025-9", "published_at": "2025-12-09T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e0306a979", "title": "Publish, Review, Curate to upend scholarly publishing", "url": "https://anil.recoil.org/notes/coar-prc", "published_at": "2025-12-08T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e0313723d", "title": "AoAH Day 8: Building a contacts CLI manager with Sortal", "url": "https://anil.recoil.org/notes/aoah-2025-8", "published_at": "2025-12-08T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e03a8dcc4", "title": "AoAH Day 7: Converting between JSON and Yaml with yamlt", "url": "https://anil.recoil.org/notes/aoah-2025-7", "published_at": "2025-12-07T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e03bd6e28", "title": "AoAH Day 6: Getting a Yaml 1.2 implementation in pure OCaml", "url": "https://anil.recoil.org/notes/aoah-2025-6", "published_at": "2025-12-06T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e04a85dfc", "title": "AoAH Day 5: Bytesrw Eio adapters and automating opam metadata", "url": "https://anil.recoil.org/notes/aoah-2025-5", "published_at": "2025-12-05T00:00:00+00:00" }, { "id": "01a0872a-c4a1-705f-83fb-933e04b5144b", "title": "AoAH Day 4: Going recursive with Claudeio for Claude", "url": "https://anil.recoil.org/notes/aoah-2025-4", "published_at": "2025-12-04T00:00:00+00:00" } ] posts Claim your blog
Back to anil.recoil.org
Blog · corpus.blog/blogs/anil.recoil.org/posts

anil.recoil.org

anil.recoil.org

2026

2025