Notes

October 2026

Week 40 ·

A whole new world (of wall-to-wall Tessera embeddings).Michaelmas term restarts, with Forester replacing my traditional printed FoCS notes, GeoTessera is now wall-to-wall across dual Zarr/Icechunk stores, and a trip to Oxford's Intelligent Earth CDT. · 1,450 words

Code release: geotessera 0.11.0Python library interface to the Tessera geofoundation model embeddings
Code release: mdx 2.7.0Executable code blocks inside markdown files

September 2026

LIFE, Zarr and everything.Serving LIFE v1.01 as a streamable Zarr v3 store, and three new clients in JavaScript, Python and R. · 1,775 words

Week 39 ·

End of my sabbatical, and I feeeel fine!Reflections on the end of my sabbatical, with a reading list on societal change, Tessera's embeddings finish converting, Scrutineer continues to find security fixes galore, good news from Scotland. · 2,412 words

Mapping millions of little trees across the Cairngorms with airborne LiDAR.A good news paper in the Journal of Applied Ecology, using airborne LiDAR over Cairngorms Connect to map 2.65 million young trees and finding deer management is working. · 859 words

Week 38 ·

Near, far, wherever you are, Tessera infers on.Working through dClimate's wall-to-wall v1.1 Tessera embeddings, and finding threatened species near you with the Dash of Life. · 1,618 words

Week 37 ·

The humans aren't dead, the humans are ahead.Mathematics gets its AI reckoning after security, thinking through formative assessment for the CST Tripos, triaging Scrutineer bugs without panicking, and an Echo Labs visit. · 1,467 words

Code release: geotessera 0.10.3+1 earlierPython library interface to the Tessera geofoundation model embeddings

Hitting a NERVE with attacks on AI-powered brain-computer interfaces.New preprint defining attack dimensions for Brain Computer Interfaces and an analysis framework called EEGle. · 514 words

Open MPhil/Part II student projects for 2026-2027.A refreshed set of Part II and MPhil projects, split between environmental science problems that need computer science, and more conventional systems and programming languages topics. · 1,235 words

Week 36 ·

Ground control to major MODIS.Tessera v2 beta2 smooths space at the cost of time, new Pembroke Associate Scholars, Scrutineer's git remediation workflow, paying the Windows tax, and retiring AI disclosure metadata. · 2,013 words

Code release: ocaml-json-pointer 1.0RFC 6901 JSON Pointer implementation for jsont
Code release: ocaml-cstruct 6.3.0Access C-like structures directly from OCaml
Code release: ocaml-tdmrep 1.0OCaml combinators for the W3C TDM Reservation Protocol

August 2026

Security scanning my own code with Scrutineer and local coding models.Deploying Alpha-Omega's Scrutineer on a VM, driving its scans with a local GLM 5.3 on my Mac Studio, and thinking through practical workflows · 1,541 words

Week 35 ·

All I want for Tesseramas is (GP)U.Tessera v1.1 now also synced to Source Cooperative but we're short on GPUs for v2, Scrutineer security scans driven by a local GLM, PROPL 2026 videos are live, and TDM reservations in OCaml for Evidence TAP. · 1,099 words

The 3rd Programming for the Planet 2026 videos are available.Videos from the third Programming for the Planet (PROPL) workshop at PLDI 2026, and Cyrus Omar is visiting Cambridge on sabbatical for a year to drive followups! · 732 words

Celebrating a year of Tessera embeddings and releasing GeoTessera 0.10.It's been a whole year of Tessera embeddings hacking, GeoTessera 0.10 moves hosting to the Source Cooperative, with UTM-native Zarr routing and matryoshka reads. · 1,521 words

Code release: geotessera 0.10.1+1 earlierPython library interface to the Tessera geofoundation model embeddings
Week 34 ·

Am I human or am I antibotty.TESSERA v2 beta embeddings are in the TZE explorer, security embargoes being outrun by agents, opam packages now need humans behind them, prometheus and eio releases · 1,109 words

Just a rumour of a bug is enough to find a security exploit these days.Thinking through how the conventional OSS security embargoes no longer buy us time, and what open source maintainers might do instead to respond · 1,868 words

Code release: prometheus 2.0+1 earlierClient library for Prometheus monitoring
Code release: ocaml-cohttp 6.3.0An OCaml library for HTTP clients and servers

Using Forester to turn Foundations of CS into interactive evergreen lectures.Porting the FoCS lecture notes to Forester, including transclusions and stable section URLs, and a live OCaml toplevel compiled into the browser. · 2,049 words

Week 33 ·

Zarro rides out and evidence papers pour in.TESSERA 1.0 is now fully available as Zarr with global RGB previews, a weather downscaling preprint, and Evidence TAP gets a public website with progress on the downloader and parser. · 2,209 words

Improving local weather forecasts using Tessera embeddings.New paper showing that a frozen TESSERA embedding improves probabilistic weather downscaling, improving local temperature and wind predictions at never-observed sites. · 1,214 words

Week 32 ·

Finally a use for serverless and found the Forester for the trees.GETMobile micro-NPU article and package calculus published, TESSERA embeddings conversion using Fargate Spot, and starting to shift to Forester for teaching. · 1,987 words

Code release: dune-rpc-eio 0.1.0Client for dune's RPC server using Eio

Updating to the OxCaml 5.2.0-minus39 opam packaging.How the OxCaml overlay's guard packages keep incompatible releases out, and how to contribute to it with your own packages. · 926 words

GetMOBILE article on benchmarking micro-NPUs now out.Resource-constrained, MCU-scale neural processing units have emerged to provide real-time inference within milliwatt-scale power budgets. · 161 words

Week 31 ·

Sorting out Tessera and Evidence TAP infrastructure.A petabyte of TESSERA embeddings moves to Source Cooperative, and Taposaur's GROBID metadata index and capability-based downloader take shape for Evidence TAP, while Eio gets some native Windows support. · 3,151 words

Code release: dscheck 0.6.0Traced Atomics

July 2026

Code release: capnp-rpc 2.1.2Cap'n Proto is a capability-based RPC system with bindings for many languages
Week 30 ·

Bananas ripen, models open, and OxCaml releases.An OpenUK openness interview, prototyping the Evidence TAP site with exe.dev, Windows eio support finds a user in Forester, and a new grant for optimising ranger patrols. · 1,734 words

Code release: ocaml-cohttp 6.2.2An OCaml library for HTTP clients and servers
Code release: mdx 2.6.0Executable code blocks inside markdown files
Week 29 ·

Perfect weather, imperfectly measured, precisely predicted.My first viva in Law, a TESSERA stall at the House of Lords, downscaling the weather with embeddings, moving terabytes onto Source Cooperative, the Pembroke garden party, and a from-scratch shell makes progress. · 2,652 words

Week 28 ·

What fun papers piled up while I was out at sea.Back from the Arctic into a heatwave, hacking on Eio for the TESSERA sync engine, the Conservation Evidence team demoing at Parliament, and TESSERA on stage at the RAISE Summit in Paris. · 2,661 words

Week 27 ·

Somewhere over the icecap.On vacation in Greenland and Iceland. · 70 words

Code release: ocaml-uring 2.15.0OCaml bindings for Linux io_uring

June 2026

Week 26 ·

Gelato, geospatial, and players of games.Spoke at CHIA's annual conference on AI for a changing world, as well as the first Cloud-Native Geospatial Forum outside the US, and started moving TESSERA's embeddings onto Source Cooperative. · 804 words

A scorching CNG London during Climate Action Week.My notes from the first Cloud-Native Geospatial Forum gathering outside the US, up on the top floor of the Jellicoe; covering Source Cooperative's open data economics, Argentina's invisible settlements, and provenance and trust for geospatial decisionmaking. · 3,519 words

Week 25 ·

Planetary scale plans, Windows file-descriptor scale problems.Ten years of the CCI with Sir David Attenborough, Andrew's Royal Society Environment Medal lecture, and the third PROPL at PLDI, while wrapping a local DeepSeek agent in OCaml and a first stab at getting Eio fleshed out on Windows. · 2,112 words

Sir David Attenborough joins us to celebrate the Cambridge Conservation Initiative.Sir David Attenborough drops by for the Cambridge Conservation Initiative's tenth birthday in the DAB, and I spend the afternoon demoing TESSERA and the Dash of Life to a campus packed with visitors. · 708 words

Code release: xdge 1.1.0XDG Base Directory Specification support for Eio

The Royal Society Environmental Prize lecture on feeding the world without costing the earth.Notes from Andrew Balmford's Royal Society Environment Medal lecture, on why shifting diets and cutting food waste are necessary but not sufficient, and why sustainable high-yield farming tied to land sparing is the key to slowing the extinction crisis. · 2,906 words

Code release: ocaml-deepseek 0.1.0Deepseek v4 LLM

Language integrated LLMs as an OCaml function.Using a local DeepSeek model as an ordinary OCaml library and building sandboxed agents from simple primitives · 3,212 words

Week 24 ·

Apparently a professor now; still debugging io_uring at midnight.Made professor at Cambridge, shipped TESSERA v1.1, bound a local DeepSeek into OCaml after Fable cut out, and filled the gaps in io_uring and Eio. · 1,767 words

Tessera v1.1 released, with smoother and temporally stable embeddings.TESSERA v1.1 is a drop-in retrained model that fixes the tiling artefacts of v1.0, with embeddings now being served from AWS S3 and model weights up on Hugging Face. · 963 words

Code release: geotessera 0.9.0Python library interface to the Tessera geofoundation model embeddings
Week 23 ·

Earth Embeddings, Emails Everywhere, and ERRNOOOs.TESSERA on the ESA homepage and at CVPR, GeoTessera 0.9 stabilising onto S3/Zarr, io-uring in OCaml, carbon credits in New Scientist and WSJ, and musings on internet malware again. · 2,010 words

Tessera at CVPR 2026, and the front page of the European Space Agency!TESSERA gets its CVPR debut in Denver, the BBC hedgehog story trots on into national news, and the European Space Agency puts our model on their homepage! · 511 words

Self-hosting email the hard way from your own routable IPv4 block up.How we refreshed self-hosted Recoil email with our own RIPE-allocated IPv4 block, and deployed Postfix/rspamd/Dovecot to get full SPF/DKIM/DMARC deliverability. · 6,298 words

May 2026

Week 22 ·

From digital rewilding in Edinburgh to uring and Tessera hackery.Rewilding the Web workshop in Edinburgh, an OCaml io_uring binding refresh, and GeoTessera 0.9 moves the embeddings to AWS alongside a fresh HuggingFace org. · 701 words

Rewilding the Web: my workshop report from Edinburgh.Notes from a wonderfully interdisciplinary Edinburgh workshop on 'Rewilding the Web', ranging coopetition and biological variety through the philosophy of self-organisation, polycrisis governance, protopian science fiction, and moderation seen through the lens of artisanal cheese. · 5,518 words

Week 21 ·

Pint of Science, OxCaml dissertations, and TESSERA 1.1 stirring.After the BBC/ITV media run we had a talk at Pint of Science, two cracking Part II dissertations on CE/TESSERA and OxCaml vector RAG, and put TESSERA v1.1 weights on HuggingFace. · 851 words

What happens when a hedgehog story prickles its way into the BBC.Behind the scenes of a week of BBC/ITV news and radio appearances about hedgehogs and TESSERA, but also what to expect when a research story catches the news cycle. · 1,501 words

Code release: ocaml-tar 3.4.0Decode and encode tar format files in pure OCaml

Building OxCaml packages for Debian, Fedora, Homebrew and Arch.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. · 873 words

Week 20 ·

Putting OxCaml in a box and OCaml in orbit (again).Consolidating my OCaml trees for easier OxCaml deployment, shipping native system packages for OxCaml which then got into space, and remembering Peter Neumann · 601 words

Voluntary AI disclosure proposal for OCaml: update 1.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. · 1,053 words

Week 19 ·

Ancient oaks, parliamentary evidence, and TESSERA in the City.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. · 1,346 words

Code release: opam-0install-solver 0.6.0Opam solver using 0install backend
Week 18 ·

From tropical forest protection to oi swallowing its oxcaml tail.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. · 1,024 words

April 2026

Helping tropical forest protection keep up with a fast-changing world.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. · 1,765 words

Week 17 ·

Unwedging kernels, dogfood deployments, and managing beef leakage.Welcoming Akshay to Cambridge, TESSERA AWS sync done, oi now self-hosts this site, and a new 4C forest leakage preprint appears. · 1,117 words

AI, science and the UK–EU relationship at the Royal Society.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. · 2,232 words

Week 16 ·

Chennai, Cambridge, Belfast: a week on the wing.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 · 1,340 words

The FP Launchpad takes off at IIT Madras.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. · 3,228 words

Week 15 ·

Banyan trees, (anti)botnets and Bose-Einstein bases.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. · 1,491 words

The Internet needs an antibotty immune system, stat.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. · 1,450 words

Week 14 ·

Tracking AI screen time and escaping to pen and paper.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. · 1,872 words

Code release: geotessera 0.8.0Python library interface to the Tessera geofoundation model embeddings

A Proposal for Voluntary AI Disclosure in OCaml Code.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. · 1,330 words

March 2026

Week 13 ·

Oxidised, standardised, and syndicated.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. · 1,791 words

TESSERA now supports the Zarr geo-embeddings convention proposal.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. · 1,314 words

Week 12 ·

Zarr across space and TESSERA time.Reworking the TESSERA Zarr store layout after community feedback, Springer's API woes for evidence synthesis, vibecoding introspection, and git remote helpers for ATProto. · 1,008 words

Week 11 ·

Bins, bollards, bots and biodiversity boffins.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. · 1,612 words

Streaming millions of TESSERA tiles over HTTP with Zarr v3.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. · 1,858 words

Week 10 ·

Streaming TESSERA working, biodiversity action papers, and FPL takes off.TESSERA streaming in the browser, planetary programming at WG2.8, biodiversity action papers, FP Launchpad opens, and Docker CACM buzz · 2,094 words

Connecting the dots for biodiversity action from the NAS/Royal Society Forum.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. · 2,405 words

Week 9 ·

Browser TESSERA, package management and Docker in the CACM.Got TESSERA working in Zarr and the browser, and a preprint of package management a la carte pushed out · 944 words

February 2026

A Decade of Docker Containers on the CACM cover!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. · 859 words

Week 8 ·

At AI summit, Shriram's PL opinions, Zarr hacking.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. · 1,202 words

At the AI Impact Summit in Delhi: people, planet, progress.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. · 1,747 words

1st TESSERA/CoRE hackathon at the Indian AI Summit.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. · 800 words

Week 7 ·

Storage, Lego, Echo, and the IUCN.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. · 1,336 words

Code release: geotessera 0.7.5Python library interface to the Tessera geofoundation model embeddings
Week 6 ·

Vivas, ARIA and interviews.PhD viva for Maddy, presenting TESSERA at ARIA, Nature covers the conservation evidence conference, giving evidence to Parliamentary POST, and a CACM interview. · 902 words

Discussing effective conservation with all the UK Chief Scientists.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. · 802 words

My (very) fast zero-allocation webserver using OxCaml.Building httpz, a high-performance HTTP/1.1 parser with zero heap allocation using OxCaml's unboxed types, local allocations, and mutable local variables. · 3,211 words

Week 5 ·

An OxCaml hacking week.Deploying an OxCaml zero-allocation webserver, OCaml CI maintenance and opam versioning, and OCaml Workshop and FOSDEM talks · 579 words

January 2026

Code release: dune-release 2.2.0Release dune packages in opam
Code release: geotessera 0.7.4Python library interface to the Tessera geofoundation model embeddings
Week 4 ·

Travelling and tracking TESSERA activity.Tracking TESSERA activity including a new preprint and podcast, wrestling with Zarr, and saying farewell to David Allsopp. · 515 words

Code release: capnp-rpc 2.1.1Cap'n Proto is a capability-based RPC system with bindings for many languages
Code release: opam-repomin 1.0.0Minimize opam repository overlays into one unified repo
Week 3 ·

TESSERA scaling and speaking at AI4Nature's launch.Scaling TESSERA embeddings on Vultr AMD GPUs, speaking at the AI4Nature launch in London, and picking up Tomas Petricek's new PL book. · 522 words

Five ways to use the LIFE metric for conservation decision-making.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. · 1,324 words

Week 2 ·

Back from India and straight into the conservation conference.Hosting the Conservation Evidence conference at Pembroke, recovering from the India trip, and keeping up with LLM developments. · 495 words

Devcontainer for using O(x)Caml and Claude in your projects.A prebuilt Docker devcontainer for sandboxed OCaml and OxCaml development with Claude Code, including multiarch builds and network isolation. · 407 words

Week 1 ·

Easing into the new year with reading, temples and mosquitos.Family travels through Udaipur, Vijayawada and Hyderabad, visiting temples and villages, plus kicking off the TESSERA 2025 embeddings. · 122 words

Happy new year and my fave readings of the year.My favourite books, podcasts and recommendations from 2025, covering moral ambition, maps, wolves, AI dystopias, geopolitics, Chennai history, and the best tech podcasts. · 2,144 words

December 2025

2025 Advent of Agentic Humps: Building a useful O(x)Caml library every day.An exploration of agentic programming through building useful OCaml libraries daily using Claude Code while establishing groundrules for responsible development. · 1,594 words

AoAH Day 25: Claude OCaml Marketplace for all your festive coding needs.Wrapping up 25 days of agentic coding with a Claude Code OCaml plugin marketplace to share the skills and tools developed throughout the series. · 283 words

AoAH Day 24: Tuatara, an evolving Atom aggregator that mutates.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. · 1,126 words

AoAH Day 23: Unpac unifies git branching with package management.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. · 2,271 words

Dear ACM, you're doing AI wrong but you can still get it right.Critiquing ACM's paywalled AI paper summaries and proposing better alternatives like open feeds, easier downloads, provenance tracking, and personalised agentic interfaces. · 2,046 words

AoAH Day 22: Assembling monorepos for agentic OCaml development.Materialising opam metadata into git submodules and monorepos, enabling cross-cutting fixes and unified odoc3 documentation across dozens of OCaml libraries. · 1,855 words

AoAH Day 21: Complete dynamic HTML5 validation in OCaml and the browser.Porting the W3C's Nu HTML Validator from Java to OCaml and running in the browser dynamically · 1,656 words

AoAH Day 20: Human language detection in native code, JS and wasm.Porting the Nu HTML Validator's language detection to OCaml, then optimizing from 115MB to 28MB and fixing WASM array limits for browser deployment. · 1,445 words

AoAH Day 19: Zulip bot framework to bring Vicuna the friendly camel back.Building an OCaml Zulip bot framework with functional handlers, and pivoting from TOML to INI codecs for Python configparser compatibility · 1,591 words

AoAH Day 18: TOML 1.1 codecs directly from the spec and paper.Building tomlt, a pure OCaml TOML 1.1 parser with bidirectional codecs following the jsont design patterns · 1,136 words

AoAH Day 17: OCaml JMAP to plaster my painful email papercuts.Building an OCaml JMAP client that runs in browsers and CLI, then using it to build personalised email workflows for taming notification overload. · 1,707 words

Code release: geotessera 0.7.3+1 earlierPython library interface to the Tessera geofoundation model embeddings

AoAH Day 16: Vibesplaining JSON Pointers using OCaml/Javascript.Building interactive OCaml tutorials that compile to JavaScript, using agents to generate executable documentation that teaches protocols like JSON Pointer while you code review. · 1,573 words

AoAH Day 15: Porting a complete HTML5 parser and browser test suite.Vibespiling JustHTML from Python to pure OCaml, achieving 100% pass rate on the browser html5lib test suite using agentic workflows. · 1,387 words

AoAH Day 14: Debugging a Karakeep CLI against the live service.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. · 813 words

AoAH Day 13: Heckling an OCaml HTTP client from 50 implementations in 10 languages.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. · 2,006 words

AoAH Day 12: Eio Connection pooling and event tracing.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. · 792 words

AoAH Day 11: HTTP Cookies and vibing RFCs for breakfast.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. · 1,631 words

AoAH Day 10: Building a TUI for Sortal using Mosaic.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. · 653 words

AoAH Day 9: Adding a Bonsai terminal UI to Sortal.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. · 1,040 words

Publish, Review, Curate to upend scholarly publishing.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. · 1,562 words

AoAH Day 8: Building a contacts CLI manager with Sortal.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. · 915 words

AoAH Day 7: Converting between JSON and Yaml with yamlt.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. · 706 words

AoAH Day 6: Getting a Yaml 1.2 implementation in pure OCaml.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. · 897 words

AoAH Day 5: Bytesrw Eio adapters and automating opam metadata.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. · 941 words

AoAH Day 4: Going recursive with Claudeio for Claude.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. · 745 words

Foundational AI for Ecosystem Resilience workshop.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. · 1,500 words

AoAH Day 3: XDG filesystem paths using Eio capabilities.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. · 1,030 words

AoAH Day 2: Building an OCaml JSONFeed library.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. · 991 words

The AI French Connection to the Practice of Science.Reflections on the Franco-British AI collaboration workshops exploring how AI is transforming scientific practice, plus follow-up funding for the Conservation Copilot project. · 710 words

AoAH Day 1: Building a Base32 Crockford library in OCaml.Building a Base32 Crockford encoding library in OCaml using Claude Code, establishing the development workflow with sandboxed Docker containers and local development environments. · 572 words

November 2025

Code release: xdge 1.0.0XDG Base Directory Specification support for Eio

Four Ps for Building Massive Collective Knowledge Systems.Design principles for collective knowledge systems—permanence, provenance, permission, and placement—that enable robust networks for evidence-based decision making. · 4,169 words

Code release: geotessera 0.7.1+1 earlierPython library interface to the Tessera geofoundation model embeddings

GeoTessera 0.7 out with efficient sampling and Zarr support.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. · 1,228 words

Code release: ocaml-crockford 1.0.0Crockford Base32 encoding for OCaml
Code release: ocaml-jsonfeed 1.0.0+1 earlierJSON Feed format parser and serializer for OCaml

On the path to the UK/India AI Summit with OpenUK and the ATI.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. · 1,433 words

Food and the long term risk to life.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. · 127 words

Jensen Huang receives the Hawking Fellowship at Cambridge.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. · 1,280 words

3 quiet weeks

October 2025

A Roundup of ICFP/SPLASH 2025 happenings.Five-part series overview covering workshops, tutorials, talks and keynotes from ICFP/SPLASH 2025 in Singapore. · 239 words

What I learnt at ICFP/SPLASH 2025 about OCaml, Hazel and FP.Highlights from ICFP/SPLASH 2025 including Hazel live programming, OCaml AI tooling, formally verified GC, and cross-community discussions between Haskell and OCaml. · 2,017 words

It's time to go post-POSIX at ICFP/SPLASH 2025.VMIL keynote arguing for post-POSIX shared memory interfaces like io_uring in language runtimes for high-performance concurrent computing. · 852 words

Jane Street and Docker on moving to OCaml 5 at ICFP/SPLASH 2025.Jane Street's production deployment of OCaml 5 and Docker's migration to direct-style programming with Eio presented at ICFP. · 1,839 words

Holding an OxCaml tutorial at ICFP/SPLASH 2025.Tutorial at ICFP 2025 on OxCaml extensions for performance engineering with modes and locals. · 1,485 words

Programming for the Planet at ICFP/SPLASH 2025.Report on second Programming for the Planet workshop featuring papers on climate modeling, geospatial computation and planetary-scale collaborative systems. · 3,154 words

September 2025

Code release: ocaml-uring 2.7.0OCaml bindings for Linux io_uring
Code release: ocaml-iomux 0.4IO Multiplexer bindings

Do not rule out nature from climate action; an open letter.Open letter to UN Article 6.4 supervisory body advocating for nature-based climate solutions alongside durable carbon sequestration technologies. · 419 words

Exploring the biodiversity impacts of what we choose to eat.Nature Food paper revealing food choice biodiversity impacts vary by three orders of magnitude with interactive global explorer tool. · 519 words

1 quiet week

August 2025

GeoTessera Python library released for geospatial embeddings.Release of GeoTessera Python library and CLI for accessing TESSERA geospatial foundation model embeddings with interactive visualization tools. · 1,044 words

Presenting our Ecology of the Internet ideas at Aarhus 2025.Presentation at Aarhus 2025 on Internet ecology, proposing AI-driven software diversity to fight protocol ossification and create more resilient networks. · 1,483 words

mlgpx is the first Tangled-hosted package available on opam.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. · 391 words

Tracking locations with OwnTracks, Life Cycle and Home Assistant.Setting up self-hosted location tracking using OwnTracks and reverse engineering Life Cycle app data with Claude Code for field work in Botswana. · 1,588 words

3 quiet weeks

July 2025

Cresting the OCaml AI humps.Community efforts to improve agentic coding experience for OCaml including MCP libraries, opam embeddings, and tooling improvements. · 258 words

Using Kyutai's low latency audio models on macOS in one command.Quick setup guide for running Kyutai's high-quality speech-to-text model locally on Mac using their MLX implementation. · 135 words

Royal Society's Future of Scientific Publishing meeting.Live notes from Royal Society conference on scientific publishing challenges including peer review crisis, AI poisoning threats and open access economics. · 3,906 words

Is AI poisoning the scientific literature? Our comment in Nature.Nature comment on AI-generated paper threats to evidence synthesis proposing federated living evidence databases with human-in-loop review. · 546 words

1 quiet week

June 2025

EEG internships for the summer of 2025.Coordination note for summer 2025 undergraduate and graduate internships covering projects from evidence databases to remote sensing and embedded systems. · 1,359 words

BIOMASS launches to measure forest carbon flux from space.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. · 305 words

Steps towards an ecology of the Internet.Paper exploring biological ecosystem models as inspiration for Internet architecture evolution towards trillion-node scale at Aarhus 2025. · 623 words

1 quiet week

Under the hood with Apple's new Containerization framework.Technical deep dive into Apple's new macOS Tahoe containerization framework using Kata Containers and Swift-based implementation. · 1,934 words

Visiting National Geographic HQ and the Urban Exploration Project.Visit to National Geographic HQ for workshop on global urban wildlife tracking initiative and human-wildlife coexistence research. · 1,155 words

What I learnt at the National Academy of Sciences US-UK Forum on Biodiversity.Report from NAS/Royal Society forum on standardized biodiversity measurement technologies covering foundation models, eDNA and evidence synthesis. · 2,343 words

May 2025

We become Junior Rangers at Shenandoah.Earning Junior Ranger badges at Shenandoah National Park and recording Conservation Concepts video series episode. · 386 words

New preprint survey on energy-aware deep learning on embedded hardware.Survey paper on energy-aware approaches for optimizing deep learning training and inference on embedded devices. · 175 words

Out-of-the-box LLMs are not ready for conservation decision making.PLOS One publication showing pretrained LLMs perform poorly on conservation questions but improve dramatically with Conservation Evidence database training. · 377 words

Learnings from the Cambridge Environmental Sustainability Committee.Insights from Cambridge University's Environmental Sustainability Strategy Committee on carbon reduction, biodiversity, and operational sustainability progress. · 842 words

Humans are the ones that will save nature, helped by AI.Discussion of responsible AI adoption in conservation, emphasizing human agency and equity over technological solutions. · 537 words

The Cambridge "Green Blue" competition to reduce emissions.Thinking about a Cambridge "Green Blue" competition to reduce emissions among Colleges, promoting cooperation through a semi-competitive league · 4,038 words

Using Komodo to manage Docker compose on a small cluster.Guide to deploying Komodo container management tool with Wireguard mesh networking for coordinating Docker services across multiple hosts. · 629 words

1 quiet week

April 2025

Technology needs to unite conservation, not divide it.Response to critique of AI in conservation emphasizing participatory design, open source tools and equitable capacity building in Global South. · 1,481 words

Viewing web logs the old fashioned way with Goaccess.Guide to using Goaccess privacy-preserving server-side log analyzer with Caddy JSON logs for web analytics. · 426 words

Talks from LOCO24 are now available online.LOCO24 conference talks now available on self-hosted video platforms with peer-to-peer redundancy. · 197 words

Webassembly on exotic architectures (a 2025 roundup).Survey of WebAssembly implementations on non-traditional targets including native Linux port, kernel-mode runtime, POSIX browser support and FPGA ports. · 1,130 words

ESA's first BioSpace conference seems a huge success.Report on ESA's first Biodiversity Insights from Space conference featuring presentations on urban tree management and remote sensing biodiversity metrics. · 793 words

Unikernels wins the ASPLOS most influential paper award.2013 MirageOS unikernels paper wins ASPLOS influential paper award with reflections on the journey from rejection to recognition. · 1,524 words

Semi distributed filesystems with ZFS and Sanoid.Exploring ZFS and Sanoid for distributed filesystem management with automated snapshots and replication to replace centralized NFS storage. · 1,676 words

2nd Programming for the Planet workshop CFP out.Call for papers for PROPL 2025 workshop on programming methods for climate and biodiversity research at ICFP/SPLASH Singapore. · 565 words

March 2025

New preprint on benchmarking ultra-low power neural accelerators.Preprint analyzing dedicated ultra-low-power neural network accelerators in modern embedded chipsets for edge computing applications. · 162 words

LIFE becomes an Official Statistic of the UK government.LIFE biodiversity metric becomes UK government Official Statistic to track consumption's environmental impact. · 629 words

A fully AI-generated paper just passed peer review; notes from our evidence synthesis workshop."AI-generated paper passes peer review, sparking discussion on evidence synthesis and AI's role in policymaking." · 1,565 words

Socially self-hosting source code with Tangled on Bluesky.Self-host source code with Tangled on Bluesky for decentralized Git repositories. · 1,104 words

Our EEG group discussion on 'useful' AI tools.EEG group discusses useful AI tools and emerging techniques in productivity and research. · 712 words

Are you still using OCaml 4.08 or earlier? If so, we need to know.OCaml users: share your needs regarding older versions to help determine support for OCaml 4.08 and earlier. · 313 words

Oh my Claude, we need agentic copilot sandboxing right now.Claude Code auto-generates OCaml bindings, but lacks robust sandboxing. · 2,125 words

February 2025

The AIETF arrives, and not a moment too soon.IETF's new AI Preferences Working Group aims to standardize protocols for expressing preferences on AI content collection and processing. · 1,661 words

A trio of papers I read on biodiversity and forests this week.Exploring biodiversity and forests through 3 papers on AI, 3D reconstruction, and a tree-measuring mobile app. · 793 words

Thoughts on the National Data Library and private research data.Exploring the National Data Library and its potential to improve access to private research data while balancing security and privacy concerns. · 2,532 words

About.Professor Anil Madhavapeddy's research combines computer science and conservation at the University of Cambridge · 455 words

Updated preprint on quantifying biodiversity cost of food consumption.Revised preprint on quantifying biodiversity cost of global food consumption using LIFE metric combined with supply chain data and provenance modeling. · 196 words

Disentangling carbon credits and offsets with contributions.Clarifying carbon credits, offsets, and contributions to understand effective climate action strategies · 3,552 words

Using AT Proto for more than just Bluesky posts.Explore alternative uses for AT Proto beyond Bluesky posts, enabling self-sovereign digital infrastructure and innovative apps. · 684 words

Entering the Matrix with Hookshot.Hookshot integrates Matrix with external services like GitHub and Atom feeds for enhanced group communications. · 513 words

Programming FPGAs using OCaml.Learn FPGA programming with OCaml using HardCaml. · 1,214 words

Fake papers abound in the literature.AI-generated papers are contaminating scientific literature at a rapid pace · 411 words

Satellites are getting too good for forest carbon?Satellites are getting too accurate for forest carbon estimation due to high resolution. · 515 words

Deepdive into Deepseek advances.Explore DeepSeek's advances in AI technology, including Multi-headed Latent Attention and Mixture of Experts. · 266 words

January 2025

How to publish custom Homebrew taps for OCaml.Publish custom OCaml Homebrew taps with a simple GitHub workflow. · 658 words

Position paper on scientifically credible carbon credits.Experts outline steps to restore scientific credibility in the voluntary carbon market. · 186 words

Arise Bushel, my sixth generation oxidised website.Learn about my sixth generation oxidised website built with a bleeding-edge OCaml variant. · 848 words

Updated preprint on LLMs for evidence-based decision support.Updated preprint with additional evaluation results on using LLMs for expert-level evidence synthesis queries in conservation. · 121 words

1 quiet week

LIFE metric published in Royal Society Phil Trans B.Publication of LIFE biodiversity metric quantifying relative impacts of human actions on species extinctions through spatially explicit habitat loss analysis. · 409 words

Teaching at Cambridge.Teaching computer science courses at Cambridge University since 2012. · 173 words

Foundations of Computer Science.Resources for teaching Foundations of Computer Science with OCaml and Jupyter notebooks. · 186 words

3 quiet weeks

December 2024

Horizon scan on AI and conservation published.Horizon scan published in Trends in Ecology and Evolution on prioritizing AI projects to accelerate conservation efforts while minimizing harm. · 187 words

Towards verifiable, privacy-preserving carbon emissions claims.Paper on mechanisms for verifiable and privacy-preserving carbon emissions reporting across cloud service supply chains at LOCO workshop. · 145 words

Towards a frugal userspace for Linux.LOCO paper presenting Shark shell for deterministic, reusable Linux computation using kernel namespaces to reduce computational costs. · 170 words

Prototyping carbon-aware domain name resolution.Extending DNS with carbon-aware load balancing and OCaml-based DNS server for sustainable Internet infrastructure presented at LOCO. · 125 words

Cooperative Sensor Networks for Long-Term Biodiversity Monitoring.LOCO 2024 presentation on Terracorder project combining machine learning and ESP32 for cooperative biodiversity monitoring networks. · 43 words

November 2024

Code release: ocaml-cohttp 6.0.0An OCaml library for HTTP clients and servers

Royal Society and DeepMind host AI for Science Forum.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. · 6,212 words

2 quiet weeks

Published a legal perspective on high integrity forest carbon credits.Paper exploring legal framework for forest carbon credits that separates carbon tenure from carbon rights, published in Climate and Carbon Law Review. · 94 words

Presented poster at Sensys on low-power biodiversity monitoring.Poster presentation at ACM Sensys 2024 on biodiversity sensing work with Terracorder platform. · 140 words

Preprint on using LLMs to for evidence-based decision support.Preprint on using LLMs for conservation evidence based on large-scale academic literature crawling. · 120 words

Paper on scheduling for reduced tail task latencies.SOCC 2024 presentation on Murmuration scheduler achieving 15-25% faster Kubernetes job completion times in busy datacenters. · 151 words

October 2024

Code release: jekyll-format 0.3.4Jekyll post parsing library

Mapping greener futures with planetary computing.Lecture to UCL Institute for Global Prosperity Masters students on planetary computing, covering LIFE and FOOD papers. · 40 words

1 quiet week

On the SOCC 2024 PC.Serving on the ACM SOCC 2024 program committee revealed a shift towards machine learning research. · 73 words

Royal Society meeting on ecological/commercial risks.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. · 6,736 words

1 quiet week

September 2024

Being on the HotNets 2024 program committee.Serving on HotNets 2024 program committee was a great experience with a novel structure. · 525 words

1 quiet week

Mitigating credit reversal risks in nature-based solutions.Mitigating credit reversal risks in nature-based solutions with predictive release schedules. · 355 words

Towards security specifications for agentic AIs.ACM HOPE talk on using F* specifications to protect systems against over-eager or rogue AI agents. · 183 words

New teaching page with my Computer Science courses.Explore my new teaching page featuring Computer Science courses and materials. · 43 words

Building species models of the planet.Researchers receive £1.2m grant to build species models for planetary intelligence. · 339 words

August 2024

Paper published on ex-ante forecasts of nature-based solutions.Journal of Carbon Management publication on ex-ante projection methodologies for evaluating nature-based carbon solutions. · 99 words

PACT Tropical Moist Forest Accreditation Methodology.Release of Tropical Moist Forest v2.1 specification with new explainer and clarifications for buffer zones and base tiles. · 108 words

1 quiet week

Nature Sustainability commentary on carbon and biodiversity credits.Experts discuss reforming carbon and biodiversity credits markets for effective forest conservation and climate benefit. · 509 words

1 quiet week

Preprint on Terracorder sensing now available.Preprint on ultra-low-power ESP32-based biodiversity sensor using Q-learning to optimize cooperative network operations. · 126 words

Nature Sustainability article on carbon/biodiversity credits.Nature Sustainability commentary on nature-based carbon and biodiversity credit markets. · 111 words

1 quiet week

July 2024

New set of ideas for incoming students.Explore new project ideas for CST Part II, MPhil, and PhD students starting in 2024-2025. · 54 words

COMPASS 2024 report on the CoRE stack RIC meeting.Report from COMPASS 2024 on the CoRE stack RIC meeting on climate adaptation for rural communities using digital public infrastructure and commoning technologies · 4,361 words

Second preprint of the LIFE biodiversity metric available.Updated LIFE biodiversity metric preprint based on reviewer feedback, accepted for publication in Royal Society special issue. · 122 words

June 2024

Speaking at CCI workshop on conservation evidence.Talk at CCI Effectiveness Revolution workshop on conservation copilots and embedding evidence into conservation decision-making. · 74 words

Code release: ocaml-sitemap 1.0Generate XML sitemaps
1 quiet week

Interview with AI@CAM about conservation.Discussing conservation with AI@CAM and using AI to transform biodiversity conservation efforts. · 173 words

Hyperspectrally identifying trees in tropical forests.Preprint on using hyperspectral sensors and CNN tree-crown segmentation for tropical tree species identification. · 55 words

3 quiet weeks

May 2024

Programming for the Planet.Planetary computing keynote at LambdaDays conference featuring interview video on biodiversity and satellite sensing work. · 58 words

3 quiet weeks

Quantifying the impact of the food we eat on species extinctions.Preprint on quantifying biodiversity cost of global food consumption submitted for peer review. · 112 words

Predicting species using machine learning at CCAI.MPhil research on using CNNs with satellite data for species distribution modeling presented at ICLR CCAI workshop in Vienna. · 115 words

3 quiet weeks

April 2024

Teaching 1A Security and Software Engineering.Lecturers step in to teach Software and Security Engineering course after Ross Anderson's passing. · 107 words

Global, robust and comparable digital carbon assets.Paper on PACT stablecoin implementation using blockchain smart contracts for transparent and scalable carbon credit transactions at ICBC 2024. · 107 words

Rolling out a new site design.New site design launched after 20 year redesign featuring Bushel content manager preview. · 83 words

4 quiet weeks

March 2024

Preprint available on insuring against variability of NbS.Preprint on ex-ante pricing models for mitigating credit reversal risk in nature-based climate solutions through optimal carbon release anticipation. · 100 words

Green Urban Equity: Analyzing the 3-30-300 Rule in UK Cities and Its Socioeconomic Implications.Abstract on analyzing urban green space access and equity across UK cities using remote sensing and machine learning at EGU 2024. · 103 words

A Case for Planetary Computing.Revised preprint on planetary-scale infrastructure for ingesting and analyzing global environmental data with traceability and reproducibility. · 96 words

2 quiet weeks

February 2024

Selected in the AI@CAM challenge for conservation research.Won the AI@CAM challenge towards climate and nature conservation research using remote sensing and LLMs · 230 words

Uncertainty at scale: how CS hinders climate research.Paper examining how computer science approaches to uncertainty impact climate research practices at Undone CS workshop. · 100 words

8 quiet weeks

December 2023

Joined the Royal Society fellowships committee.I joined the Royal Society's Newton International Fellowships committee to help select international researchers for UK-based projects. · 78 words

PACT Tropical Moist Forest Accreditation Methodology.Release of Tropical Moist Forest v2.0 specification with significant methodology updates. · 98 words

3 quiet weeks

November 2023

Code release: jekyll-format 0.3.3Jekyll post parsing library
Code release: ocaml-yaml 3.2.0Parse and generate YAML 1.1/1.2 files

BBC report on the new Cambridge supercomputer ("Dawn") announced at the 2023 AI Summit.BBC interview about the Dawn supercomputer announced at 2023 AI Summit. · 100 words

Where on Earth is the Spatial Name System?Paper on spatial name system architecture extending DNS with geographic routing capabilities at HotNets 2023. · 99 words

Nature Climate Change paper on impermanent carbon credits.Publication of research on valuing impermanent carbon credits in Nature Climate Change with extensive press coverage. · 99 words

First preprint of LIFE biodiversity metric available.First preprint on new LIFE metric for global biodiversity now available for review. · 118 words

1 quiet week

October 2023

Cambridge Zero highlights University efforts at Climate Week NYC.Cambridge University highlights climate efforts at NYC Climate Week. · 166 words

Code release: ocaml-uring 0.8OCaml bindings for Linux io_uring
1 quiet week

Information Flow Tracking for Heterogeneous Compartmentalized Software.RAID 2023 paper on Deluminator interface for decentralized information flow control in compartmentalized software. · 96 words

Enabling Lightweight Privilege Separation in Applications with MicroGuards.Paper on MicroGuards memory API for lightweight privilege separation presented at ACNSW. · 63 words

2 quiet weeks

September 2023

Functional Programming for the Planet.Keynote presentation at ICFP 2023 on functional programming for the planet. · 68 words

State of the OCaml Platform 2023.Annual OCaml Workshop presentation reviewing a decade of progress from opam 1.0 to modern toolchain including Dune and LSP server. · 101 words

Eio 1.0 – Effects-based IO for OCaml 5.OCaml Workshop 2023 update on the Eio effects-based IO library for OCaml 5. · 100 words

2 quiet weeks

August 2023

Code release: odoc 2.2.1OCaml Documentation Generator
1 quiet week

July 2023

Code release: omd 2.0.0.alpha4Markdown frontend in pure OCaml.
3 quiet weeks

Preprint on the social value of impermanent carbon credits.Preprint using Social Cost of Carbon to create a discount function for valuing impermanent carbon credits. · 119 words

June 2023

OCaml wins the ACM Programming Language Software award.OCaml wins 2023 ACM Programming Languages Software Award for its impact on research and tools. · 236 words

2 quiet weeks

PACT Tropical Moist Forest Accreditation Methodology.Publication of Tropical Moist Forest v1.0 specification using counterfactual dynamic baselines for calculating REDD+ project additionality, leakage and permanence. · 124 words

3 quiet weeks

May 2023

Credit credibility threatens forests.Perspective in Science magazine on the credibility of carbon credits and their importance for tropical forest protection. · 197 words

1 quiet week

April 2023

Code release: ocaml-uri 4.3.0An RFC3986 URI/URL parsing library
2 quiet weeks

March 2023

Code release: ocaml-ipaddr 5.5.0A library for manipulation of IP (and MAC) address representations
2 quiet weeks

Leveraging Scientific Innovation and AI to Scale Carbon Markets.Discussion with Mantle Labs exploring applications of AI to carbon credits markets. · 69 words

A Case for Planetary Computing.Preprint presenting the case for planetary-scale computing infrastructure and applications. · 101 words

7 quiet weeks

January 2023

OCaml.org: recapping 2022 and queries on the Fediverse.Recapping OCaml's 2022 progress and exploring Fediverse integration. · 53 words

6 quiet weeks

November 2022

Financing Forests: A Credible Approach towards Halting Tropical Deforestation.Wednesday seminar presentation on using carbon credits to finance tropical forest conservation. · 63 words

1 quiet week

17th William Pitt Seminar - Who's in Charge?Opening talk at Pembroke College's climate change seminar on global biodiversity status and individual agency for conservation action. · 40 words

4 quiet weeks

October 2022

The 2nd ed of Real World OCaml is available in shops.Second edition of Real World OCaml now available from Cambridge University Press, with free online and PDF versions. · 105 words

3 quiet weeks

September 2022

Homogeneous Builds with OBuilder and OCaml.Paper on OCurrent incremental computation DSL presented at OCaml Workshop 2022. · 64 words

16 quiet weeks

May 2022

Trusted Carbon Credits.Interview in Vox magazine expressing skepticism about Adam Neumann's carbon credit startup, emphasizing supply shortage over trading efficiency. · 76 words

1 quiet week

April 2022

OCaml Multicore Monthly: heading towards OCaml 5.0.OCaml 5.0 approaches with BSD support and ARM64 multicore. · 21 words

9 quiet weeks

February 2022

OCaml Multicore Monthly: post merge activites.OCaml 5.0 merge complete, focusing on release preparation. · 35 words

5 quiet weeks

January 2022

Enhancing the Security & Privacy of Wearable Brain-Computer Interfaces.Preprint introducing Argus information flow control system addressing security vulnerabilities in wearable BCI devices. · 80 words

December 2021

OCaml Multicore Monthly: code review complete with Inria.OCaml multicore support code review completed with Inria developers. · 31 words

6 quiet weeks

November 2021

Launching the Cambridge Centre for Carbon Credits.Introducing the Cambridge Centre for Carbon Credits to combat climate change and biodiversity loss. · 167 words

What is an Operating System?Learn what an operating system is and its evolving role. · 136 words

4 quiet weeks

October 2021

OCaml Multicore Monthly: effect handling confirmed for 5.0.OCaml 5.0 to include effect handling and multicore support. · 34 words

September 2021

Forest preservation and restoration.Forest preservation and restoration efforts and resources compiled for reference. · 216 words

Decentralised tech on Recoil.Recoil's decentralized tech stack includes email, web, and chat services. · 458 words

2 quiet weeks

August 2021

Roadmap for OCaml's online presence.Overhauling OCaml's online presence with a modern new website. · 31 words

3 quiet weeks

How Computer Science Can Aid Forest Restoration.Preprint exploring how computer science techniques could contribute to forest preservation and restoration efforts. · 74 words

Experiences with Effects.Paper on programming with effects in OCaml presented at OCaml Workshop. · 63 words

7 quiet weeks

June 2021

Retrofitting effect handlers onto OCaml.Paper on retrofitting effect handlers into OCaml runtime presented at PLDI 2021. · 69 words

30 quiet weeks

November 2020

Banyan: Coordination-Free Distributed Transactions over Mergeable Types.Paper on coordination-free distributed transactions using mergeable replicated data types at ASPLAS 2020. · 66 words

7 quiet weeks

September 2020

The OCaml Platform: 2020.Annual OCaml Workshop update on the OCaml Platform development toolchain. · 56 words

August 2020

State of the OCaml Platform 2020.Talk on next steps for the OCaml Platform development tools, delivered online during the pandemic. · 62 words

OCaml Multicore Monthly: systhreads compatibility merged.OCaml Multicore now supports systhreads compatibility for seamless integration. · 96 words

2 quiet weeks

Retrofitting parallelism onto OCaml.Best paper award at ICFP 2020 for multicore garbage collector design maintaining backwards compatibility for sequential OCaml code. · 83 words

Parallelising your OCaml Code with Multicore OCaml.OCaml Workshop paper on techniques for parallelizing OCaml code using multicore features. · 61 words

OCaml-CI: A Zero-Configuration CI.Presentation of new OCaml DSL for continuous integration at the OCaml Workshop. · 80 words

12 quiet weeks

April 2020

OCaml Multicore Monthly: preprint paper available.Preprint of OCaml 5 multicore runtime paper available now · 39 words

8 quiet weeks

February 2020

The First Billion Real Deployments of Unikernels.Discussion of unikernel deployments at scale reaching billions of users. · 62 words

Rebuilding Operating Systems with Functional Principles.Distinguished lecture series at University of St Andrews on functional programming principles applied to operating systems design. · 69 words

Programming the Next Trillion Embedded Devices.Talk on programming approaches for the coming wave of embedded devices. · 90 words

3 quiet weeks

January 2020

OCaml Multicore Monthly: starting upstream to OCaml.Upstreaming multicore OCaml to mainline OCaml has begun, with opportunities for community contribution through testing and feedback. · 94 words

21 quiet weeks

August 2019

OpenBSD cloud hosting options.Explore OpenBSD cloud hosting options for bare-metal and dedicated servers. · 92 words

3 quiet weeks

The OCaml Platform in 2019.Annual update on OCaml Platform development and ecosystem progress. · 55 words

MirageOS 4: the dawn of practical build systems for exotic targets.Paper on the MirageOS 4 build system presented at OCaml Workshop. · 68 words

12 quiet weeks

May 2019

Programming Unikernels in the Large via Functor Driven Development.Preprint on programming unikernels using ML modules and functors. · 68 words

8 quiet weeks

March 2019

Snape: The Dark Art of Handling Heterogeneous Enclaves.EdgeSys 2019 paper on framework for rearchitecting applications to better support trusted execution environments. · 69 words

13 quiet weeks

November 2018

New opam repository layout for large libraries.Introducing a new opam repository layout for managing large libraries and packages. · 42 words

6 quiet weeks

October 2018

A modular foreign function interface.Journal paper on building modular foreign function interfaces. · 69 words

17 quiet weeks

June 2018

Bounding data races in space and time.Paper on the OCaml memory model and underlying theory presented at PLDI 2018. · 73 words

8 quiet weeks

April 2018

Concurrent System Programming with Effect Handlers.Paper on concurrent systems programming using effect handlers presented at TFP 2017. · 80 words

An architecture for interspatial communication.Paper on interspatial networking architecture presented at HotPOST 2018. · 71 words

3 quiet weeks

March 2018

Founded Tarides and looking to hire OCaml hackers.Tarides, a Paris-based startup, seeks OCaml hackers to build secure network services with MirageOS and Irmin. · 108 words

24 quiet weeks

September 2017

State of the OCaml Platform.Talk presenting the current state of the OCaml Platform toolchain and development ecosystem. · 95 words

The State of the OCaml Platform: Sep 2017.Annual update on OCaml Platform development presented at ICFP. · 54 words

Effectively tackling the awkward squad.Paper on tackling awkward IO patterns using effect handlers. · 83 words

15 quiet weeks

May 2017

Opening discuss.ocaml.org for the community.Introducing discuss.ocaml.org, a new community forum for OCaml discussion and feedback. · 28 words

DaLi: Database as a Library.Position paper on building databases-as-a-library presented at SNAPL 2017. · 81 words

28 quiet weeks

October 2016

Unikernels: the rise of the library hypervisor in MirageOS.DockerCon talk on integrating MirageOS unikernels with Docker using library hypervisor approach for Docker Desktop. · 65 words

14 quiet weeks

June 2016

MirageOS Summer 2016 hack retreat.MirageOS holds summer 2016 hack retreat to advance its unikernel technology.

The functional innards of Docker for Mac and Windows.Talk at Functional Works meetup discussing how Docker for Mac and Windows use OCaml and unikernels internally. · 28 words

1 quiet week

Ian Eyberg, Joshua Bernstein, Anil Madhavapeddy at OSCON in Austin.Interview with The New Stack about unikernels and Docker at OSCON in Austin, Texas. · 60 words

FLICK: Developing and Running Application-Specific Network Services.Paper on framework for developing and deploying application-specific network services at USENIX ATC 2016. · 80 words

1 quiet week

May 2016

Improving Docker with Unikernels.Introducing HyperKit, VPNKit, and DataKit to enhance Docker performance. · 37 words

14 quiet weeks

February 2016

Declarative Foreign Function Binding Through Generic Programming.Paper on flexible declarative approaches to foreign function interfaces through generic programming at FLOPS 2016. · 78 words

1 quiet week

January 2016

Unikernel Systems is now part of Docker.Announcement that Unikernel Systems has been acquired by Docker. · 65 words

Unikernel Systems acquired by Docker.Docker acquires Unikernel Systems to bring unikernel tech to developers and IT pros. · 111 words

15 quiet weeks

October 2015

SibylFS: formal specification and oracle-based testing for POSIX and real-world file systems.Paper on formal specification and testing of filesystems presented at SOSP 2015. · 78 words

Personal Data: Thinking Inside the Box.Paper on personal databoxes presented at the decennial Aarhus conference. · 73 words

3 quiet weeks

September 2015

Immutable Distributed Infrastructure with Unikernels.Invited talk at NetPL on immutable distributed infrastructure using unikernels. · 60 words

3 quiet weeks

The State of the OCaml Platform.Update on the state of the OCaml Platform development environment and toolchain. · 96 words

4 quiet weeks

August 2015

Not-Quite-So-Broken TLS.Paper on rebuilding TLS securely but practically presented at USENIX Security 2015. · 91 words

10 quiet weeks

May 2015

Unikernels: Functional Infrastructure with Mirage OS.Talk at Esper on functional programming with unikernels using MirageOS. · 56 words

Jitsu: Just-In-Time Summoning of Unikernels.NSDI 2015 talk on Jitsu system for on-demand unikernel instantiation. · 71 words

Kadupul: Livin' on the Edge with Virtual Currencies and Time-Locked Puzzles.Workshop paper on using virtual currencies and time-locked puzzles to incentivize heterogeneous multihop mesh networking. · 77 words

Jitsu: Just-In-Time Summoning of Unikernels.Paper on low-latency unikernel spawning per-connection presented at NSDI 2015. · 85 words

3 quiet weeks

April 2015

Reviewing the second year of OCaml Labs in 2014.Reviewing OCaml Labs' progress in 2014, covering tooling, compiler, community efforts, and research projects. · 7,114 words

5 quiet weeks

February 2015

ICFP 2015 - a call for sponsorship and how you can help.ICFP 2015 seeks sponsors to support students and growth of the functional programming community. · 805 words

3 quiet weeks

January 2015

Delivered keynote at BOB 2015 on MirageOS.Opening keynote at BOB 2015 conference in Berlin on functional operating systems and MirageOS unikernels. · 93 words

2 quiet weeks

Raft Refloated: Do We Have Consensus?Paper reproducing Raft consensus protocol with optimizations and empirical validation using clean-slate OCaml implementation. · 69 words

Mergeable persistent data structures.Paper on mergeable data structures using Irmin presented at JFLA 2015. · 54 words

CUFP'13 scribe's report.Scribe's report from CUFP 2013 workshop on commercial uses of functional programming published in JFP. · 81 words

1 quiet week

December 2014

Codemesh 2014: Nymote: Git Your Own Cloud Here.Talk on Nymote presented at Codemesh 2014. · 65 words

2 quiet weeks

November 2014

Jitsu: Just-in-Time Summoning of Unikernels (new directions in operating systems).Talk on Jitsu at New Directions in Operating Systems conference. · 103 words

3 quiet weeks

Regional clouds: technical considerations.Report examining technical considerations for regional cloud computing and legal compliance. · 63 words

1 quiet week

October 2014

MirageOS 2.0: branch consistency for Xen Stub Domains.Xen Summit talk on implementing branch consistency for MirageOS 2.0 Xen Stub Domains. · 60 words

5 quiet weeks

September 2014

OCaml 2014: The OCaml Platform v1.0.Talk on the OCaml Platform reaching v1.0. · 91 words

Haskell Symposium 2014 Keynote on functional OS design.Keynote presentation at Haskell Symposium 2014 on functional operating system design. · 64 words

The OCaml Platform v1.0.Paper on OCaml Platform version 1.0 status and features. · 58 words

Multicore OCaml.First paper on multicore OCaml's design presented at the OCaml Workshop. · 64 words

Irminsule: a branch-consistent distributed library database.Paper on Irmin branch-consistent distributed database library supporting Git-like operations at OCaml Workshop 2014. · 57 words

August 2014

Talks from OCaml Labs during ICFP 2014.OCaml Labs talks at ICFP 2014, covering language improvements & MirageOS · 1,720 words

4 quiet weeks

July 2014

FLOSS Weekly 302: Open Mirage.Interview with Randal Schwartz and Simon Phipps about MirageOS on FLOSS Weekly podcast episode 302. · 64 words

MirageOS v2.0: a recap of new features.MirageOS v2.0 adds ARM support, Irmin storage and OCaml TLS stack. · 37 words

1 quiet week

MirageOS v1.2 released and the runup to 2.0.MirageOS v1.2 released, paving way for MirageOS 2.0 with new features. · 33 words

9 quiet weeks

May 2014

SE Radio Episode 204: Anil Madhavapeddy on the Mirage Cloud Operating System and the OCaml Language.Software Engineering Radio podcast episode discussing Mirage cloud operating system and OCaml language. · 63 words

4 quiet weeks

March 2014

Codio: build Mirage unikernels from a browser.Build Mirage unikernels from a browser with Codio's OPAM support and interactive Ubuntu shell. · 249 words

Easily OPAM switching to any OCaml feature request.Switch between OCaml compilers easily with OPAM and GitHub pull requests. · 494 words

2 quiet weeks

ICFP 2014 - a call for sponsorship and how you can help.Support functional programming community growth by sponsoring ICFP 2014, starting at $500. · 684 words

Using Dust Clouds to Enhance Anonymous Communication.Paper on building dust clouds for anonymous communication systems. · 78 words

5 quiet weeks

January 2014

Unikernels, and the Rise of the Virtual Library Operating System.Unikernels and virtual library operating systems are on the rise, changing the face of cloud computing. · 648 words

2 quiet weeks

December 2013

Reviewing the first year of OCaml Labs in 2013.Reviewing OCaml Labs' first year, including progress on OPAM, the compiler, and community efforts. · 5,984 words

5 quiet weeks

November 2013

Using Docker to bulk-build OPAM packages on Linux.Build OPAM packages in bulk on Linux using Docker containers. · 748 words

MirageOS and XAPI project update at XenSummit.Update presentation on MirageOS and XAPI project development at XenSummit. · 56 words

1 quiet week

Notes from PL and OS 2013 workshop.Notes from the 2013 Programming Languages and Operating Systems workshop at SOSP. · 21 words

Unikernels: Rise of the Virtual Library Operating System.Article on unikernels published in Communications of the ACM. · 69 words

Trevi: watering down storage hotspots with cool fountain codes.Paper on fountain coding for datacenter networking presented at HotNets 2013. · 77 words

First edition of Real World OCaml published.Release announcement for first edition of Real World OCaml book published by O'Reilly with upcoming signing events. · 81 words

Commercial users of functional programming workshop report.Published the scribe's report for CUFP 2012. · 69 words

3 quiet weeks

October 2013

Notes on the first Human Data Interaction workshop.Notes on the first Human Data Interaction workshop discussing social networks and decentralization. · 26 words

September 2013

OCaml 2013 workshop liveblog.Live notes from the OCaml 2013 workshop covering key events and discussions. · 39 words

Liveblogging CUFP 2013.Live notes from Commercial Uses of Functional Programming 2013 workshop · 26 words

OPAM 1.1 beta available, with pretty colours.OPAM 1.1 beta is available with improved stability and new features. · 253 words

2 quiet weeks

The OCaml Platform v0.1.Paper presenting first version of OCaml Platform development tools and infrastructure at OCaml Workshop 2013. · 67 words

Ocamlot: Online OCaml Testing.Presentation of online testing system for the OCaml ecosystem at OCaml Users and Developers Workshop. · 64 words

3 quiet weeks

August 2013

Lost in the Edge: Finding Your Way with DNSSEC Signposts.Paper on DNSSEC-based Signposts system for improved peer-to-peer communications and NAT traversal at USENIX FOCI. · 78 words

July 2013

Mirage Developer Preview 1 screencast.Screencast demonstration of Mirage Developer Preview 1 release. · 59 words

14 quiet weeks

April 2013

Grepping the source of every OCaml package in OPAM.Run grep on every OCaml package in OPAM using a simple script. · 168 words

5 quiet weeks

March 2013

Unikernels: library operating systems for the cloud.First paper on unikernels published at ASPLOS 2013. · 83 words

3 quiet weeks

February 2013

Perceived risks of personal data sharing.Paper on dataware computing in the digital economy. · 66 words

8 quiet weeks

December 2012

Evolving TCP: how hard can it be?Paper on extending TCP in a backwards compatible way presented at CoNeXT 2012. · 77 words

5 quiet weeks

October 2012

Announcing OCaml Labs.Introducing OCaml Labs, a new project at Cambridge Computer Lab to develop and improve the OCaml programming language. · 737 words

Breaking up is easy (with OPAM).Build isolated services with ease using MirageOS and OPAM on Xen hypervisors. · 48 words

3 quiet weeks

September 2012

OUD 2012: Towards an OCaml Platform and Introducing OCaml Labs.Recording of OCaml Labs announcement and OCaml Platform vision at OCaml Users and Developers workshop. · 68 words

Building a Xenstore stub domain with MirageOS.Learn how to build a Xenstore stub domain using MirageOS for improved security and performance.

1 quiet week

Signposts: end-to-end networking in a world of middleboxes.Demo of Signposts DNSSEC system for end-to-end networking presented at SIGCOMM. · 75 words

Programming the Xen cloud using OCaml.Paper on programming Xen cloud infrastructure using OCaml at the OCaml Workshop. · 80 words

Exploring Compartmentalisation Hypotheses with SOAAP.Paper on control flow analysis techniques for compartmentalizing applications into isolated components. · 75 words

12 quiet weeks

June 2012

Cost, Performance & Flexibility in OpenFlow: Pick three.Paper on using MirageOS to improve software-defined networking infrastructure with OpenFlow. · 85 words

8 quiet weeks

April 2012

Confidential carbon commuting: exploring a privacy-sensitive architecture for incentivising 'greener' commuting.Paper on privacy-sensitive data locker architecture to incentivize greener commuting patterns in Cambridge. · 86 words

3 quiet weeks

March 2012

The case for reconfigurable I/O channels.Workshop paper proposing reconfigurable I/O channel architecture for heterogeneous software and hardware environments at RESoLVE ASPLOS. · 69 words

February 2012

Dreaming of an ARM OCaml.Getting OCaml running on an ARM-based Dreamplug device with Debian and native code generation. · 754 words

7 quiet weeks

January 2012

CUFP 2011 Workshop Report.Published the scribe's report for CUFP 2011. · 75 words

9 quiet weeks

October 2011

OCaml Meeting 2011 - MirageOS.Presentation on MirageOS at the OCaml Meeting 2011 conference. · 68 words

2 quiet weeks

September 2011

An outing to CUFP 2011 for Mirage.Attending CUFP 2011 with MirageOS tutorial at ICFP. · 43 words

12 quiet weeks

July 2011

Dynamics for ML using Meta-Programming.Workshop on Generative Technologies paper on dyntype library for ML meta-programming. · 68 words

Dynamics for ML using Meta-Programming.Paper on statically typed value persistence for OCaml published in ENTCS 2011. · 75 words

1 quiet week

June 2011

Delimited continuations vs Lwt for threads.Delimited continuations and Lwt compared for threading purposes.

DataCaml: distributed dataflow programming in OCaml.DataCaml brings distributed dataflow programming to OCaml using the CIEL engine. · 1,818 words

5 quiet weeks

May 2011

Reconfigurable Data Processing for Clouds.Paper exploring Xen and FPGA integration for cloud computing presented at FCCM. · 77 words

April 2011

Functional programming gone wild in the SRG.Exploring functional programming projects in the SRG, including OCaml and Haskell. · 45 words

Camel Spotting in Paris.Report from the 2011 OCaml Users Meeting in Paris, covering talks on js_of_ocaml, OCaml on PIC, and more. · 2,278 words

5 quiet weeks

March 2011

CIEL: A universal execution engine for distributed data-flow computing.Paper on CIEL universal execution engine for distributed data-flow computing using dynamic task graphs at USENIX NSDI 2011. · 79 words

8 quiet weeks

January 2011

Unclouded vision.Paper on Droplets architecture enabling controlled trade-offs between centralized cloud and fully decentralized personal data approaches at ICDCN. · 83 words

7 quiet weeks

November 2010

Building the Xen toolstack using OCaml.Talk on building the Xen toolstack using OCaml. · 103 words

October 2010

Mirage: A New Multi-Scale Operating System for Clouds and Crowds (2014).Tech talk at LinkedIn presenting Mirage operating system for cloud computing. · 61 words

1 quiet week

Self-hosting MirageOS website.Running the MirageOS website on its own self-hosted infrastructure using the TCP/IP stack. · 31 words

1 quiet week

The personal container, or your life in bits.Paper on personal containers for managing personal data presented at UK Digital Economy meeting. · 70 words

3 quiet weeks

September 2010

Using functional programming within an industrial product group: perspectives and perceptions.Paper on experiences writing the Xen control stack in OCaml presented at ICFP 2010. · 84 words

9 quiet weeks

June 2010

Turning Down the LAMP: Software Specialisation for the Cloud.First HotCloud talk presenting the initial MirageOS concept for cloud software specialization. · 79 words

2 quiet weeks

Turning Down the LAMP: Software Specialisation for the Cloud.Workshop paper presenting early MirageOS architecture for running OCaml applications directly on cloud platforms as unikernels. · 85 words

4 quiet weeks

May 2010

Creating high-performance, statically type-safe network applications.PhD thesis on type-safe network application development now published as print book. · 63 words

1 quiet week

April 2010

Yurts for Digital Nomads.Digital nomads can secure their personal data with digital yurts, a system for diverse data handling and storage. · 427 words

1 quiet week

Pulling together a user interface.Building a user interface for personal containers on App Engine with extjs. · 465 words

1 quiet week

Multiscale not multicore: efficient heterogeneous cloud computing.Paper on vision for multiscale programming presented at BCS Visions 2010 conference. · 91 words

3 quiet weeks

March 2010

Opening a website.Learn about opening a personal data tracking website with a customizable database system. · 120 words

3 quiet weeks

Privacy Butler: A Personal Privacy Rights Manager for Online Presence.Paper on privacy butler services for more private data management. · 84 words

Creating high-performance, statically type-safe network applications.PhD thesis published as technical report on building secure network applications using ML type systems and model checking. · 62 words

17 quiet weeks

November 2009

Combining Static Model Checking with Dynamic Enforcement Using the Statecall Policy Language.Paper on DSL for specifying temporal protocol automata presented at ICFEM 2009. · 86 words

57 quiet weeks

September 2008

Peeking under the hood of High Availability.Learn how XenServer's High Availability feature works, including host failure detection and automatic VM restarts. · 2,293 words

5 quiet weeks

August 2008

Shedding light on XenApp on XenServer performance tuning.Optimize XenApp performance on XenServer with expert tuning tips. · 1,253 words

4 quiet weeks

July 2008

Installing Ubuntu on XenServer.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. · 1,433 words

4 quiet weeks

June 2008

Enhancing web browsing security on public terminals using mobile composition.Paper on splitting trust between smartphones and web browsers presented at MobiSys 2008. · 84 words

51 quiet weeks

June 2007

Melange: creating a "functional" internet.Won best student paper award at Eurosys 2007 for PhD work on high-performance functional packet parsing DSL. · 92 words

16 quiet weeks

February 2007

Interacting with mobile services: an evaluation of camera-phones and visual tags.Journal paper evaluating camera phone interaction with mobile services using visual tags. · 84 words

43 quiet weeks

April 2006

Fighting Crimeware: An Architecture for Split-Trust Web Applications.Paper presenting architecture for split-trust web applications to combat crimeware attacks. · 91 words

33 quiet weeks

August 2005

SPLAT: A Tool for Model-Checking and Dynamically-Enforcing Abstractions.Workshop paper on temporal automata for protocol specifications presented at SPIN 2005. · 81 words

4 quiet weeks

July 2005

Ubiquitious Computing needs to catch up with Ubiquitous Media.Position paper on ubiquitous computing approaches for emerging stream media appliances. · 69 words

Audio networking: the forgotten wireless technology.Paper exploring audio-based networking as overlooked wireless communication technology. · 75 words

A Study of Bluetooth Propagation Using Accurate Indoor Location Mapping.Ubicomp paper studying indoor Bluetooth signal propagation characteristics using Active Bat ultrasonic location system. · 88 words

3 quiet weeks

June 2005

OpenBSD C2K5 thoughts.Reflections on OpenBSD C2K5 hackathon projects and progress. · 383 words

On the challenge of delivering high-performance, dependable, model-checked internet servers.Paper on using temporal automata for protocol implementations presented at HotDep 2005. · 69 words

21 quiet weeks

January 2005

Using visual tags to bypass Bluetooth device discovery.Journal paper on SpotCode visual tag login system, demonstrating visual tags as superior alternative to Bluetooth device discovery for security key advertisement. · 186 words

Using smart phones to access site-specific services.IEEE Pervasive Computing article on using camera phones to access location-based services. · 83 words

The Broadband Phone Network: Experiences with Context-Aware Telephony.Report on context-aware telephony experiments with AT&T Broadband Phone network. · 57 words

3 quiet weeks

December 2004

Using camera-phones to interact with context-aware mobile services.Technical report on SpotCode visual tag system with user study comparing benefits against conventional mobile interfaces. · 98 words

7 quiet weeks

October 2004

Connecting Paper and Online Worlds by Cellphone.Researchers use cellphones to connect physical and online worlds, replacing public displays with portable technology. · 169 words

4 quiet weeks

September 2004

Using Camera-Phones to Enhance Human-Computer Interaction.Demo of SpotCode visual tag system at UbiComp 2004 conference in Tokyo. · 38 words

MIT Technology review covers SpotCodes.MIT Technology Review covers SpotCodes technology by High Energy Magic. · 199 words

4 quiet weeks

August 2004

Exploring tradeoffs in location-aware gaming using smartphones.Paper on location-aware Capture The Flag game using Symbian phones, public displays, and ActiveBAT tracking, presented at SIGCOMM NetGames workshop. · 155 words

6 quiet weeks

June 2004

From the prawn of time.Talk at NotCon 2004 on SpotCodes and camera phone technology covered in Wired Magazine. · 88 words

1 quiet week

May 2004

Cellphone as a virtual mouse/keyboard.Use your cellphone as a virtual mouse and keyboard with innovative software. · 82 words

33 quiet weeks

October 2003

Context-Aware Computing with Sound.Research project using inaudible audio beacons for location discovery on smartphones without additional hardware, conducted as intern at Intel Research Cambridge. · 178 words

13 quiet weeks

June 2003

My static C bounds checker extension merged into OpenBSD.OpenBSD merges static C bounds checker extension into its codebase. · 171 words

3 quiet weeks

The Case for Abstracting Security Policies.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. · 145 words

1 quiet week

May 2003

Moving to anil.recoil.org.Redesigned homepage now at anil.recoil.org · 38 words

18 quiet weeks

January 2003

Xen 2002.First technical report on Xen hypervisor with contributions to early NetBSD port. · 61 words

17 quiet weeks

September 2002

Started PhD at Cambridge.Started PhD in Systems Research at Cambridge University, focusing on Xen hypervisor. · 43 words

8 quiet weeks

June 2002

Streamlining PHP on OpenBSD.Improved PHP on OpenBSD with simplified pkg_add usage and modular extensions. · 233 words

11 quiet weeks

April 2002

Streaming U2 live across the Internet.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. · 158 words

31 quiet weeks

August 2001

Added a caching subsystem to Horde.Horde PHP framework now includes a general caching subsystem for improved performance. · 132 words

2 quiet weeks

Chora now the production CVS viewer for PHP.Chora is now the production CVS viewer for PHP, replacing viewcvs on cvs.php.net. · 154 words

Added internationalisation to the Chora viewer.Chora viewer now supports internationalisation with multiple language translations available. · 75 words

24 quiet weeks

February 2001

GPL release of OpenFX.OpenFX is now available under the GPL with advanced features like raytracing and NURBS support. · 56 words

3 quiet weeks

January 2001

I am now a core PHP developer.I'm now a core PHP developer with commit access to the central repository. · 67 words

1 quiet week

December 2000

I'm now an OpenBSD developer.I'm now an official OpenBSD developer, contributing fixes and ports. · 196 words

9 quiet weeks

October 2000

I'm now a Horde core team member.Author joins Horde core team, contributing to IMP and webmail development. · 78 words

15 quiet weeks

July 2000

Paper on the NASA Mars Polar Lander website architecture.Technical report on Mars Polar Lander website acceleration architecture, one of the busiest websites during approach to landing. · 108 words

29 quiet weeks

December 1999

Slashdot covers the Mars Polar Lander.Mars Polar Lander's webmaster shares story of website survival despite spacecraft crash. · 81 words