# Notes

Notes and blog posts.

- [Slashdot covers the Mars Polar Lander](https://anil.recoil.org/notes/mars-polar-lander) (1999-12-03)
  Mars Polar Lander's webmaster shares story of website survival despite spacecraft crash.
- [I'm now a Horde core team member](https://anil.recoil.org/notes/horde-developer) (2000-10-16)
  Author joins Horde core team, contributing to IMP and webmail development.
- [I'm now an OpenBSD developer](https://anil.recoil.org/notes/openbsd-developer) (2000-12-26)
  I'm now an official OpenBSD developer, contributing fixes and ports.
- [I am now a core PHP developer](https://anil.recoil.org/notes/commit-access-to-php) (2001-01-09)
  I'm now a core PHP developer with commit access to the central repository.
- [GPL release of OpenFX](https://anil.recoil.org/notes/openfx) (2001-02-10)
  OpenFX is now available under the GPL with advanced features like raytracing and NURBS support.
- [Added internationalisation to the Chora viewer](https://anil.recoil.org/notes/chora-internationalised) (2001-08-03)
  Chora viewer now supports internationalisation with multiple language translations available.
- [Chora now the production CVS viewer for PHP](https://anil.recoil.org/notes/chora-live-on-php) (2001-08-05)
  Chora is now the production CVS viewer for PHP, replacing viewcvs on cvs.php.net.
- [Added a caching subsystem to Horde](https://anil.recoil.org/notes/horde-cache) (2001-08-20)
  Horde PHP framework now includes a general caching subsystem for improved performance.
- [Streamlining PHP on OpenBSD](https://anil.recoil.org/notes/php-port-layout-openbsd) (2002-06-24)
  Improved PHP on OpenBSD with simplified pkg_add usage and modular extensions.
- [Started PhD at Cambridge](https://anil.recoil.org/notes/starting-phd) (2002-09-01)
  Started PhD in Systems Research at Cambridge University, focusing on Xen hypervisor.
- [Moving to anil.recoil.org](https://anil.recoil.org/notes/opening-anil-recoil-org) (2003-05-16)
  Redesigned homepage now at anil.recoil.org
- [My static C bounds checker extension merged into OpenBSD](https://anil.recoil.org/notes/gcc-bounds) (2003-06-27)
  OpenBSD merges static C bounds checker extension into its codebase.
- [Cellphone as a virtual mouse/keyboard](https://anil.recoil.org/notes/hem) (2004-05-27)
  Use your cellphone as a virtual mouse and keyboard with innovative software.
- [From the prawn of time](https://anil.recoil.org/notes/wired-spotcode) (2004-06-07)
  Talk at NotCon 2004 on SpotCodes and camera phone technology covered in Wired Magazine.
- [MIT Technology review covers SpotCodes](https://anil.recoil.org/notes/mit-spotcodes) (2004-09-01)
  MIT Technology Review covers SpotCodes technology by High Energy Magic.
- [Connecting Paper and Online Worlds by Cellphone](https://anil.recoil.org/notes/spotcodes-nytimes) (2004-10-07)
  Researchers use cellphones to connect physical and online worlds, replacing public displays with portable technology.
- [OpenBSD C2K5 thoughts](https://anil.recoil.org/notes/c2k5-thoughts) (2005-06-04)
  Reflections on OpenBSD C2K5 hackathon projects and progress.
- [Installing Ubuntu on XenServer](https://anil.recoil.org/notes/installing-ubuntu-on-xenserver) (2008-07-02)
  This guide provides step-by-step instructions for installing Ubuntu as a paravirtualized (PV) guest on Citrix XenServer 4.1, including configuring the grub boot loader, installing XenServer tools, and setting up VNC for graphical console access.
- [Peeking under the hood of High Availability](https://anil.recoil.org/notes/peeking-under-the-hood-of-high-availability) (2008-09-17)
  Learn how XenServer's High Availability feature works, including host failure detection and automatic VM restarts.
- [Opening a website](https://anil.recoil.org/notes/opening-a-website) (2010-03-29)
  Learn about opening a personal data tracking website with a customizable database system.
- [Pulling together a user interface](https://anil.recoil.org/notes/uiprototype) (2010-04-15)
  Building a user interface for personal containers on App Engine with extjs.
- [Yurts for Digital Nomads](https://anil.recoil.org/notes/yurts-for-digital-nomads) (2010-04-29)
  Digital nomads can secure their personal data with digital yurts, a system for diverse data handling and storage.
- [Camel Spotting in Paris](https://anil.recoil.org/notes/ocaml-users-group) (2011-04-15)
  Report from the 2011 OCaml Users Meeting in Paris, covering talks on js_of_ocaml, OCaml on PIC, and more.
- [DataCaml: distributed dataflow programming in OCaml](https://anil.recoil.org/notes/datacaml-with-ciel) (2011-06-11)
  DataCaml brings distributed dataflow programming to OCaml using the CIEL engine.
- [Dreaming of an ARM OCaml](https://anil.recoil.org/notes/dreamplug-debian-and-ocaml) (2012-02-25)
  Getting OCaml running on an ARM-based Dreamplug device with Debian and native code generation.
- [Announcing OCaml Labs](https://anil.recoil.org/notes/announcing-ocaml-labs) (2012-10-19)
  Introducing OCaml Labs, a new project at Cambridge Computer Lab to develop and improve the OCaml programming language.
- [Grepping the source of every OCaml package in OPAM](https://anil.recoil.org/notes/grepping-every-known-ocaml-package-source) (2013-04-08)
  Run grep on every OCaml package in OPAM using a simple script.
- [OPAM 1.1 beta available, with pretty colours](https://anil.recoil.org/notes/opam-1-1-beta) (2013-09-20)
  OPAM 1.1 beta is available with improved stability and new features.
- [Using Docker to bulk-build OPAM packages on Linux](https://anil.recoil.org/notes/docker-and-opam) (2013-11-15)
  Build OPAM packages in bulk on Linux using Docker containers.
- [Reviewing the first year of OCaml Labs in 2013](https://anil.recoil.org/notes/the-year-in-ocamllabs) (2013-12-29)
  Reviewing OCaml Labs' first year, including progress on OPAM, the compiler, and community efforts.
- [Unikernels, and the Rise of the Virtual Library Operating System](https://anil.recoil.org/notes/unikernels-in-cacm) (2014-01-13)
  Unikernels and virtual library operating systems are on the rise, changing the face of cloud computing.
- [ICFP 2014 - a call for sponsorship and how you can help](https://anil.recoil.org/notes/icfp-call-for-sponsorships) (2014-03-03)
  Support functional programming community growth by sponsoring ICFP 2014, starting at $500.
- [Easily OPAM switching to any OCaml feature request](https://anil.recoil.org/notes/ocaml-github-and-opam) (2014-03-25)
  Switch between OCaml compilers easily with OPAM and GitHub pull requests.
- [Codio: build Mirage unikernels from a browser](https://anil.recoil.org/notes/codio-now-has-opam-support) (2014-03-26)
  Build Mirage unikernels from a browser with Codio's OPAM support and interactive Ubuntu shell.
- [Talks from OCaml Labs during ICFP 2014](https://anil.recoil.org/notes/ocaml-labs-at-icfp-2014) (2014-08-31)
  OCaml Labs talks at ICFP 2014, covering language improvements & MirageOS
- [ICFP 2015 - a call for sponsorship and how you can help](https://anil.recoil.org/notes/icfp15-call-for-sponsorships) (2015-02-18)
  ICFP 2015 seeks sponsors to support students and growth of the functional programming community.
- [Reviewing the second year of OCaml Labs in 2014](https://anil.recoil.org/notes/ocamllabs-2014-review) (2015-04-02)
  Reviewing OCaml Labs' progress in 2014, covering tooling, compiler, community efforts, and research projects.
- [Unikernel Systems acquired by Docker](https://anil.recoil.org/notes/docker-buys-unikernel-systems) (2016-01-21)
  Docker acquires Unikernel Systems to bring unikernel tech to developers and IT pros.
- [Founded Tarides and looking to hire OCaml hackers](https://anil.recoil.org/notes/founded-tarides) (2018-03-02)
  Tarides, a Paris-based startup, seeks OCaml hackers to build secure network services with MirageOS and Irmin.
- [OpenBSD cloud hosting options](https://anil.recoil.org/notes/openbsd-hosting) (2019-08-29)
  Explore OpenBSD cloud hosting options for bare-metal and dedicated servers.
- [Decentralised tech on Recoil](https://anil.recoil.org/notes/decentralised-stack) (2021-09-19)
  Recoil's decentralized tech stack includes email, web, and chat services.
- [Forest preservation and restoration](https://anil.recoil.org/notes/forests) (2021-09-25)
  Forest preservation and restoration efforts and resources compiled for reference.
- [What is an Operating System?](https://anil.recoil.org/notes/signals-and-threads) (2021-11-03)
  Learn what an operating system is and its evolving role.
- [Launching the Cambridge Centre for Carbon Credits](https://anil.recoil.org/notes/4c-launch) (2021-11-04)
  Introducing the Cambridge Centre for Carbon Credits to combat climate change and biodiversity loss.
- [OCaml wins the ACM Programming Language Software award](https://anil.recoil.org/notes/acm-sigplan-award) (2023-06-19)
  OCaml wins 2023 ACM Programming Languages Software Award for its impact on research and tools.
- [Joined the Royal Society fellowships committee](https://anil.recoil.org/notes/royal-society-newton) (2023-12-02)
  I joined the Royal Society's Newton International Fellowships committee to help select international researchers for UK-based projects.
- [Selected in the AI@CAM challenge for conservation research](https://anil.recoil.org/notes/aicn-in-aicam) (2024-02-05)
  Won the AI@CAM challenge towards climate and nature conservation research using remote sensing and LLMs
- [Rolling out a new site design](https://anil.recoil.org/notes/bushel-step1) (2024-04-01)
  New site design launched after 20 year redesign featuring Bushel content manager preview.
- [Interview with AI@CAM about conservation](https://anil.recoil.org/notes/aicam-interview-ce) (2024-06-09)
  Discussing conservation with AI@CAM and using AI to transform biodiversity conservation efforts.
- [New set of ideas for incoming students](https://anil.recoil.org/notes/student-ideas) (2024-07-15)
  Explore new project ideas for CST Part II, MPhil, and PhD students starting in 2024-2025.
- [Nature Sustainability commentary on carbon and biodiversity credits](https://anil.recoil.org/notes/nature-crossroads) (2024-08-15)
  Experts discuss reforming carbon and biodiversity credits markets for effective forest conservation and climate benefit.
- [New teaching page with my Computer Science courses](https://anil.recoil.org/notes/new-teaching-page) (2024-09-03)
  Explore my new teaching page featuring Computer Science courses and materials.
- [Mitigating credit reversal risks in nature-based solutions](https://anil.recoil.org/notes/mitigating-nbs-risk-paper) (2024-09-08)
  Mitigating credit reversal risks in nature-based solutions with predictive release schedules.
- [On the SOCC 2024 PC](https://anil.recoil.org/notes/socc-pc) (2024-10-08)
  Serving on the ACM SOCC 2024 program committee revealed a shift towards machine learning research.
- [Fake papers abound in the literature](https://anil.recoil.org/notes/ai-contamination-of-papers) (2025-02-04)
  AI-generated papers are contaminating scientific literature at a rapid pace
- [Dear ACM, you're doing AI wrong but you can still get it right](https://anil.recoil.org/notes/acm-ai-recs) (2025-12-22)
  Critiquing ACM's paywalled AI paper summaries and proposing better alternatives like open feeds, easier downloads, provenance tracking, and personalised agentic interfaces.
- [A fully AI-generated paper just passed peer review; notes from our evidence synthesis workshop](https://anil.recoil.org/notes/ai-for-evidence-synthesis-workshop) (2025-03-12)
  "AI-generated paper passes peer review, sparking discussion on evidence synthesis and AI's role in policymaking."
- [Royal Society and DeepMind host AI for Science Forum](https://anil.recoil.org/notes/ai-for-science-2024) (2024-11-18)
  The Royal Society and DeepMind hosted an AI for Science Forum, exploring AI's role in revolutionizing scientific discovery and its potential to benefit society.
- [The AIETF arrives, and not a moment too soon](https://anil.recoil.org/notes/ai-ietf-aiprefs) (2025-02-28)
  IETF's new AI Preferences Working Group aims to standardize protocols for expressing preferences on AI content collection and processing.
- [Is AI poisoning the scientific literature? Our comment in Nature](https://anil.recoil.org/notes/ai-poisoning) (2025-07-08)
  Nature comment on AI-generated paper threats to evidence synthesis proposing federated living evidence databases with human-in-loop review.
- [Technology needs to unite conservation, not divide it](https://anil.recoil.org/notes/ai-should-unite-conservation) (2025-04-25)
  Response to critique of AI in conservation emphasizing participatory design, open source tools and equitable capacity building in Global South.
- [MirageOS v1.2 released and the runup to 2.0](https://anil.recoil.org/notes/announcing-mirageos-1-2) (2014-07-08)
  MirageOS v1.2 released, paving way for MirageOS 2.0 with new features.
- [MirageOS v2.0: a recap of new features](https://anil.recoil.org/notes/announcing-mirageos-2) (2014-07-22)
  MirageOS v2.0 adds ARM support, Irmin storage and OCaml TLS stack.
- [AoAH Day 1: Building a Base32 Crockford library in OCaml](https://anil.recoil.org/notes/aoah-2025-1) (2025-12-01)
  Building a Base32 Crockford encoding library in OCaml using Claude Code, establishing the development workflow with sandboxed Docker containers and local development environments.
- [AoAH Day 10: Building a TUI for Sortal using Mosaic](https://anil.recoil.org/notes/aoah-2025-10) (2025-12-10)
  Building a simpler single-process terminal UI for Sortal using Mosaic's effects-based direct-style API, with Eio integration and discovering multimodal image debugging for terminal layouts.
- [AoAH Day 11: HTTP Cookies and vibing RFCs for breakfast](https://anil.recoil.org/notes/aoah-2025-11) (2025-12-10)
  Synthesizing three RFC-compliant libraries (punycode, public-suffix, and cookeio) directly from Internet RFC specifications, establishing a workflow for automating standards implementation with proper cross-referencing to spec sections.
- [AoAH Day 12: Eio Connection pooling and event tracing](https://anil.recoil.org/notes/aoah-2025-12) (2025-12-12)
  Building a TCP/TLS connection pooling library for Eio with DNS-based load balancing, stacked error handling, and self-contained HTML visualisations for stress test results.
- [AoAH Day 13: Heckling an OCaml HTTP client from 50 implementations in 10 languages](https://anil.recoil.org/notes/aoah-2025-13) (2025-12-13)
  Agentically synthesising a batteries-included OCaml HTTP client by gathering recommendations from fifty open-source implementations across JavaScript, Python, Java, Rust, Swift, Haskell, Go, C++, PHP and shell.
- [AoAH Day 14: Debugging a Karakeep CLI against the live service](https://anil.recoil.org/notes/aoah-2025-14) (2025-12-14)
  Vibe coding an OCaml library for the Karakeep bookmarking service by giving an agent a live API key and letting it debug jsont codecs against the real service.
- [AoAH Day 15: Porting a complete HTML5 parser and browser test suite](https://anil.recoil.org/notes/aoah-2025-15) (2025-12-15)
  Vibespiling JustHTML from Python to pure OCaml, achieving 100% pass rate on the browser html5lib test suite using agentic workflows.
- [AoAH Day 16: Vibesplaining JSON Pointers using OCaml/Javascript](https://anil.recoil.org/notes/aoah-2025-16) (2025-12-16)
  Building interactive OCaml tutorials that compile to JavaScript, using agents to generate executable documentation that teaches protocols like JSON Pointer while you code review.
- [AoAH Day 17: OCaml JMAP to plaster my painful email papercuts](https://anil.recoil.org/notes/aoah-2025-17) (2025-12-17)
  Building an OCaml JMAP client that runs in browsers and CLI, then using it to build personalised email workflows for taming notification overload.
- [AoAH Day 18: TOML 1.1 codecs directly from the spec and paper](https://anil.recoil.org/notes/aoah-2025-18) (2025-12-18)
  Building tomlt, a pure OCaml TOML 1.1 parser with bidirectional codecs following the jsont design patterns
- [AoAH Day 19: Zulip bot framework to bring Vicuna the friendly camel back](https://anil.recoil.org/notes/aoah-2025-19) (2025-12-19)
  Building an OCaml Zulip bot framework with functional handlers, and pivoting from TOML to INI codecs for Python configparser compatibility
- [AoAH Day 2: Building an OCaml JSONFeed library](https://anil.recoil.org/notes/aoah-2025-2) (2025-12-02)
  Implementing a JSONFeed specification library using jsont codecs, discovering how Claude can automate the construction of complex combinators from prose specifications with excellent error messages.
- [AoAH Day 20: Human language detection in native code, JS and wasm](https://anil.recoil.org/notes/aoah-2025-20) (2025-12-20)
  Porting the Nu HTML Validator's language detection to OCaml, then optimizing from 115MB to 28MB and fixing WASM array limits for browser deployment.
- [AoAH Day 21: Complete dynamic HTML5 validation in OCaml and the browser](https://anil.recoil.org/notes/aoah-2025-21) (2025-12-21)
  Porting the W3C's Nu HTML Validator from Java to OCaml and running in the browser dynamically
- [AoAH Day 22: Assembling monorepos for agentic OCaml development](https://anil.recoil.org/notes/aoah-2025-22) (2025-12-22)
  Materialising opam metadata into git submodules and monorepos, enabling cross-cutting fixes and unified odoc3 documentation across dozens of OCaml libraries.
- [AoAH Day 23: Unpac unifies git branching with package management](https://anil.recoil.org/notes/aoah-2025-23) (2025-12-23)
  Introducing unpac, a tool that unifies git and package management into a single workflow where all code dependencies live in one repository as trackable branches.
- [AoAH Day 24: Tuatara, an evolving Atom aggregator that mutates](https://anil.recoil.org/notes/aoah-2025-24) (2025-12-24)
  Tuatara is a feed aggregator that integrates Claude to evolve and patch its own code when encountering parsing errors, embodying the concept of self-healing software.
- [AoAH Day 25: Claude OCaml Marketplace for all your festive coding needs](https://anil.recoil.org/notes/aoah-2025-25) (2025-12-25)
  Wrapping up 25 days of agentic coding with a Claude Code OCaml plugin marketplace to share the skills and tools developed throughout the series.
- [AoAH Day 3: XDG filesystem paths using Eio capabilities](https://anil.recoil.org/notes/aoah-2025-3) (2025-12-03)
  Building an XDG Base Directory Specification library with Eio capabilities and Cmdliner integration, providing sandboxed filesystem access patterns with full environment variable and CLI override support.
- [AoAH Day 4: Going recursive with Claudeio for Claude](https://anil.recoil.org/notes/aoah-2025-4) (2025-12-04)
  Creating OCaml bindings for the Claude API using Eio and jsont codecs by reverse-engineering the JSON-RPC protocol from Python and Go SDKs, enabling Claude to write more Claude-powered OCaml code.
- [AoAH Day 5: Bytesrw Eio adapters and automating opam metadata](https://anil.recoil.org/notes/aoah-2025-5) (2025-12-05)
  Building Bytesrw-Eio adapters for composable byte stream I/O while discovering Claude Skills as a powerful way to automate opam package metadata management through reusable workflow templates.
- [AoAH Day 6: Getting a Yaml 1.2 implementation in pure OCaml](https://anil.recoil.org/notes/aoah-2025-6) (2025-12-06)
  Implementing a pure OCaml Yaml 1.2 parser using bytesrw by synthesizing from the specification and existing C library behavior, passing thousands of test suite cases while being 20% faster than the C-based implementation.
- [AoAH Day 7: Converting between JSON and Yaml with yamlt](https://anil.recoil.org/notes/aoah-2025-7) (2025-12-07)
  Building yamlt to enable jsont codec definitions to work with both JSON and Yaml, providing data manipulation with location tracking and good error messages for both formats.
- [AoAH Day 8: Building a contacts CLI manager with Sortal](https://anil.recoil.org/notes/aoah-2025-8) (2025-12-08)
  Creating Sortal, a CLI contacts management application using Yaml storage, XDG directories, Git-based synchronization, and integrating all previously built libraries into a cohesive CLI tool.
- [AoAH Day 9: Adding a Bonsai terminal UI to Sortal](https://anil.recoil.org/notes/aoah-2025-9) (2025-12-09)
  Experimenting with OxCaml's bonsai_term framework for Sortal's terminal UI, navigating Eio-Async interoperability challenges through JSON-RPC while discovering image-based debugging techniques for terminal applications.
- [2025 Advent of Agentic Humps: Building a useful O(x)Caml library every day](https://anil.recoil.org/notes/aoah-2025) (2025-12-26)
  An exploration of agentic programming through building useful OCaml libraries daily using Claude Code while establishing groundrules for responsible development.
- [Under the hood with Apple's new Containerization framework](https://anil.recoil.org/notes/apple-containerisation) (2025-06-11)
  Technical deep dive into Apple's new macOS Tahoe containerization framework using Kata Containers and Swift-based implementation.
- [Using AT Proto for more than just Bluesky posts](https://anil.recoil.org/notes/atproto-for-fun-and-blogging) (2025-02-11)
  Explore alternative uses for AT Proto beyond Bluesky posts, enabling self-sovereign digital infrastructure and innovative apps.
- [BIOMASS launches to measure forest carbon flux from space](https://anil.recoil.org/notes/biomass-launches) (2025-06-28)
  ESA's BIOMASS satellite successfully launches, featuring first global P-band SAR instrument capable of penetrating forest canopy to measure tree health and carbon flux.
- [ESA's first BioSpace conference seems a huge success](https://anil.recoil.org/notes/biospace-25) (2025-04-16)
  Report on ESA's first Biodiversity Insights from Space conference featuring presentations on urban tree management and remote sensing biodiversity metrics.
- [Breaking up is easy (with OPAM)](https://anil.recoil.org/notes/breaking-up-mirageos) (2012-10-17)
  Build isolated services with ease using MirageOS and OPAM on Xen hypervisors.
- [Arise Bushel, my sixth generation oxidised website](https://anil.recoil.org/notes/bushel-lives) (2025-01-29)
  Learn about my sixth generation oxidised website built with a bleeding-edge OCaml variant.
- [A Decade of Docker Containers on the CACM cover!](https://anil.recoil.org/notes/cacm-docker-cover) (2026-02-24)
  Our CACM cover article reflects on a decade of Docker, from the early days of hacking Docker for Mac on a French farm to today's AI-driven sandboxing, covering the technical origins, cross-platform challenges, and the vibrant open-source community that made it all possible.
- [Learnings from the Cambridge Environmental Sustainability Committee](https://anil.recoil.org/notes/cambridge-essc-progress) (2025-05-13)
  Insights from Cambridge University's Environmental Sustainability Strategy Committee on carbon reduction, biodiversity, and operational sustainability progress.
- [The Cambridge "Green Blue" competition to reduce emissions](https://anil.recoil.org/notes/cambridge-green-blue) (2025-05-06)
  Thinking about a Cambridge "Green Blue" competition to reduce emissions among Colleges, promoting cooperation through a semi-competitive league
- [Disentangling carbon credits and offsets with contributions](https://anil.recoil.org/notes/carbon-credits-vs-offsets) (2025-02-12)
  Clarifying carbon credits, offsets, and contributions to understand effective climate action strategies
- [Oh my Claude, we need agentic copilot sandboxing right now](https://anil.recoil.org/notes/claude-copilot-sandbox) (2025-03-02)
  Claude Code auto-generates OCaml bindings, but lacks robust sandboxing.
- [Publish, Review, Curate to upend scholarly publishing](https://anil.recoil.org/notes/coar-prc) (2025-12-08)
  Report from a COAR conference on transforming scholarly publishing through the Publish, Review, Curate model, discussing diamond open access, early career challenges, and expanding open infrastructure to datasets and code.
- [COMPASS 2024 report on the CoRE stack RIC meeting](https://anil.recoil.org/notes/compass2024-ric-tripreport) (2024-07-08)
  Report from COMPASS 2024 on the CoRE stack RIC meeting on climate adaptation for rural communities using digital public infrastructure and commoning technologies
- [Position paper on scientifically credible carbon credits](https://anil.recoil.org/notes/credible-credit-principles) (2025-01-30)
  Experts outline steps to restore scientific credibility in the voluntary carbon market.
- [Cresting the OCaml AI humps](https://anil.recoil.org/notes/cresting-the-ocaml-ai-hump) (2025-07-18)
  Community efforts to improve agentic coding experience for OCaml including MCP libraries, opam embeddings, and tooling improvements.
- [An outing to CUFP 2011 for Mirage](https://anil.recoil.org/notes/cufp-2011-mirage) (2011-09-29)
  Attending CUFP 2011 with MirageOS tutorial at ICFP.
- [Liveblogging CUFP 2013](https://anil.recoil.org/notes/cufp-2013-liveblog) (2013-09-22)
  Live notes from Commercial Uses of Functional Programming 2013 workshop
- [How to publish custom Homebrew taps for OCaml](https://anil.recoil.org/notes/custom-homebrew-taps) (2025-01-31)
  Publish custom OCaml Homebrew taps with a simple GitHub workflow.
- [Deepdive into Deepseek advances](https://anil.recoil.org/notes/deepseek-r1-advances) (2025-02-01)
  Explore DeepSeek's advances in AI technology, including Multi-headed Latent Attention and Mixture of Experts.
- [Delimited continuations vs Lwt for threads](https://anil.recoil.org/notes/delimited-cont-vs-lwt) (2011-06-18)
  Delimited continuations and Lwt compared for threading purposes.
- [Are you still using OCaml 4.08 or earlier? If so, we need to know](https://anil.recoil.org/notes/deprecating-ocaml-408) (2025-03-05)
  OCaml users: share your needs regarding older versions to help determine support for OCaml 4.08 and earlier.
- [Socially self-hosting source code with Tangled on Bluesky](https://anil.recoil.org/notes/disentangling-git-with-bluesky) (2025-03-08)
  Self-host source code with Tangled on Bluesky for decentralized Git repositories.
- [Do not rule out nature from climate action; an open letter](https://anil.recoil.org/notes/do-not-rule-out-nature) (2025-09-10)
  Open letter to UN Article 6.4 supervisory body advocating for nature-based climate solutions alongside durable carbon sequestration technologies.
- [Presenting our Ecology of the Internet ideas at Aarhus 2025](https://anil.recoil.org/notes/ecology-at-aarhus) (2025-08-22)
  Presentation at Aarhus 2025 on Internet ecology, proposing AI-driven software diversity to fight protocol ossification and create more resilient networks.
- [EEG internships for the summer of 2025](https://anil.recoil.org/notes/eeg-interns-2025) (2025-06-28)
  Coordination note for summer 2025 undergraduate and graduate internships covering projects from evidence databases to remote sensing and embedded systems.
- [The AI French Connection to the Practice of Science](https://anil.recoil.org/notes/entente-cordiale) (2025-12-01)
  Reflections on the Franco-British AI collaboration workshops exploring how AI is transforming scientific practice, plus follow-up funding for the Conservation Copilot project.
- [Entering the Matrix with Hookshot](https://anil.recoil.org/notes/enter-the-matrix-hookshot) (2025-02-08)
  Hookshot integrates Matrix with external services like GitHub and Atom feeds for enhanced group communications.
- [Exploring the biodiversity impacts of what we choose to eat](https://anil.recoil.org/notes/exploring-food-impacts) (2025-09-09)
  Nature Food paper revealing food choice biodiversity impacts vary by three orders of magnitude with interactive global explorer tool.
- [1st TESSERA/CoRE hackathon at the Indian AI Summit](https://anil.recoil.org/notes/first-tessera-hackathon) (2026-02-19)
  First TESSERA hackathon held at the Indian AI Impact Summit in Delhi, exploring integration with IIT-Delhi's CoRE Stack for geospatial analysis and testing TESSERA labeling workflows.
- [Foundations of Computer Science](https://anil.recoil.org/notes/focs) (2025-01-03)
  Resources for teaching Foundations of Computer Science with OCaml and Jupyter notebooks.
- [Food and the long term risk to life](https://anil.recoil.org/notes/food-and-risk-to-life) (2025-11-06)
  A Cambridge article explores our research on how food consumption affects the extinction risk of 30,875 land-dwelling animal species, with an interactive tool to examine biodiversity impacts across different countries and diets.
- [A trio of papers I read on biodiversity and forests this week](https://anil.recoil.org/notes/forest-apps-and-benchmarks) (2025-02-20)
  Exploring biodiversity and forests through 3 papers on AI, 3D reconstruction, and a tree-measuring mobile app.
- [Satellites are getting too good for forest carbon?](https://anil.recoil.org/notes/forests-spatial-resolution) (2025-02-03)
  Satellites are getting too accurate for forest carbon estimation due to high resolution.
- [Foundational AI for Ecosystem Resilience workshop](https://anil.recoil.org/notes/foundational-ecosystem-workshop) (2025-12-03)
  Workshop report combining TESSERA geospatial foundation models with Concordia agent-based modeling to simulate ecosystem resilience, covering causal modeling for ecology and AI applications in nature conservation.
- [Programming FPGAs using OCaml](https://anil.recoil.org/notes/fpgas-hardcaml) (2025-02-07)
  Learn FPGA programming with OCaml using HardCaml.
- [The FP Launchpad takes off at IIT Madras](https://anil.recoil.org/notes/fpl-launch) (2026-04-13)
  A day at the launch of the FP Launchpad at IIT Madras, covering talks on hardware design, trusted execution on Shakti, verifiable Indian tax law, precise JIT analysis, AI-assisted Lean metatheory, constraint-based diagramming, and my own TESSERA talk.
- [GeoTessera 0.7 out with efficient sampling and Zarr support](https://anil.recoil.org/notes/geotessera-python-0-7) (2025-11-17)
  GeoTessera 0.7 switches to GeoParquet manifests for faster initialisation, adds Zarr tensor storage support, and provides new sampling APIs for building downstream tasks like solar panel detection.
- [GeoTessera Python library released for geospatial embeddings](https://anil.recoil.org/notes/geotessera-python) (2025-08-31)
  Release of GeoTessera Python library and CLI for accessing TESSERA geospatial foundation model embeddings with interactive visualization tools.
- [Viewing web logs the old fashioned way with Goaccess](https://anil.recoil.org/notes/goaccess-for-logs) (2025-04-23)
  Guide to using Goaccess privacy-preserving server-side log analyzer with Caddy JSON logs for web analytics.
- [Notes on the first Human Data Interaction workshop](https://anil.recoil.org/notes/hdi-workshop-2013-liveblog) (2013-10-02)
  Notes on the first Human Data Interaction workshop discussing social networks and decentralization.
- [Happy new year and my fave readings of the year](https://anil.recoil.org/notes/hny2026) (2026-01-02)
  My favourite books, podcasts and recommendations from 2025, covering moral ambition, maps, wolves, AI dystopias, geopolitics, Chennai history, and the best tech podcasts.
- [Being on the HotNets 2024 program committee](https://anil.recoil.org/notes/hotnets-pc-2024) (2024-09-22)
  Serving on HotNets 2024 program committee was a great experience with a novel structure.
- [Humans are the ones that will save nature, helped by AI](https://anil.recoil.org/notes/humans-save-nature-not-ai) (2025-05-07)
  Discussion of responsible AI adoption in conservation, emphasizing human agency and equity over technological solutions.
- [Jane Street and Docker on moving to OCaml 5 at ICFP/SPLASH 2025](https://anil.recoil.org/notes/icfp25-ocaml5-js-docker) (2025-10-07)
  Jane Street's production deployment of OCaml 5 and Docker's migration to direct-style programming with Eio presented at ICFP.
- [Holding an OxCaml tutorial at ICFP/SPLASH 2025](https://anil.recoil.org/notes/icfp25-oxcaml) (2025-10-06)
  Tutorial at ICFP 2025 on OxCaml extensions for performance engineering with modes and locals.
- [It's time to go post-POSIX at ICFP/SPLASH 2025](https://anil.recoil.org/notes/icfp25-post-posix) (2025-10-08)
  VMIL keynote arguing for post-POSIX shared memory interfaces like io_uring in language runtimes for high-performance concurrent computing.
- [Programming for the Planet at ICFP/SPLASH 2025](https://anil.recoil.org/notes/icfp25-propl) (2025-10-05)
  Report on second Programming for the Planet workshop featuring papers on climate modeling, geospatial computation and planetary-scale collaborative systems.
- [What I learnt at ICFP/SPLASH 2025 about OCaml, Hazel and FP](https://anil.recoil.org/notes/icfp25-what-i-learnt) (2025-10-09)
  Highlights from ICFP/SPLASH 2025 including Hazel live programming, OCaml AI tooling, formally verified GC, and cross-community discussions between Haskell and OCaml.
- [A Roundup of ICFP/SPLASH 2025 happenings](https://anil.recoil.org/notes/icfp25) (2025-10-10)
  Five-part series overview covering workshops, tutorials, talks and keynotes from ICFP/SPLASH 2025 in Singapore.
- [About](https://anil.recoil.org/notes/index) (2025-02-15)
  Professor Anil Madhavapeddy's research combines computer science and conservation at the University of Cambridge
- [At the AI Impact Summit in Delhi: people, planet, progress](https://anil.recoil.org/notes/india-ai-summit) (2026-02-21)
  Trip report from the Indian AI Impact Summit in New Delhi, covering the massive expo, a conversation with Yann LeCun, a hackathon/talk at IIT-Delhi, networking at the British High Commission, and reflections on the summit declaration's shift from safety to progress and equitable access.
- [The Internet needs an antibotty immune system, stat](https://anil.recoil.org/notes/internet-immune-system) (2026-04-08)
  Anthropic's Mythos makes autonomous vulnerability chaining across devices a sudden reality, so I've been thinking about how digital 'antibotty' inoculation networks may be needed far sooner than I expected.
- [Jensen Huang receives the Hawking Fellowship at Cambridge](https://anil.recoil.org/notes/jensen-huang-hawking) (2025-11-04)
  Reflections on meeting Jensen Huang as he received the 2025 Hawking Fellowship, discussing his views on education, assessment, risk-taking culture at Nvidia, and the future of AI in scientific discovery and biological research.
- [We become Junior Rangers at Shenandoah](https://anil.recoil.org/notes/junior-rangers) (2025-05-27)
  Earning Junior Ranger badges at Shenandoah National Park and recording Conservation Concepts video series episode.
- [Using Komodo to manage Docker compose on a small cluster](https://anil.recoil.org/notes/komodo-docker-compose) (2025-05-05)
  Guide to deploying Komodo container management tool with Wireguard mesh networking for coordinating Docker services across multiple hosts.
- [Using Kyutai's low latency audio models on macOS in one command](https://anil.recoil.org/notes/kyutai-streaming-voice-mlx) (2025-07-16)
  Quick setup guide for running Kyutai's high-quality speech-to-text model locally on Mac using their MLX implementation.
- [LIFE becomes an Official Statistic of the UK government](https://anil.recoil.org/notes/life-official-statistic) (2025-03-21)
  LIFE biodiversity metric becomes UK government Official Statistic to track consumption's environmental impact.
- [Five ways to use the LIFE metric for conservation decision-making](https://anil.recoil.org/notes/life-uses-paper) (2026-01-12)
  Our new paper in Biological Conservation demonstrates how the LIFE extinction risk metric can be applied across five diverse case studies, from real-time tropical deforestation monitoring to evaluating conservation project effectiveness.
- [Notes from PL and OS 2013 workshop](https://anil.recoil.org/notes/liveblog-plos-2013) (2013-11-03)
  Notes from the 2013 Programming Languages and Operating Systems workshop at SOSP.
- [Talks from LOCO24 are now available online](https://anil.recoil.org/notes/loco24-talks-online) (2025-04-17)
  LOCO24 conference talks now available on self-hosted video platforms with peer-to-peer redundancy.
- [Self-hosting MirageOS website](https://anil.recoil.org/notes/mirage-self-hosting) (2010-10-11)
  Running the MirageOS website on its own self-hosted infrastructure using the TCP/IP stack.
- [MirageOS Summer 2016 hack retreat](https://anil.recoil.org/notes/mirageos-hack-retreat-2016) (2016-06-29)
  MirageOS holds summer 2016 hack retreat to advance its unikernel technology.
- [Cambridge Zero highlights University efforts at Climate Week NYC](https://anil.recoil.org/notes/mission-possible) (2023-10-18)
  Cambridge University highlights climate efforts at NYC Climate Week.
- [OCaml Multicore Monthly: preprint paper available](https://anil.recoil.org/notes/multicore-monthly-apr20) (2020-04-27)
  Preprint of OCaml 5 multicore runtime paper available now
- [OCaml Multicore Monthly: code review complete with Inria](https://anil.recoil.org/notes/multicore-monthly-dec21) (2021-12-21)
  OCaml multicore support code review completed with Inria developers.
- [OCaml Multicore Monthly: starting upstream to OCaml](https://anil.recoil.org/notes/multicore-monthly-jan20) (2020-01-29)
  Upstreaming multicore OCaml to mainline OCaml has begun, with opportunities for community contribution through testing and feedback.
- [OCaml Multicore Monthly: post merge activites](https://anil.recoil.org/notes/multicore-monthly-jan22) (2022-02-09)
  OCaml 5.0 merge complete, focusing on release preparation.
- [OCaml Multicore Monthly: heading towards OCaml 5.0](https://anil.recoil.org/notes/multicore-monthly-mar22) (2022-04-19)
  OCaml 5.0 approaches with BSD support and ARM64 multicore.
- [OCaml Multicore Monthly: systhreads compatibility merged](https://anil.recoil.org/notes/multicore-monthly-sep20) (2020-08-20)
  OCaml Multicore now supports systhreads compatibility for seamless integration.
- [OCaml Multicore Monthly: effect handling confirmed for 5.0](https://anil.recoil.org/notes/multicore-monthly-sep21) (2021-10-01)
  OCaml 5.0 to include effect handling and multicore support.
- [Connecting the dots for biodiversity action from the NAS/Royal Society Forum](https://anil.recoil.org/notes/nas-rs-biodiversity-papers) (2026-03-07)
  Summary of the Nine Recommendations and Biodiversity Monitoring Standards Framework papers from the NAS/Royal Society US-UK Forum in summer 2025, and how they connect to my work on collective knowledge systems, TESSERA, and evidence synthesis.
- [What I learnt at the National Academy of Sciences US-UK Forum on Biodiversity](https://anil.recoil.org/notes/nas-rs-biodiversity) (2025-06-06)
  Report from NAS/Royal Society forum on standardized biodiversity measurement technologies covering foundation models, eDNA and evidence synthesis.
- [Visiting National Geographic HQ and the Urban Exploration Project](https://anil.recoil.org/notes/natgeo-urban-wildlife) (2025-06-07)
  Visit to National Geographic HQ for workshop on global urban wildlife tracking initiative and human-wildlife coexistence research.
- [OCaml 2013 workshop liveblog](https://anil.recoil.org/notes/ocaml-2013-liveblog) (2013-09-24)
  Live notes from the OCaml 2013 workshop covering key events and discussions.
- [Devcontainer for using O(x)Caml and Claude in your projects](https://anil.recoil.org/notes/ocaml-claude-dev) (2026-01-08)
  A prebuilt Docker devcontainer for sandboxed OCaml and OxCaml development with Claude Code, including multiarch builds and network isolation.
- [New opam repository layout for large libraries](https://anil.recoil.org/notes/ocaml-opam-new-layout) (2018-11-19)
  Introducing a new opam repository layout for managing large libraries and packages.
- [Voluntary AI disclosure proposal for OCaml: update 1](https://anil.recoil.org/notes/opam-ai-disclosure-update) (2026-05-14)
  An update on the voluntary AI disclosure proposal, digesting the security, quality and legal feedback, and some concrete next steps around maintenance intent, multi-repository tooling, and reputation.
- [A Proposal for Voluntary AI Disclosure in OCaml Code](https://anil.recoil.org/notes/opam-ai-disclosure) (2026-04-03)
  Proposing a voluntary, machine-readable AI content disclosure scheme for OCaml spanning opam packages, dune, and per-module attributes, aligned with the W3C AI Content Disclosure vocabulary.
- [Opening discuss.ocaml.org for the community](https://anil.recoil.org/notes/opening-discuss-ocaml) (2017-05-13)
  Introducing discuss.ocaml.org, a new community forum for OCaml discussion and feedback.
- [Tracking locations with OwnTracks, Life Cycle and Home Assistant](https://anil.recoil.org/notes/owntracks-and-lifecycle) (2025-08-14)
  Setting up self-hosted location tracking using OwnTracks and reverse engineering Life Cycle app data with Claude Code for field work in Botswana.
- [My (very) fast zero-allocation webserver using OxCaml](https://anil.recoil.org/notes/oxcaml-httpz) (2026-02-01)
  Building httpz, a high-performance HTTP/1.1 parser with zero heap allocation using OxCaml's unboxed types, local allocations, and mutable local variables.
- [Building OxCaml packages for Debian, Fedora, Homebrew and Arch](https://anil.recoil.org/notes/oxcaml-packages) (2026-05-17)
  Native OxCaml system packages for Debian/Ubuntu, Fedora, Arch and Homebrew — plus reviving a 2013 GPG key that modern tooling rejects for SHA-1, and using agentic coding to collapse the opam build into one tarball.
- [On the path to the UK/India AI Summit with OpenUK and the ATI](https://anil.recoil.org/notes/path-to-uk-india-ai-summit) (2025-11-11)
  Reflections on UK-India AI collaboration from meetings at the Alan Turing Institute and OpenUK, discussing ethical AI deployment, open source infrastructure, and the challenges of building community in the age of AI-assisted coding.
- [Four Ps for Building Massive Collective Knowledge Systems](https://anil.recoil.org/notes/principles-for-collective-knowledge) (2025-11-23)
  Design principles for collective knowledge systems—permanence, provenance, permission, and placement—that enable robust networks for evidence-based decision making.
- [2nd Programming for the Planet workshop CFP out](https://anil.recoil.org/notes/propl-at-splash) (2025-04-03)
  Call for papers for PROPL 2025 workshop on programming methods for climate and biodiversity research at ICFP/SPLASH Singapore.
- [OCaml.org: recapping 2022 and queries on the Fediverse](https://anil.recoil.org/notes/recapping-ocaml-22) (2023-01-02)
  Recapping OCaml's 2022 progress and exploring Fediverse integration.
- [Discussing effective conservation with all the UK Chief Scientists](https://anil.recoil.org/notes/red-pill-conservation) (2026-02-03)
  Hosting the UK chief scientists for nature conservation at Pembroke to discuss TESSERA and AI for biodiversity, followed by the Conservation Evidence conference where I talked about choosing the open red pill over black-box AI for conservation decision-making.
- [Helping tropical forest protection keep up with a fast-changing world](https://anil.recoil.org/notes/redd-overcrediting) (2026-04-30)
  We analysed 44 REDD+ projects and find that the voluntary market did over-credit, but also that most projects slowed deforestation on the ground. Forest carbon credits are under priced relative to permanent removals, and fixing the base price would remove most of the financial pressure that drives over-crediting in the first place.
- [Roadmap for OCaml's online presence](https://anil.recoil.org/notes/roadmap-ocamlorg-v3) (2021-08-27)
  Overhauling OCaml's online presence with a modern new website.
- [Royal Society meeting on ecological/commercial risks](https://anil.recoil.org/notes/rs-ecorisk-day1) (2024-10-04)
  The discussion centered around the relationship between ecological and commercial risk, highlighting the need for a more comprehensive understanding of natural capital and its role in the economy. The equation presented by Sir Partha Dasgupta summarizes the two days of discussion, emphasizing the importance of balancing human demand with nature's regeneration rates. The talks touched on various topics, including greenwashing risks, standardization of biodiversity metrics, and the need for verification of nature-positive claims. The conversation also stressed the importance of shifting accounting away from GDP and towards calculations of stock and inequalities, incorporating natural capital into the notion of wealth. Overall, the event aimed to raise awareness about the interconnectedness of ecological and commercial risk and the need for a more sustainable approach to economic development.
- [AI, science and the UK–EU relationship at the Royal Society](https://anil.recoil.org/notes/rs-eu-ai-science) (2026-04-21)
  Notes from a Royal Society policy meeting with the European Commission on responsible AI, interoperable data and UK–EU alignment in AI for science; covering AI-poisoned literature, federated TESSERA-scale infrastructure, disclosure standards and the practical value of sustained UK–EU dialogue.
- [Royal Society's Future of Scientific Publishing meeting](https://anil.recoil.org/notes/rs-future-of-publishing) (2025-07-14)
  Live notes from Royal Society conference on scientific publishing challenges including peer review crisis, AI poisoning threats and open access economics.
- [Shedding light on XenApp on XenServer performance tuning](https://anil.recoil.org/notes/shedding-some-light-on-xenapp-on-xenserver-performance-tuning) (2008-08-04)
  Optimize XenApp performance on XenServer with expert tuning tips.
- [Functional programming gone wild in the SRG](https://anil.recoil.org/notes/srg-fp) (2011-04-18)
  Exploring functional programming projects in the SRG, including OCaml and Haskell.
- [Teaching 1A Security and Software Engineering](https://anil.recoil.org/notes/swseng) (2024-04-04)
  Lecturers step in to teach Software and Security Engineering course after Ross Anderson's passing.
- [Semi distributed filesystems with ZFS and Sanoid](https://anil.recoil.org/notes/syncoid-sanoid-zfs) (2025-04-05)
  Exploring ZFS and Sanoid for distributed filesystem management with automated snapshots and replication to replace centralized NFS storage.
- [mlgpx is the first Tangled-hosted package available on opam](https://anil.recoil.org/notes/tangled-and-ci) (2025-08-17)
  The Tangled git forge has recently gained support for CI, stacked pull requests and also the Dune build system can generate Tangled metadata easily now for OCaml packages hosted there.
- [Teaching at Cambridge](https://anil.recoil.org/notes/teaching) (2025-01-03)
  Teaching computer science courses at Cambridge University since 2012.
- [TESSERA now supports the Zarr geo-embeddings convention proposal](https://anil.recoil.org/notes/tessera-embeddings-convention) (2026-03-27)
  Community feedback reshaped our Zarr store layout — years became a dimension, shards got bigger, and we retired the TESSERA-specific convention in favour of a shared geo-embeddings standard that also covers other models.
- [Streaming millions of TESSERA tiles over HTTP with Zarr v3](https://anil.recoil.org/notes/tessera-zarr-v3-layout) (2026-03-14)
  How we restructured TESSERA's geospatial embeddings from millions of individual numpy files into sharded Zarr v3 stores for efficient HTTP streaming, enabling everything from single-pixel mobile lookups to regional-scale analysis with just a couple of range requests.
- [Our EEG group discussion on 'useful' AI tools](https://anil.recoil.org/notes/the-state-of-ai-tools) (2025-03-07)
  EEG group discusses useful AI tools and emerging techniques in productivity and research.
- [Thoughts on the National Data Library and private research data](https://anil.recoil.org/notes/uk-national-data-lib) (2025-02-17)
  Exploring the National Data Library and its potential to improve access to private research data while balancing security and privacy concerns.
- [Building species models of the planet](https://anil.recoil.org/notes/ukri-grant-terra) (2024-09-02)
  Researchers receive £1.2m grant to build species models for planetary intelligence.
- [Unikernels wins the ASPLOS most influential paper award](https://anil.recoil.org/notes/unikernels-test-of-time) (2025-04-12)
  2013 MirageOS unikernels paper wins ASPLOS influential paper award with reflections on the journey from rejection to recognition.
- [Improving Docker with Unikernels](https://anil.recoil.org/notes/vpnkit-hyperkit) (2016-05-18)
  Introducing HyperKit, VPNKit, and DataKit to enhance Docker performance.
- [Webassembly on exotic architectures (a 2025 roundup)](https://anil.recoil.org/notes/wasm-on-exotic-targets) (2025-04-16)
  Survey of WebAssembly implementations on non-traditional targets including native Linux port, kernel-mode runtime, POSIX browser support and FPGA ports.
- [Building a Xenstore stub domain with MirageOS](https://anil.recoil.org/notes/xenstore-stub-domain) (2012-09-12)
  Learn how to build a Xenstore stub domain using MirageOS for improved security and performance.
- [Delivered keynote at BOB 2015 on MirageOS](https://anil.recoil.org/notes/0bc235e0-b154-4cbf-a84a-61240f16d60a-1) (2015-01-23)
  Opening keynote at BOB 2015 conference in Berlin on functional operating systems and MirageOS unikernels.
- [Using camera-phones to interact with context-aware mobile services](https://anil.recoil.org/notes/2004-spotcodes-1) (2004-12-01)
  Technical report on SpotCode visual tag system with user study comparing benefits against conventional mobile interfaces.
- [Using Camera-Phones to Enhance Human-Computer Interaction](https://anil.recoil.org/notes/2004-ubicomp-camera-1) (2004-09-01)
  Demo of SpotCode visual tag system at UbiComp 2004 conference in Tokyo.
- [The Broadband Phone Network: Experiences with Context-Aware Telephony](https://anil.recoil.org/notes/2005-bbphone-1) (2005-01-01)
  Report on context-aware telephony experiments with AT&T Broadband Phone network.
- [On the challenge of delivering high-performance, dependable, model-checked internet servers](https://anil.recoil.org/notes/2005-hotdep-spl-1) (2005-06-01)
  Paper on using temporal automata for protocol implementations presented at HotDep 2005.
- [Audio networking: the forgotten wireless technology](https://anil.recoil.org/notes/2005-ieee-audio-1) (2005-07-01)
  Paper exploring audio-based networking as overlooked wireless communication technology.
- [Using smart phones to access site-specific services](https://anil.recoil.org/notes/2005-ieee-smartphones-1) (2005-01-01)
  IEEE Pervasive Computing article on using camera phones to access location-based services.
- [Using visual tags to bypass Bluetooth device discovery](https://anil.recoil.org/notes/2005-mc2r-visualtags-1) (2005-01-01)
  Journal paper on SpotCode visual tag login system, demonstrating visual tags as superior alternative to Bluetooth device discovery for security key advertisement.
- [SPLAT: A Tool for Model-Checking and Dynamically-Enforcing Abstractions](https://anil.recoil.org/notes/2005-spin-splat-1) (2005-08-01)
  Workshop paper on temporal automata for protocol specifications presented at SPIN 2005.
- [Ubiquitious Computing needs to catch up with Ubiquitous Media](https://anil.recoil.org/notes/2005-ubiapp-ubimedia-1) (2005-07-01)
  Position paper on ubiquitous computing approaches for emerging stream media appliances.
- [A Study of Bluetooth Propagation Using Accurate Indoor Location Mapping](https://anil.recoil.org/notes/2005-ubicomp-bluetooth-1) (2005-07-01)
  Ubicomp paper studying indoor Bluetooth signal propagation characteristics using Active Bat ultrasonic location system.
- [Fighting Crimeware: An Architecture for Split-Trust Web Applications](https://anil.recoil.org/notes/2006-fighting-crimeware-1) (2006-04-01)
  Paper presenting architecture for split-trust web applications to combat crimeware attacks.
- [Interacting with mobile services: an evaluation of camera-phones and visual tags](https://anil.recoil.org/notes/2006-puc-tags-1) (2007-02-01)
  Journal paper evaluating camera phone interaction with mobile services using visual tags.
- [Melange: creating a "functional" internet](https://anil.recoil.org/notes/2007-eurosys-melange-1) (2007-06-01)
  Won best student paper award at Eurosys 2007 for PhD work on high-performance functional packet parsing DSL.
- [Enhancing web browsing security on public terminals using mobile composition](https://anil.recoil.org/notes/2008-mobisys-splittrust-1) (2008-06-01)
  Paper on splitting trust between smartphones and web browsers presented at MobiSys 2008.
- [Combining Static Model Checking with Dynamic Enforcement Using the Statecall Policy Language](https://anil.recoil.org/notes/2009-icfem-spl-1) (2009-11-01)
  Paper on DSL for specifying temporal protocol automata presented at ICFEM 2009.
- [Multiscale not multicore: efficient heterogeneous cloud computing](https://anil.recoil.org/notes/2010-bcs-visions-1) (2010-04-01)
  Paper on vision for multiscale programming presented at BCS Visions 2010 conference.
- [Dynamics for ML using Meta-Programming](https://anil.recoil.org/notes/2010-dyntype-wgt-1) (2011-07-01)
  Paper on statically typed value persistence for OCaml published in ENTCS 2011.
- [Turning Down the LAMP: Software Specialisation for the Cloud](https://anil.recoil.org/notes/2010-hotcloud-lamp-1) (2010-06-01)
  Workshop paper presenting early MirageOS architecture for running OCaml applications directly on cloud platforms as unikernels.
- [Using functional programming within an industrial product group: perspectives and perceptions](https://anil.recoil.org/notes/2010-icfp-xen-1) (2010-09-01)
  Paper on experiences writing the Xen control stack in OCaml presented at ICFP 2010.
- [Using Dust Clouds to Enhance Anonymous Communication](https://anil.recoil.org/notes/2010-iswp-dustclouds-1) (2014-03-01)
  Paper on building dust clouds for anonymous communication systems.
- [Privacy Butler: A Personal Privacy Rights Manager for Online Presence](https://anil.recoil.org/notes/2010-smarte-privacybutler-1) (2010-03-01)
  Paper on privacy butler services for more private data management.
- [CUFP 2011 Workshop Report](https://anil.recoil.org/notes/2011-cufp-scribe-1) (2012-01-01)
  Published the scribe's report for CUFP 2011.
- [Dynamics for ML using Meta-Programming](https://anil.recoil.org/notes/2011-dynamics-ml-1) (2011-07-01)
  Workshop on Generative Technologies paper on dyntype library for ML meta-programming.
- [Reconfigurable Data Processing for Clouds](https://anil.recoil.org/notes/2011-fccm-cloudfpga-1) (2011-05-01)
  Paper exploring Xen and FPGA integration for cloud computing presented at FCCM.
- [Unclouded vision](https://anil.recoil.org/notes/2011-icdcn-droplets-1) (2011-01-01)
  Paper on Droplets architecture enabling controlled trade-offs between centralized cloud and fully decentralized personal data approaches at ICDCN.
- [CIEL: A universal execution engine for distributed data-flow computing](https://anil.recoil.org/notes/2011-nsdi-ciel-1) (2011-03-01)
  Paper on CIEL universal execution engine for distributed data-flow computing using dynamic task graphs at USENIX NSDI 2011.
- [Exploring Compartmentalisation Hypotheses with SOAAP](https://anil.recoil.org/notes/2012-ahans-soapp-1) (2012-09-01)
  Paper on control flow analysis techniques for compartmentalizing applications into isolated components.
- [Evolving TCP: how hard can it be?](https://anil.recoil.org/notes/2012-conext-pvtcp-1) (2012-12-01)
  Paper on extending TCP in a backwards compatible way presented at CoNeXT 2012.
- [Commercial users of functional programming workshop report](https://anil.recoil.org/notes/2012-cufp-scribe-1) (2013-11-01)
  Published the scribe's report for CUFP 2012.
- [Cost, Performance & Flexibility in OpenFlow: Pick three](https://anil.recoil.org/notes/2012-iccsdn-mirageflow-1) (2012-06-01)
  Paper on using MirageOS to improve software-defined networking infrastructure with OpenFlow.
- [Confidential carbon commuting: exploring a privacy-sensitive architecture for incentivising 'greener' commuting](https://anil.recoil.org/notes/2012-mpm-caware-1) (2012-04-01)
  Paper on privacy-sensitive data locker architecture to incentivize greener commuting patterns in Cambridge.
- [Programming the Xen cloud using OCaml](https://anil.recoil.org/notes/2012-oud-xen-1) (2012-09-01)
  Paper on programming Xen cloud infrastructure using OCaml at the OCaml Workshop.
- [The case for reconfigurable I/O channels](https://anil.recoil.org/notes/2012-resolve-fable-1) (2012-03-01)
  Workshop paper proposing reconfigurable I/O channel architecture for heterogeneous software and hardware environments at RESoLVE ASPLOS.
- [Signposts: end-to-end networking in a world of middleboxes](https://anil.recoil.org/notes/2012-sigcomm-signposts-1) (2012-09-01)
  Demo of Signposts DNSSEC system for end-to-end networking presented at SIGCOMM.
- [Unikernels: library operating systems for the cloud](https://anil.recoil.org/notes/2013-asplos-mirage-1) (2013-03-01)
  First paper on unikernels published at ASPLOS 2013.
- [CUFP'13 scribe's report](https://anil.recoil.org/notes/2013-cufp-scribe-1) (2015-01-01)
  Scribe's report from CUFP 2013 workshop on commercial uses of functional programming published in JFP.
- [Lost in the Edge: Finding Your Way with DNSSEC Signposts](https://anil.recoil.org/notes/2013-foci-signposts-1) (2013-08-01)
  Paper on DNSSEC-based Signposts system for improved peer-to-peer communications and NAT traversal at USENIX FOCI.
- [Trevi: watering down storage hotspots with cool fountain codes](https://anil.recoil.org/notes/2013-hotnets-trevi-1) (2013-11-01)
  Paper on fountain coding for datacenter networking presented at HotNets 2013.
- [Ocamlot: Online OCaml Testing](https://anil.recoil.org/notes/2013-ocamlot-1) (2013-09-01)
  Presentation of online testing system for the OCaml ecosystem at OCaml Users and Developers Workshop.
- [The OCaml Platform v0.1](https://anil.recoil.org/notes/2013-oud-platform-1) (2013-09-01)
  Paper presenting first version of OCaml Platform development tools and infrastructure at OCaml Workshop 2013.
- [Irminsule: a branch-consistent distributed library database](https://anil.recoil.org/notes/2014-oud-irminsule-1) (2014-09-01)
  Paper on Irmin branch-consistent distributed database library supporting Git-like operations at OCaml Workshop 2014.
- [Multicore OCaml](https://anil.recoil.org/notes/2014-oud-multicore-1) (2014-09-01)
  First paper on multicore OCaml's design presented at the OCaml Workshop.
- [The OCaml Platform v1.0](https://anil.recoil.org/notes/2014-oud-platform-1) (2014-09-01)
  Paper on OCaml Platform version 1.0 status and features.
- [Regional clouds: technical considerations](https://anil.recoil.org/notes/2014-regional-clouds-1) (2014-11-01)
  Report examining technical considerations for regional cloud computing and legal compliance.
- [Raft Refloated: Do We Have Consensus?](https://anil.recoil.org/notes/2014-sigops-raft-1) (2015-01-01)
  Paper reproducing Raft consensus protocol with optimizations and empirical validation using clean-slate OCaml implementation.
- [Personal Data: Thinking Inside the Box](https://anil.recoil.org/notes/2015-aarhus-databox-1) (2015-10-01)
  Paper on personal databoxes presented at the decennial Aarhus conference.
- [Kadupul: Livin' on the Edge with Virtual Currencies and Time-Locked Puzzles](https://anil.recoil.org/notes/2015-diynet-kadupul-1) (2015-05-01)
  Workshop paper on using virtual currencies and time-locked puzzles to incentivize heterogeneous multihop mesh networking.
- [Mergeable persistent data structures](https://anil.recoil.org/notes/2015-jfla-irmin-1) (2015-01-01)
  Paper on mergeable data structures using Irmin presented at JFLA 2015.
- [Jitsu: Just-In-Time Summoning of Unikernels](https://anil.recoil.org/notes/2015-nsdi-jitsu-1) (2015-05-01)
  Paper on low-latency unikernel spawning per-connection presented at NSDI 2015.
- [SibylFS: formal specification and oracle-based testing for POSIX and real-world file systems](https://anil.recoil.org/notes/2015-sosp-sibylfs-1) (2015-10-01)
  Paper on formal specification and testing of filesystems presented at SOSP 2015.
- [Not-Quite-So-Broken TLS](https://anil.recoil.org/notes/2015-usenixsec-nqsb-1) (2015-08-01)
  Paper on rebuilding TLS securely but practically presented at USENIX Security 2015.
- [Declarative Foreign Function Binding Through Generic Programming](https://anil.recoil.org/notes/2016-flops-cmeleon-1) (2016-02-01)
  Paper on flexible declarative approaches to foreign function interfaces through generic programming at FLOPS 2016.
- [FLICK: Developing and Running Application-Specific Network Services](https://anil.recoil.org/notes/2016-usenix-flick-1) (2016-06-01)
  Paper on framework for developing and deploying application-specific network services at USENIX ATC 2016.
- [Effectively tackling the awkward squad](https://anil.recoil.org/notes/2017-ml-effects-1) (2017-09-01)
  Paper on tackling awkward IO patterns using effect handlers.
- [The State of the OCaml Platform: Sep 2017](https://anil.recoil.org/notes/2017-oud-platform-1) (2017-09-01)
  Annual update on OCaml Platform development presented at ICFP.
- [DaLi: Database as a Library](https://anil.recoil.org/notes/2017-snapl-dali-1) (2017-05-01)
  Position paper on building databases-as-a-library presented at SNAPL 2017.
- [Concurrent System Programming with Effect Handlers](https://anil.recoil.org/notes/2017-tfp-effecthandlers-1) (2018-04-01)
  Paper on concurrent systems programming using effect handlers presented at TFP 2017.
- [An architecture for interspatial communication](https://anil.recoil.org/notes/2018-hotpost-osmose-1) (2018-04-01)
  Paper on interspatial networking architecture presented at HotPOST 2018.
- [Bounding data races in space and time](https://anil.recoil.org/notes/2018-pldi-memorymodel-1) (2018-06-01)
  Paper on the OCaml memory model and underlying theory presented at PLDI 2018.
- [A modular foreign function interface](https://anil.recoil.org/notes/2018-socp-modular-ffi-1) (2018-10-01)
  Journal paper on building modular foreign function interfaces.
- [Snape: The Dark Art of Handling Heterogeneous Enclaves](https://anil.recoil.org/notes/2019-edgesys-snape-1) (2019-03-01)
  EdgeSys 2019 paper on framework for rearchitecting applications to better support trusted execution environments.
- [MirageOS 4: the dawn of practical build systems for exotic targets](https://anil.recoil.org/notes/2019-mirage-build-1) (2019-08-01)
  Paper on the MirageOS 4 build system presented at OCaml Workshop.
- [Programming Unikernels in the Large via Functor Driven Development](https://anil.recoil.org/notes/2019-mirage-functors-1) (2019-05-01)
  Preprint on programming unikernels using ML modules and functors.
- [The OCaml Platform in 2019](https://anil.recoil.org/notes/2019-ocaml-platform-1) (2019-08-01)
  Annual update on OCaml Platform development and ecosystem progress.
- [Banyan: Coordination-Free Distributed Transactions over Mergeable Types](https://anil.recoil.org/notes/2020-asplas-banyan-1) (2020-11-01)
  Paper on coordination-free distributed transactions using mergeable replicated data types at ASPLAS 2020.
- [Retrofitting parallelism onto OCaml](https://anil.recoil.org/notes/2020-icfp-retropar-1) (2020-08-01)
  Best paper award at ICFP 2020 for multicore garbage collector design maintaining backwards compatibility for sequential OCaml code.
- [OCaml-CI: A Zero-Configuration CI](https://anil.recoil.org/notes/2020-oud-ci-1) (2020-08-01)
  Presentation of new OCaml DSL for continuous integration at the OCaml Workshop.
- [Parallelising your OCaml Code with Multicore OCaml](https://anil.recoil.org/notes/2020-oud-parallelising-1) (2020-08-01)
  OCaml Workshop paper on techniques for parallelizing OCaml code using multicore features.
- [The OCaml Platform: 2020](https://anil.recoil.org/notes/2020-oud-platform-1) (2020-09-01)
  Annual OCaml Workshop update on the OCaml Platform development toolchain.
- [How Computer Science Can Aid Forest Restoration](https://anil.recoil.org/notes/2021-arxiv-forestrycs-1) (2021-08-01)
  Preprint exploring how computer science techniques could contribute to forest preservation and restoration efforts.
- [Experiences with Effects](https://anil.recoil.org/notes/2021-oud-effects-1) (2021-08-01)
  Paper on programming with effects in OCaml presented at OCaml Workshop.
- [Retrofitting effect handlers onto OCaml](https://anil.recoil.org/notes/2021-pldi-retroeff-1) (2021-06-01)
  Paper on retrofitting effect handlers into OCaml runtime presented at PLDI 2021.
- [Enhancing the Security & Privacy of Wearable Brain-Computer Interfaces](https://anil.recoil.org/notes/2022-enhancing-brain-security-1) (2022-01-01)
  Preprint introducing Argus information flow control system addressing security vulnerabilities in wearable BCI devices.
- [Homogeneous Builds with OBuilder and OCaml](https://anil.recoil.org/notes/2022-oud-ocurrent-1) (2022-09-01)
  Paper on OCurrent incremental computation DSL presented at OCaml Workshop 2022.
- [Enabling Lightweight Privilege Separation in Applications with MicroGuards](https://anil.recoil.org/notes/2023-acns-microguards-1) (2023-10-01)
  Paper on MicroGuards memory API for lightweight privilege separation presented at ACNSW.
- [Credit credibility threatens forests](https://anil.recoil.org/notes/2023-carbon-credibility-1) (2023-05-01)
  Perspective in Science magazine on the credibility of carbon credits and their importance for tropical forest protection.
- [Where on Earth is the Spatial Name System?](https://anil.recoil.org/notes/2023-hotnets-sns-1) (2023-11-01)
  Paper on spatial name system architecture extending DNS with geographic routing capabilities at HotNets 2023.
- [Nature Sustainability article on carbon/biodiversity credits](https://anil.recoil.org/notes/2023-naturecredits-1) (2024-08-01)
  Nature Sustainability commentary on nature-based carbon and biodiversity credit markets.
- [Preprint on the social value of impermanent carbon credits](https://anil.recoil.org/notes/2023-ncc-permanence-1) (2023-07-01)
  Preprint using Social Cost of Carbon to create a discount function for valuing impermanent carbon credits.
- [Nature Climate Change paper on impermanent carbon credits](https://anil.recoil.org/notes/2023-ncc-permanence-2) (2023-11-01)
  Publication of research on valuing impermanent carbon credits in Nature Climate Change with extensive press coverage.
- [Eio 1.0 – Effects-based IO for OCaml 5](https://anil.recoil.org/notes/2023-ocaml-eio-1) (2023-09-01)
  OCaml Workshop 2023 update on the Eio effects-based IO library for OCaml 5.
- [State of the OCaml Platform 2023](https://anil.recoil.org/notes/2023-ocaml-platform-1) (2023-09-01)
  Annual OCaml Workshop presentation reviewing a decade of progress from opam 1.0 to modern toolchain including Dune and LSP server.
- [PACT Tropical Moist Forest Accreditation Methodology](https://anil.recoil.org/notes/2023-pact-tmf-1) (2023-06-01)
  Publication of Tropical Moist Forest v1.0 specification using counterfactual dynamic baselines for calculating REDD+ project additionality, leakage and permanence.
- [PACT Tropical Moist Forest Accreditation Methodology](https://anil.recoil.org/notes/2023-pact-tmf-2) (2023-12-01)
  Release of Tropical Moist Forest v2.0 specification with significant methodology updates.
- [PACT Tropical Moist Forest Accreditation Methodology](https://anil.recoil.org/notes/2023-pact-tmf-3) (2024-08-29)
  Release of Tropical Moist Forest v2.1 specification with new explainer and clarifications for buffer zones and base tiles.
- [Information Flow Tracking for Heterogeneous Compartmentalized Software](https://anil.recoil.org/notes/2023-raid-deluminator-1) (2023-10-01)
  RAID 2023 paper on Deluminator interface for decentralized information flow control in compartmentalized software.
- [Horizon scan on AI and conservation published](https://anil.recoil.org/notes/2024-ai-conhorizon-1) (2024-12-05)
  Horizon scan published in Trends in Ecology and Evolution on prioritizing AI projects to accelerate conservation efforts while minimizing harm.
- [Global, robust and comparable digital carbon assets](https://anil.recoil.org/notes/2024-cc-blockchain-1) (2024-04-04)
  Paper on PACT stablecoin implementation using blockchain smart contracts for transparent and scalable carbon credit transactions at ICBC 2024.
- [Published a legal perspective on high integrity forest carbon credits](https://anil.recoil.org/notes/2024-cclr-carbon-1) (2024-11-01)
  Paper exploring legal framework for forest carbon credits that separates carbon tenure from carbon rights, published in Climate and Carbon Law Review.
- [Preprint on using LLMs to for evidence-based decision support](https://anil.recoil.org/notes/2024-ce-llm-1) (2024-11-01)
  Preprint on using LLMs for conservation evidence based on large-scale academic literature crawling.
- [Updated preprint on LLMs for evidence-based decision support](https://anil.recoil.org/notes/2024-ce-llm-2) (2025-01-23)
  Updated preprint with additional evaluation results on using LLMs for expert-level evidence synthesis queries in conservation.
- [Out-of-the-box LLMs are not ready for conservation decision making](https://anil.recoil.org/notes/2024-ce-llm-3) (2025-05-16)
  PLOS One publication showing pretrained LLMs perform poorly on conservation questions but improve dramatically with Conservation Evidence database training.
- [Quantifying the impact of the food we eat on species extinctions](https://anil.recoil.org/notes/2024-food-life-1) (2024-05-01)
  Preprint on quantifying biodiversity cost of global food consumption submitted for peer review.
- [Updated preprint on quantifying biodiversity cost of food consumption](https://anil.recoil.org/notes/2024-food-life-2) (2025-02-12)
  Revised preprint on quantifying biodiversity cost of global food consumption using LIFE metric combined with supply chain data and provenance modeling.
- [Green Urban Equity: Analyzing the 3-30-300 Rule in UK Cities and Its Socioeconomic Implications](https://anil.recoil.org/notes/2024-green-urban-eq-1) (2024-03-01)
  Abstract on analyzing urban green space access and equity across UK cities using remote sensing and machine learning at EGU 2024.
- [Towards security specifications for agentic AIs](https://anil.recoil.org/notes/2024-hope-bastion-1) (2024-09-04)
  ACM HOPE talk on using F* specifications to protect systems against over-eager or rogue AI agents.
- [Hyperspectrally identifying trees in tropical forests](https://anil.recoil.org/notes/2024-hyper-tropical-mapping-1) (2024-06-01)
  Preprint on using hyperspectral sensors and CNN tree-crown segmentation for tropical tree species identification.
- [First preprint of LIFE biodiversity metric available](https://anil.recoil.org/notes/2024-life-1) (2023-11-01)
  First preprint on new LIFE metric for global biodiversity now available for review.
- [Second preprint of the LIFE biodiversity metric available](https://anil.recoil.org/notes/2024-life-2) (2024-07-01)
  Updated LIFE biodiversity metric preprint based on reviewer feedback, accepted for publication in Royal Society special issue.
- [LIFE metric published in Royal Society Phil Trans B](https://anil.recoil.org/notes/2024-life-3) (2025-01-09)
  Publication of LIFE biodiversity metric quantifying relative impacts of human actions on species extinctions through spatially explicit habitat loss analysis.
- [Prototyping carbon-aware domain name resolution](https://anil.recoil.org/notes/2024-loco-carbonres-1) (2024-12-01)
  Extending DNS with carbon-aware load balancing and OCaml-based DNS server for sustainable Internet infrastructure presented at LOCO.
- [Towards verifiable, privacy-preserving carbon emissions claims](https://anil.recoil.org/notes/2024-loco-emissions-1) (2024-12-01)
  Paper on mechanisms for verifiable and privacy-preserving carbon emissions reporting across cloud service supply chains at LOCO workshop.
- [Towards a frugal userspace for Linux](https://anil.recoil.org/notes/2024-loco-shark-1) (2024-12-01)
  LOCO paper presenting Shark shell for deterministic, reusable Linux computation using kernel namespaces to reduce computational costs.
- [Cooperative Sensor Networks for Long-Term Biodiversity Monitoring](https://anil.recoil.org/notes/2024-loco-terracorder-1) (2024-12-01)
  LOCO 2024 presentation on Terracorder project combining machine learning and ESP32 for cooperative biodiversity monitoring networks.
- [Preprint available on insuring against variability of NbS](https://anil.recoil.org/notes/2024-nbs-risk-1) (2024-03-01)
  Preprint on ex-ante pricing models for mitigating credit reversal risk in nature-based climate solutions through optimal carbon release anticipation.
- [Paper published on ex-ante forecasts of nature-based solutions](https://anil.recoil.org/notes/2024-nbs-risk-2) (2024-08-31)
  Journal of Carbon Management publication on ex-ante projection methodologies for evaluating nature-based carbon solutions.
- [A Case for Planetary Computing](https://anil.recoil.org/notes/2024-planetary-computing-1) (2023-03-01)
  Preprint presenting the case for planetary-scale computing infrastructure and applications.
- [A Case for Planetary Computing](https://anil.recoil.org/notes/2024-planetary-computing-2) (2024-03-01)
  Revised preprint on planetary-scale infrastructure for ingesting and analyzing global environmental data with traceability and reproducibility.
- [Predicting species using machine learning at CCAI](https://anil.recoil.org/notes/2024-sdm-sa-1) (2024-05-01)
  MPhil research on using CNNs with satellite data for species distribution modeling presented at ICLR CCAI workshop in Vienna.
- [Presented poster at Sensys on low-power biodiversity monitoring](https://anil.recoil.org/notes/2024-sensys-terracorder-1) (2024-11-01)
  Poster presentation at ACM Sensys 2024 on biodiversity sensing work with Terracorder platform.
- [Paper on scheduling for reduced tail task latencies](https://anil.recoil.org/notes/2024-socc-murmuration-1) (2024-11-01)
  SOCC 2024 presentation on Murmuration scheduler achieving 15-25% faster Kubernetes job completion times in busy datacenters.
- [Preprint on Terracorder sensing now available](https://anil.recoil.org/notes/2024-terracorder-1) (2024-08-01)
  Preprint on ultra-low-power ESP32-based biodiversity sensor using Q-learning to optimize cooperative network operations.
- [Uncertainty at scale: how CS hinders climate research](https://anil.recoil.org/notes/2024-uncertainty-cs-1) (2024-02-01)
  Paper examining how computer science approaches to uncertainty impact climate research practices at Undone CS workshop.
- [New preprint survey on energy-aware deep learning on embedded hardware](https://anil.recoil.org/notes/2025-dl-rcn-1) (2025-05-20)
  Survey paper on energy-aware approaches for optimizing deep learning training and inference on embedded devices.
- [Steps towards an ecology of the Internet](https://anil.recoil.org/notes/2025-internet-ecology-1) (2025-06-25)
  Paper exploring biological ecosystem models as inspiration for Internet architecture evolution towards trillion-node scale at Aarhus 2025.
- [New preprint on benchmarking ultra-low power neural accelerators](https://anil.recoil.org/notes/2025-npu-bench-1) (2025-03-28)
  Preprint analyzing dedicated ultra-low-power neural network accelerators in modern embedded chipsets for edge computing applications.
- [Programming the Next Trillion Embedded Devices](https://anil.recoil.org/notes/287364fa-b59c-4b9f-812d-d81cc0c992a5-1) (2020-02-26)
  Talk on programming approaches for the coming wave of embedded devices.
- [State of the OCaml Platform](https://anil.recoil.org/notes/2f824dde-e112-4f4f-890d-1825572ea1c4-1) (2017-09-08)
  Talk presenting the current state of the OCaml Platform toolchain and development ecosystem.
- [The State of the OCaml Platform](https://anil.recoil.org/notes/35e1a70d-0fb4-49b1-86ce-dd6266b812de-1) (2015-09-04)
  Update on the state of the OCaml Platform development environment and toolchain.
- [OCaml 2014: The OCaml Platform v1.0](https://anil.recoil.org/notes/4390c1d0-ed4f-4c01-9e10-dab2a3faed7a-1) (2014-09-05)
  Talk on the OCaml Platform reaching v1.0.
- [Building the Xen toolstack using OCaml](https://anil.recoil.org/notes/43ab3ae0-9ffc-474f-aa02-3cc1139f54d1-1) (2010-11-05)
  Talk on building the Xen toolstack using OCaml.
- [Jitsu: Just-in-Time Summoning of Unikernels (new directions in operating systems)](https://anil.recoil.org/notes/46968fa0-e5bd-4df8-98e1-3cf88d9b31e5-1) (2014-11-25)
  Talk on Jitsu at New Directions in Operating Systems conference.
- [BBC report on the new Cambridge supercomputer ("Dawn") announced at the 2023 AI Summit](https://anil.recoil.org/notes/48a7ab10-3f49-4978-a00f-c26b64c2cae7-1) (2023-11-02)
  BBC interview about the Dawn supercomputer announced at 2023 AI Summit.
- [Turning Down the LAMP: Software Specialisation for the Cloud](https://anil.recoil.org/notes/4957325f-d7f5-4a29-95b6-a1e1f61ea5cf-1) (2010-06-22)
  First HotCloud talk presenting the initial MirageOS concept for cloud software specialization.
- [Trusted Carbon Credits](https://anil.recoil.org/notes/4c-1) (2022-05-06)
  Interview in Vox magazine expressing skepticism about Adam Neumann's carbon credit startup, emphasizing supply shortage over trading efficiency.
- [Unikernels: Functional Infrastructure with Mirage OS](https://anil.recoil.org/notes/55852136-843d-4043-98e7-6b46c6d39b01-1) (2015-05-12)
  Talk at Esper on functional programming with unikernels using MirageOS.
- [FLOSS Weekly 302: Open Mirage](https://anil.recoil.org/notes/5cdf2eef-9053-428e-b8b3-ab5ae274c129-1) (2014-07-23)
  Interview with Randal Schwartz and Simon Phipps about MirageOS on FLOSS Weekly podcast episode 302.
- [Codemesh 2014: Nymote: Git Your Own Cloud Here](https://anil.recoil.org/notes/644914a5-a40b-4ef7-bb17-cea43c95dd09-1) (2014-12-17)
  Talk on Nymote presented at Codemesh 2014.
- [Unikernels: the rise of the library hypervisor in MirageOS](https://anil.recoil.org/notes/725dda70-b12b-4b1a-a8ae-fa9c22683ff2-1) (2016-10-14)
  DockerCon talk on integrating MirageOS unikernels with Docker using library hypervisor approach for Docker Desktop.
- [Mirage Developer Preview 1 screencast](https://anil.recoil.org/notes/762795c5-9f3b-499b-a054-b2af37d1ddd2-1) (2013-07-26)
  Screencast demonstration of Mirage Developer Preview 1 release.
- [OCaml Meeting 2011 - MirageOS](https://anil.recoil.org/notes/7d949597-b864-4ada-ab1a-81ff8c0463e2-1) (2011-10-19)
  Presentation on MirageOS at the OCaml Meeting 2011 conference.
- [Speaking at CCI workshop on conservation evidence](https://anil.recoil.org/notes/80795e06-ac75-4015-b178-3cfcbb233685-1) (2024-06-25)
  Talk at CCI Effectiveness Revolution workshop on conservation copilots and embedding evidence into conservation decision-making.
- [Ian Eyberg, Joshua Bernstein, Anil Madhavapeddy at OSCON in Austin](https://anil.recoil.org/notes/8c92d6cf-3e05-429f-8c8e-094f77be61c6-1) (2016-06-06)
  Interview with The New Stack about unikernels and Docker at OSCON in Austin, Texas.
- [Functional Programming for the Planet](https://anil.recoil.org/notes/981c00b5-32c0-4cac-a387-6c945dfa9934-1) (2023-09-05)
  Keynote presentation at ICFP 2023 on functional programming for the planet.
- [Mapping greener futures with planetary computing](https://anil.recoil.org/notes/a0280750-2ef0-4f5c-b138-68f7b11b4c29-1) (2024-10-24)
  Lecture to UCL Institute for Global Prosperity Masters students on planetary computing, covering LIFE and FOOD papers.
- [17th William Pitt Seminar - Who's in Charge?](https://anil.recoil.org/notes/a26475b5-c169-478e-b88e-be5cd1f2aff8-1) (2022-11-01)
  Opening talk at Pembroke College's climate change seminar on global biodiversity status and individual agency for conservation action.
- [Unikernel Systems is now part of Docker](https://anil.recoil.org/notes/a612e810-d56c-48af-b43e-2893a96b9120-1) (2016-01-21)
  Announcement that Unikernel Systems has been acquired by Docker.
- [Jitsu: Just-In-Time Summoning of Unikernels](https://anil.recoil.org/notes/ad4658f5-ca4f-42f3-b61a-58f13dcdeb1a-1) (2015-05-04)
  NSDI 2015 talk on Jitsu system for on-demand unikernel instantiation.
- [Creating high-performance, statically type-safe network applications](https://anil.recoil.org/notes/anil-phd-thesis-1) (2010-03-01)
  PhD thesis published as technical report on building secure network applications using ML type systems and model checking.
- [Creating high-performance, statically type-safe network applications](https://anil.recoil.org/notes/anil-phd-thesis-2) (2010-05-01)
  PhD thesis on type-safe network application development now published as print book.
- [Context-Aware Computing with Sound](https://anil.recoil.org/notes/audio-networking-1) (2003-10-01)
  Research project using inaudible audio beacons for location discovery on smartphones without additional hardware, conducted as intern at Intel Research Cambridge.
- [State of the OCaml Platform 2020](https://anil.recoil.org/notes/b11188ba-0f97-4ec4-b372-fa3cea0821ab-1) (2020-08-28)
  Talk on next steps for the OCaml Platform development tools, delivered online during the pandemic.
- [Financing Forests: A Credible Approach towards Halting Tropical Deforestation](https://anil.recoil.org/notes/bc9da6fc-9419-4f18-9db9-c13b1a4a859f-1) (2022-11-16)
  Wednesday seminar presentation on using carbon credits to finance tropical forest conservation.
- [Mirage: A New Multi-Scale Operating System for Clouds and Crowds (2014)](https://anil.recoil.org/notes/be2f049b-174a-4e5b-b30e-0319793487c7-1) (2010-10-25)
  Tech talk at LinkedIn presenting Mirage operating system for cloud computing.
- [The First Billion Real Deployments of Unikernels](https://anil.recoil.org/notes/c09ed36f-6ad5-4254-a0ce-3ca3398f38a3-1) (2020-02-26)
  Discussion of unikernel deployments at scale reaching billions of users.
- [MirageOS 2.0: branch consistency for Xen Stub Domains](https://anil.recoil.org/notes/c9273fa0-802f-4d2b-8f0d-db383943564e-1) (2014-10-17)
  Xen Summit talk on implementing branch consistency for MirageOS 2.0 Xen Stub Domains.
- [Leveraging Scientific Innovation and AI to Scale Carbon Markets](https://anil.recoil.org/notes/ce64a918-ff52-4116-b1ee-256f08e6e7f1-1) (2023-03-07)
  Discussion with Mantle Labs exploring applications of AI to carbon credits markets.
- [MirageOS and XAPI project update at XenSummit](https://anil.recoil.org/notes/cf9fcf6b-de5d-4a23-a00d-cceadea5b668-1) (2013-11-13)
  Update presentation on MirageOS and XAPI project development at XenSummit.
- [Rebuilding Operating Systems with Functional Principles](https://anil.recoil.org/notes/d456e4bc-bce6-45ad-9d2e-102f834ec400-1) (2020-02-26)
  Distinguished lecture series at University of St Andrews on functional programming principles applied to operating systems design.
- [SE Radio Episode 204: Anil Madhavapeddy on the Mirage Cloud Operating System and the OCaml Language](https://anil.recoil.org/notes/d5411e25-7845-41e8-b3ec-ab3c33ce13c8-1) (2014-05-01)
  Software Engineering Radio podcast episode discussing Mirage cloud operating system and OCaml language.
- [Programming for the Planet](https://anil.recoil.org/notes/d592bf17-c835-435f-9469-f0f65e926975-1) (2024-05-27)
  Planetary computing keynote at LambdaDays conference featuring interview video on biodiversity and satellite sensing work.
- [Immutable Distributed Infrastructure with Unikernels](https://anil.recoil.org/notes/d5fbd6a4-bef2-4fbc-9d02-cb9935e50d8e-1) (2015-09-29)
  Invited talk at NetPL on immutable distributed infrastructure using unikernels.
- [The functional innards of Docker for Mac and Windows](https://anil.recoil.org/notes/dbd7546a-95d8-40af-b286-3cf930767682-1) (2016-06-24)
  Talk at Functional Works meetup discussing how Docker for Mac and Windows use OCaml and unikernels internally.
- [OUD 2012: Towards an OCaml Platform and Introducing OCaml Labs](https://anil.recoil.org/notes/dd8b1f58-c43c-4422-9963-d3a980529e57-1) (2012-09-17)
  Recording of OCaml Labs announcement and OCaml Platform vision at OCaml Users and Developers workshop.
- [The personal container, or your life in bits](https://anil.recoil.org/notes/de10-perscon-1) (2010-10-01)
  Paper on personal containers for managing personal data presented at UK Digital Economy meeting.
- [Perceived risks of personal data sharing](https://anil.recoil.org/notes/de13-dataware-1) (2013-02-01)
  Paper on dataware computing in the digital economy.
- [Haskell Symposium 2014 Keynote on functional OS design](https://anil.recoil.org/notes/ed84b2eb-1b93-4dc3-b746-63a4af13d4ea-1) (2014-09-05)
  Keynote presentation at Haskell Symposium 2014 on functional operating system design.
- [Paper on the NASA Mars Polar Lander website architecture](https://anil.recoil.org/notes/netapp-tr-3071-1) (2000-07-01)
  Technical report on Mars Polar Lander website acceleration architecture, one of the busiest websites during approach to landing.
- [Streaming U2 live across the Internet](https://anil.recoil.org/notes/netapp-tr-3152-1) (2002-04-01)
  Technical report on setting up CDN for U2's live concert stream from Sardinia, reaching 5 million viewers globally while working as NetApp product architect.
- [Exploring tradeoffs in location-aware gaming using smartphones](https://anil.recoil.org/notes/netgames04-ctf-1) (2004-08-01)
  Paper on location-aware Capture The Flag game using Symbian phones, public displays, and ActiveBAT tracking, presented at SIGCOMM NetGames workshop.
- [Unikernels: Rise of the Virtual Library Operating System](https://anil.recoil.org/notes/rise-of-libos-1) (2013-11-01)
  Article on unikernels published in Communications of the ACM.
- [First edition of Real World OCaml published](https://anil.recoil.org/notes/rwo-1) (2013-11-01)
  Release announcement for first edition of Real World OCaml book published by O'Reilly with upcoming signing events.
- [The 2nd ed of Real World OCaml is available in shops](https://anil.recoil.org/notes/rwo-2) (2022-10-01)
  Second edition of Real World OCaml now available from Cambridge University Press, with free online and PDF versions.
- [The Case for Abstracting Security Policies](https://anil.recoil.org/notes/sam03-secpol-1) (2003-06-01)
  First academic paper on system call policy language to constrain application access to privileged resources, implemented on OpenBSD using systrace and presented at SAM 2003.
- [Xen 2002](https://anil.recoil.org/notes/xen02-1) (2003-01-04)
  First technical report on Xen hypervisor with contributions to early NetBSD port.
- [.plan-26-01: Easing into the new year with reading, temples and mosquitos](https://anil.recoil.org/notes/2026w1) (2026-01-04)
  Family travels through Udaipur, Vijayawada and Hyderabad, visiting temples and villages, plus kicking off the TESSERA 2025 embeddings.
- [.plan-26-10: Streaming TESSERA working, biodiversity action papers, and FPL takes off](https://anil.recoil.org/notes/2026w10) (2026-03-08)
  TESSERA streaming in the browser, planetary programming at WG2.8, biodiversity action papers, FP Launchpad opens, and Docker CACM buzz
- [.plan-26-11: Bins, bollards, bots and biodiversity boffins](https://anil.recoil.org/notes/2026w11) (2026-03-15)
  Evidence synthesis at the DEFRA science conference, TESSERA transcoding and building a new SPA, OpenStreetMap/DuckDB bindings in OxCaml, and early thoughts on vibecoding etiquette.
- [.plan-26-12: Zarr across space and TESSERA time](https://anil.recoil.org/notes/2026w12) (2026-03-22)
  Reworking the TESSERA Zarr store layout after community feedback, Springer's API woes for evidence synthesis, vibecoding introspection, and git remote helpers for ATProto.
- [.plan-26-13: Oxidised, standardised, and syndicated](https://anil.recoil.org/notes/2026w13) (2026-03-29)
  Publishing the OxCaml Labs year-one review, POSSE and AI content disclosure for the web, adopting the geo-embeddings Zarr convention for TESSERA, action PROPL at PLDI, the death of the grant application, and NASA's new swathe lidar mission.
- [.plan-26-14: Tracking AI screen time and escaping to pen and paper](https://anil.recoil.org/notes/2026w14) (2026-04-05)
  Mythos Preview and the urgent need for internet immune systems, cognitive DDoS and AI screen time for code, a proposal for voluntary disclosure in OCaml, desktop focus and printed papers, iOS misery, GeoTessera 0.8, Ceph at 1.4PB, OCaml CI migration, hardware perf counters for OxCaml, and the FP Launchpad launch at IIT Madras.
- [.plan-26-15: Banyan trees, (anti)botnets and Bose-Einstein bases](https://anil.recoil.org/notes/2026w15) (2026-04-12)
  Travelling from Ireland to IIT Madras for the FP Launchpad launch, mirroring half a petabyte of TESSERA embeddings to AWS Open Data, antibotty discussions, and Tangled trust boundaries for AI code review.
- [.plan-26-16: Chennai, Cambridge, Belfast: a week on the wing](https://anil.recoil.org/notes/2026w16) (2026-04-19)
  A week of hops between Chennai, Cambridge and Belfast for the FP Launchpad takeoff at IIT Madras, a surprise Publication of the Year at the Cambridge Ring Hall of Fame, meeting the VC on the upcoming Rokos School of Governance, mirroring half a petabyte of TESSERA tiles and hacking on oi
- [.plan-26-17: Unwedging kernels, dogfood deployments, and managing beef leakage](https://anil.recoil.org/notes/2026w17) (2026-04-26)
  Welcoming Akshay to Cambridge, TESSERA AWS sync done, oi now self-hosts this site, and a new 4C forest leakage preprint appears.
- [.plan-26-18: From tropical forest protection to oi swallowing its oxcaml tail](https://anil.recoil.org/notes/2026w18) (2026-05-03)
  Our REDD+ over-crediting paper hits Nature Communications just as Microsoft retreats from removals, we talk responsible evidence synthesis while LLMs appear in UK planning, and oi grows a self-update bootstrap.
- [.plan-26-19: Ancient oaks, parliamentary evidence, and TESSERA in the City](https://anil.recoil.org/notes/2026w19) (2026-05-10)
  Celebrating David Attenborough's 100th birthday at a Conservation Research Institute retreat in Norwich, a Parliament POST briefing on Evidence for Nature Recovery lands, and a TESSERA talk at the Cambridge Ring alumni evening at Jane Street.
- [.plan-26-02: Back from India and straight into the conservation conference](https://anil.recoil.org/notes/2026w2) (2026-01-11)
  Hosting the Conservation Evidence conference at Pembroke, recovering from the India trip, and keeping up with LLM developments.
- [.plan-26-20: Putting OxCaml in a box and OCaml in orbit (again)](https://anil.recoil.org/notes/2026w20) (2026-05-17)
  Consolidating my OCaml trees for easier OxCaml deployment, shipping native system packages for OxCaml which then got into space, and remembering Peter Neumann
- [.plan-26-03: TESSERA scaling and speaking at AI4Nature's launch](https://anil.recoil.org/notes/2026w3) (2026-01-18)
  Scaling TESSERA embeddings on Vultr AMD GPUs, speaking at the AI4Nature launch in London, and picking up Tomas Petricek's new PL book.
- [.plan-26-04: Travelling and tracking TESSERA activity](https://anil.recoil.org/notes/2026w4) (2026-01-25)
  Tracking TESSERA activity including a new preprint and podcast, wrestling with Zarr, and saying farewell to David Allsopp.
- [.plan-26-05: An OxCaml hacking week](https://anil.recoil.org/notes/2026w5) (2026-02-01)
  Deploying an OxCaml zero-allocation webserver, OCaml CI maintenance and opam versioning, and OCaml Workshop and FOSDEM talks
- [.plan-26-06: Vivas, ARIA and interviews](https://anil.recoil.org/notes/2026w6) (2026-02-08)
  PhD viva for Maddy, presenting TESSERA at ARIA, Nature covers the conservation evidence conference, giving evidence to Parliamentary POST, and a CACM interview.
- [.plan-26-07: Storage, Lego, Echo, and the IUCN](https://anil.recoil.org/notes/2026w7) (2026-02-15)
  Growing the Ceph cluster for TESSERA embeddings, a Lego brainstorming session for the Evidence TAP, hosting Echo Labs from ARIA, and Shane's IUCN Red List seminar.
- [.plan-26-08: At AI summit, Shriram's PL opinions, Zarr hacking](https://anil.recoil.org/notes/2026w8) (2026-02-22)
  TESSERA paper accepted at CVPR 2026, went to the AI Impact Summit, OCaml Zarr hacking, Shriram's talk on human factors of formal methods, and discussions on teaching OxCaml to agents.
- [.plan-26-09: Browser TESSERA, package management and Docker in the CACM](https://anil.recoil.org/notes/2026w9) (2026-03-01)
  Got TESSERA working in Zarr and the browser, and a preprint of package management a la carte pushed out

---
Canonical: https://anil.recoil.org/notes
Feeds: [Atom](https://anil.recoil.org/news.xml), [JSON](https://anil.recoil.org/feed.json)
