RSSAmplifier

Blog

Anil Madhavapeddy's feed

anil.recoil.orgRSS feed ↗405 posts

Latest posts

Using Forester to turn Foundations of CS into interactive evergreen lectures

I've heard good feedback from my undergrad students about how Jon Sterling publishes his 1A Discrete Maths lectures in a structured online form using his own Forester tool . As my sabbatical comes to an end, I've started prepping my own Foundations of CS course [1] for resuming lecturing in October. I ported this course to Jupyter a few years ago along with a nice printable set of notes with the…

Improving local weather forecasts using Tessera embeddings

Pedro Sousa has put his first preprint paper online, on the topic of improving weather prediction using satellite foundation models! " Earth observation embeddings are effective sub-grid descriptors for probabilistic weather downscaling " (also on arXiv ) was joint work with Sadiq Jaffer , Robin Young , Will Tebbutt and Rich Turner with much help from the wider Tessera team. Since the paper is…

.plan-26-32: Finally a use for serverless and found the Forester for the trees

Two paper updates this week! The first is that our GETMobile article on micro-NPUs got published in the ACM SIGMOBILE magazine . This is a shorter, more digestible magazine version of the paper from last year . Great work by Josh Millar ! Then Ryan Gibb gave an excellent SRG practice presentation of his forthcoming ICFP 2026 paper on formalising package management calculi . His slides were dense…

Updating to the OxCaml 5.2.0-minus39 opam packaging

This website is written using the OxCaml language extensions from Jane Street, so I can experiment with zero allocation frameworks written in OCaml. Since David Allsopp released oxcaml-minus39 a few weeks ago, I've updated to that. This first required figuring out the packaging of some of the third-party dependencies that I require. Using OxCaml is more complex than vanilla OCaml since many…

GetMOBILE article on benchmarking micro-NPUs now out

Josh Millar lead an article just out in GETMOBILE on our work from last year on benchmarking micro-NPUs to help make sense of the growing number of dedicated, ultra-low-power 'neural network accelerators'. There are lots of hidden embedded NPUs in modern low-cost chips, ranging from ESP32 -based boards over to ARM ones. All of these have quite a variety of tradeoffs, from the operations supported…

.plan-26-31: Sorting out Tessera and Evidence TAP infrastructure

I had a bunch of infrastructure work I had to get done this week, and so I went headsdown hacking to sort out both TESSERA and the Evidence TAP this week! I spent it moving a petabyte of TESSERA embeddings onto Source Cooperative, taking a detour to investigate Icechunk before settling on transcoding to Zarr on AWS Fargate Spot . Then my custom PDF downloader Taposaur arose to obtain the…

.plan-26-30: Bananas ripen, models open, and OxCaml releases

I was in Ireland most of the week attending to family matters, so another quieter weeknote! My picture of the week is that the Pembroke College Cambridge banana tree has, err, sprouted real bananas, so I'm trying to pluck up the courage to attempt to pickle them and not poison anyone. I appeared up in the OpenUK openness report , got the Evidence TAP website prototyped using an agent on exe.dev ,…

.plan-26-29: Perfect weather, imperfectly measured, precisely predicted

I returned to Cambridge during the nice lull after the exams and graduation rush, and enjoyed a very pleasant week indeed catching up! I examined my first viva in the Faculty of Law , ran a TESSERA stall at the House of Lords , saw exciting results on downscaling the weather with TESSERA , went digging into the sorry state of our own rooftop weather station , got stuck into moving TESSERA onto…

.plan-26-28: What fun papers piled up while I was out at sea

I reluctantly disembarked from the NatGeo Endurance on Thursday and returned from the Arctic to find the UK in the grip of a proper heatwave ! The train home almost undid me with the temperature transition of ~40C; in the end I think the London-Cambridge train took more time than the Iceland to London hop. Still, always nice to be home, if only for a week before my next trip! A pile of papers…

.plan-26-27: Somewhere over the icecap

I'm away up north right now, so just a brief update! We're on the NatGeo Endurance off the coasts of Greenland and Iceland variously. We saw a polar bear strolling off after munching on a seal! And a huge pod of bottlenose whales (!) in the middle of the Atlantic. And some helivac drama with the coastguard and a mid-sea rescue. See you all next week sometime!

.plan-26-26: Gelato, geospatial, and players of games

A blistering heatweave threw everything off this week; we even had a big power cut through central Cambridge that drove many of us to seek haven in gelato shops. While melting, I spoke at CHIA's annual conference in the Cambridge Union on AI for Science, and also wrote up the Cloud-Native Geospatial Forum London notes, the first such gathering outside the US. Plus the usual fun links at the end.…

A scorching CNG London during Climate Action Week

It's London Climate Action Week in the midst of a searing heatwave , which was a good backdrop for the Cloud-Native Geospatial Forum meeting (the first outside the US!). The venue was the Jellicoe where ARIA is based up on the top floor with a panoramic view over the City. CNG is a Radiant Earth initiative that I joined last year when I heard about their drive to make geospatial data available as…

.plan-26-25: Planetary scale plans, Windows file-descriptor scale problems

A lot of conservation and planetary computing this week. We celebrated a decade of the CCI with a visit from Sir David Attenborough, and Andrew Balmford delivered his Royal Society Environment Medal lecture . I also tuned in remotely to the third PROPL at PLDI , where the programming-languages community had an action-oriented discussion. On the hacking side, I wrapped a local LLM up as an OCaml…

Sir David Attenborough joins us to celebrate the Cambridge Conservation Initiative

The Cambridge Conservation Initiative celebrated its ten year anniversary today, and what a day it was! Just a few weeks after his 100th birthday , Sir David Attenborough visited and narrated a video for us, and we had tons of visitors come by to look at all the projects we're working on. I spent the afternoon demoing TESSERA and the Dash of Life along with Frank Feng , Sadiq Jaffer , Aland Chan…

The Royal Society Environmental Prize lecture on feeding the world without costing the earth

I popped down to Carlton House Terrace yesterday evening for the inaugural Royal Society Environment Prize lecture , where the Environment Medal was awarded to Andrew Balmford for his contributions to conservation science. Andrew gave a tour de force lecture on "Feeding the world without costing the earth" . I've never worked with anyone who can turn data graphs into stories nearly as well as…

Language integrated LLMs as an OCaml function

Fable cut out on me at 1am on Saturday while I was sweeping over the OCaml runtime looking for concurrency bugs. There have been excellent takes on the sovereignity implications of this, and I figured I'd roll my sleeves up and get serious about using the open weights models. DeepSeek's models have been getting more capable since their first release , and v4 Flash is small enough to run on my Mac…

.plan-26-24: Apparently a professor now; still debugging io_uring at midnight

Blimey, I got promoted to a full professor at Cambridge this week (glamorously known as Grade 12 in Cambridge parlance), and had it announced in the Cambridge Reporter ! My first thought when I got the news was how much fun this job has been over the years! As a kid, I always wanted to be a bus conductor (a job that increasingly no longer exists)... I have nothing but gratitude to my community…

Tessera v1.1 released, with smoother and temporally stable embeddings

Frank Feng and I announced TESSERA v1.1 on behalf of the team earlier this week, and I wanted to follow up here with a more visual explanation of what changed as I got quite a few questions about it! v1.1 is a retrained successor to the original v1.0 model that Frank Feng and the team have been hammering on for months. Crucially, since we pre-generate embedding 'map tiles', the new release is a…

.plan-26-23: Earth Embeddings, Emails Everywhere, and ERRNOOOs

Got some hacking done this week after the media whirlwind , mostly to get TESSERA 1.1 out of the door and a stabilisation push on GeoTessera 0.9 . A quick map of the weekly is TESSERA v1.1 progress (including GeoTessera 0.9 onto S3+Zarr ); io-uring and OCaml ; distributed systems covering self-hosted email , Bluesky/standardsite embeds , Brent Yorgey on AI and individual choice , and two new…

Tessera at CVPR 2026, and the front page of the European Space Agency!

It's continued to be a wild week for TESSERA in the news. Jovana Knezevic is at CVPR2026 in Denver presenting our foundation model paper right now (poster #578 from 11:45am to 1:45pm). We also ended up on the front page of the European Space Agency in the same week. Teenage me wouldn't have believed this possible!! CVPR 2026 in Denver Jovana is over in Denver this week presenting our work at CVPR.…

Self-hosting email the hard way from your own routable IPv4 block up

Fresh from rewilding the web , I updated the Recoil self-hosting infrastructure that Nick Ludlam and I have run since 1997. Most exciting, this is now 'email the hard way' that includes getting our very own dedicated IPv4 allocation routed thanks to my buddy Thomas Gazagnaire helping out from France! This post will be quite technical, aimed at those interested in building their own email stack.…

.plan-26-22: From digital rewilding in Edinburgh to uring and Tessera hackery

Most of this week was either off for the May bank-holiday long weekend or up in Edinburgh at this great workshop , with plenty of hacking on the long train journeys in between. Rewilding the Web in Edinburgh Jon Crowcroft and I went up to Edinburgh for Kate Nave's Rewilding the Web: Diversity & Resilience in Sociotechnical Infrastructure workshop, an interdisciplinary mix of economists,…

Rewilding the Web: my workshop report from Edinburgh

I trotted up to Scotland with Jon Crowcroft to speak at a really fun workshop on " Rewilding the Web: Diversity & Resilience in Sociotechnical Infrastructure ", organised by Kate Nave at the University of Edinburgh: The internet has become a monoculture. This interdisciplinary workshop will host discussion of how we can rewild our digital lives. Inspired by visions of nature as an ecosystem of…

.plan-26-21: Pint of Science, OxCaml dissertations, and TESSERA 1.1 stirring

Most of my week has been dominated by being on the BBC/ITV/etc and so just a short weeknote this time around! Aside from all the media coverage, there have been some fun events and hacking going on. Pint of Science Cambridge about TESSERA Sadiq Jaffer spoke at the Cambridge Pint of Science , which was held in the congenial surroundings of the Station Tavern near the train station. The room itself…

What happens when a hedgehog story prickles its way into the BBC

Silviu Petrovan and I had quite a week appearing on the BBC website and a dozen radio and TV shows talking about the applications of AI to saving hedgehogs . I thought I'd jot down a "behind the scenes" so other academics get a sense of what to expect when a research story hits the national news cycle. Mostly, make sure you have a clear couple of days to deal with live media appearances with just…

Building OxCaml packages for Debian, Fedora, Homebrew and Arch

I needed to install OxCaml quickly on a fresh machine without any opam machinery. This was an excellent excuse to refresh my memory on how distributing system packages for distributions like Debian, Arch, Fedora and Homebrew work. I've built oxcaml-pkgs to churn out native packages for the distros I need, with details below for future reference. These all install an oxcaml-compiler package into…

.plan-26-20: Putting OxCaml in a box and OCaml in orbit (again)

I've had a heads-down week spent consolidating my OCaml trees (pun intended) so that deploying OxCaml is easier. We've started generating test TESSERA embeddings for a forthcoming v1.1 model using OxCaml and so it's quite important to get my monorepo under control. OxCaml in a box One concrete output comes from my investigations about how native system packages for OxCaml could work. I had to root…

Voluntary AI disclosure proposal for OCaml: update 1

A quick update on my proposal for voluntary AI disclosure in OCaml code . The online discussion thread has gathered a lot of thoughtful feedback, both public and private, so I posted a digest of where I think things stand and what we might do next. It's reproduced here for the record: Thanks, everyone, for the thoughtful and polite feedback to my proposal. I've received a lot of private comments…

.plan-26-19: Ancient oaks, parliamentary evidence, and TESSERA in the City

This was a week of going to nice offsites, giving talks and catching up on the massive backlog of reviews and admin that had been piling up through the travel and paper writing of the past few weeks. At least my inbox is vaguely approaching three digits unread now... Attenborough at 100 in Norwich! The week's highlight was a Conservation Research Institute retreat in Norwich, which happened to…

.plan-26-18: From tropical forest protection to oi swallowing its oxcaml tail

REDD+ over-crediting in Nature Communications Our paper on learning lessons from over-crediting in REDD+ projects came out this week in Nature Communications, led by Thomas Swinfield . The reception to the paper has generally been encouragingly positive, especially with the framing that "bad credits are not the same as bad projects". The timing of the paper hits the carbon market at a particular…

Helping tropical forest protection keep up with a fast-changing world

Our paper on learning lessons from past REDD+ over-crediting came out in Nature Communications today, led by Thomas Swinfield , and is the culmination of years of work in 4C . It's a comprehensive ex-post synthesis of first-generation REDD+ projects worldwide, and I wanted to explain the findings here more accessibly than a scientific paper (see also the cam.ac.uk and cst.cam coverage). For those…

.plan-26-17: Unwedging kernels, dogfood deployments, and managing beef leakage

After the travel marathon of the past fortnight I got to catch up with hacking this week! I did pop down to London once for a Royal Society policy meeting on AI in science with the European Commission and discovered that the EU still has a (much-shrunken) delegation in London; a bit of post-Brexit infrastructure that I hadn't appreciated existed but am very glad to hear about. While I was down…

AI, science and the UK–EU relationship at the Royal Society

Following the US , China, France and India meetings, my policy bingo card continues with a Royal Society meeting on AI in Science with the European Commission. I discovered that the EU Delegation to the UK has an office in London that is much reduced since Brexit, but encouragingly still an anchor for opening EU-wide policy conversations with us. The session was co-chaired by Professor Alison…

.plan-26-16: Chennai, Cambridge, Belfast: a week on the wing

I spent most of the week in the air with hops to Chennai, Cambridge and Belfast. The reason was the FP Launchpad 'takeoff' at IIT Madras where I spent half the week, in a campus teeming with banyan trees and monkeys! I've sketched out two project ideas inspired by the visit: an io_uring backend for Lean and an OCaml port of sPyTial , with more to come this week as I catch up. Paper of the Year at…

The FP Launchpad takes off at IIT Madras

This week I hopped over to Chennai for the launch of the FP Launchpad , a brand new Centre for Functional Systems Research and Education at IIT Madras. It's run by my long-time collaborator and friend KC Sivaramakrishnan , who was a postdoc in my OCaml Labs group in Cambridge before moving to IIT Madras as a professor. I eagerly flew in for a couple of days accompanied by Ryan Gibb to soak in the…

.plan-26-15: Banyan trees, (anti)botnets and Bose-Einstein bases

I spent this week shuttling from Ireland to Cambridge to India for the FP Launchpad takeoff at IIT Madras next week. This new centre is possibly even more exciting than a roundtrip to the moon for the PL geeks among you! I'm hosted by KC Sivaramakrishnan and staying in the amazing Bose-Einstein guest house on campus. There are banyan trees, monkeys, huge bats and deer everywhere! Ilya Sergey and I…

The Internet needs an antibotty immune system, stat

Over the last month, I've seen rumblings in various private chats about the capabilities of Anthropic's new frontier model, but I was genuinely shocked today at how fast things are moving. Anthropic's Mythos Preview ( HN ) has found a lot of new zero-days, but it's the effortless chaining of vulnerabilities that shook me. Mythos autonomously wrote a browser exploit that chains four separate…

.plan-26-14: Tracking AI screen time and escaping to pen and paper

Integrating AI 'screen time' and tracking into my life I've been in Belfast this week again and had a nice coffee chat with Patrick Ferris about the value of building low-level systems code by hand, since it's the discovery of accidental/hidden interfaces and hacks that makes this whole area so much fun. Later that day I ran across the most thoughtful post on learning and AI I've read yet: I'm…

A Proposal for Voluntary AI Disclosure in OCaml Code

After my December of agentic coding sprint, I was left quite frazzled but also with a practical problem. I've got two kinds of libraries: the ones I care about (and handcraft), and the wild experiments that look perfectly formed but are in fact just (well typed) slop. After a year of doing this, it's obvious that the quality of generated code also varies dramatically as models steadily improve and…

.plan-26-13: Oxidised, standardised, and syndicated

OxCaml Labs: year one in review I've spent the last couple of weeks writing up a comprehensive summary of everything our group has done in my little OxCaml Labs group over the past year (with a lot of help from the team reviewing and contributing. When we started out again after OCaml Labs concluded, we decided that regular blogging was going to be part of our collective culture, and I'm delighted…

TESSERA now supports the Zarr geo-embeddings convention proposal

The ink's barely dry on my last RFC post about streaming millions of TESSERA tiles over HTTP using Zarr v3 sharding, and it's out of date! The store layout I'd carefully craftd lasted about 48 hours before a discussion from Jeff Albrecht and Len Strnad convinced me to rethink my approach. This led me to build a "MegaZarr" unified store, and retire our TESSERA-specific convention to instead…

.plan-26-12: Zarr across space and TESSERA time

I've been on leave this week so not much coding, but I did progress some threads from last week which I'll update on! TESSERA+Zarr take 3 After I published the TESSERA Zarr conventions from last week , I got a load of useful feedback from other, more experienced Zarr heads. Issue #1 convinced me to rearrange our layout fundamentally to include the embedding year as a dimension, and also to reduce…

.plan-26-11: Bins, bollards, bots and biodiversity boffins

Evidence Synthesis at the DEFRA science conference Starting with evidence synthesis , we got invited after our previous meetings with DEFRA to run a session about our evidence TAP at their annual "DEFRA Science, Analysis and Data Professions Conference" in London. I couldn't make this one in person, but Sadiq Jaffer and Sam Reynolds did their usual brilliant double act with help from the rest of…

Streaming millions of TESSERA tiles over HTTP with Zarr v3

I've been working on making TESSERA map embeddings even easier to retrieve, so that we can build dynamic user interfaces in the browser or on mobile phones. When we first released GeoTessera last year, every 0.1° tile was a pair of numpy files; one quantized embedding and one scale array. That worked fine for grabbing a few tiles at a time, but our push for global coverage from 2017-2025 is…

.plan-26-10: Streaming TESSERA working, biodiversity action papers, and FPL takes off

TESSERA streaming into the browser and OxCaml hacking I've completed a working cut at a streaming interface for TESSERA embeddings, and it's unexpectedly addictive to zoom around the world staring at false colours! The amazing thing about this interface is that it's entirely browser based, using JavaScript, WebGPU and WASM to perform all the analysis on the client side. The Zarr embeddings are…

Connecting the dots for biodiversity action from the NAS/Royal Society Forum

Last summer I spoke at the US-UK Forum on Measuring Biodiversity at the National Academy of Sciences, jointly organised with the Royal Society. Two companion papers from that forum have just been published in PNAS to turn the Washington meeting into an agenda for transforming how the world monitors global biodiversity. " Nine changes needed to deliver a radical transformation in biodiversity…

.plan-26-09: Browser TESSERA, package management and Docker in the CACM

Decade of Docker containers A busy week on the socials as the paper Dave Scott , Justin Cormack and I wrote looking back at the Docker adventure made the cover of the Communications of the CACM . Lots of really positive coverage about it online, and the print issue should be with you all this coming week! TESSERA and Zarr In TESSERA land I spent most of my week heads down on getting full Zarr…

A Decade of Docker Containers on the CACM cover!

I am beyond excited to be on the cover of the CACM March issue with " A Decade of Docker Containers ", coauthored with Dave Scott and Justin Cormack : For the past decade, Docker has provided a robust solution for building, shipping, and sharing applications. But behind its simple "build and run" workflow lie many years of complex technical challenges. -- A Decade of Docker Containers ,…

.plan-26-08: At AI summit, Shriram's PL opinions, Zarr hacking

Most of the week was taken up by hopping over to New Delhi to host a TESSERA hackathon and also to attend the AI Impact Summit . I redeyed back to host Shriram Krishnamurthi in Cambridge as he does his UK tour. TESSERA The best news of the week was that the TESSERA paper got accepted into CVPR 2026 , out of a whopping 16000+ (!) submissions. This has been a giant amount of work for the whole team,…

At the AI Impact Summit in Delhi: people, planet, progress

Very little sleep this week as I hopped over to India's AI Impact Summit for a slew of events to followup my earlier meetings at OpenUK and the Turing . The Indian government knocked it out of the park with the first summit held in the majority world: there were over 200,000 people registered and the keynote for Sarvam AI 's launch had more people attending than the entire French AI summit last…