Term is in full swing, so this week is mostly about lecturing and talking at the CCI, followed by a tour of some of my typical termtime meetings on topics from AI governance, the CRI management team, an NVIDIA AI safety event and samosa socials at Pembroke.
1 Lectures and term are go!
I'm back in the swing of lecturing again after a year out, and greatly enjoying delivering Foundations of Computer Science once more!!! The use of Forester with interactive toplevels has been extremely useful during the lectures, as I can just tab away from my slides to the web toplevel to illustrate some point, which the students can also follow along with.
A quick poll of the students reveals that a number of them are using the Forester version of the notes in lieu of the PDF version. Thus far, several have also commented to me that they're greatly enjoying avoiding LLMs while learning how to navigate functional programming, which is a great relief to me as an educator!

1.1 Chasing your own (list) tail
As happens every year, there's a new and interesting question raised during lectures that I don't anticipate. This year, it's how the OCaml head and tail of a list work.
In lecture 3, I explained how lists are implemented as a singly-linked data
structure, starting from a head value and ending in an empty list sentinel.
The type of val hd : 'a list -> 'a makes it obvious that the function needs
to raise an exception if the input list is empty, since a value of 'a cannot
otherwise be constructed. However, the question was why the tail function val tl : 'a list -> 'a list can't just return an empty list instead of raising an
exception?
I had to look this one up, and couldn't find any language for which tail([])=[], although GHC does have versions which don't raise. Talking to Simon Peyton Jones, he reckons that we shouldn't have a List.tl function in the first place, and should always prefer pattern matching to deconstruct a list. There were lots of other opinions online too.

1.2 MPhil and Part III projects
I've been meeting a steady stream of students about MPhil projects, although I'm right at my supervision capacity with all the Part IIs this year. Still, I've been having a fascinating time hearing from students with a variety of backgrounds and probably won't be able to resist taking a couple on. I suspect they'll be more on the formal verification (Lean/OxCaml) side than Tessera, but do get in touch if you're interested in any of them.
1.3 Talking Tessera at the CCI

One key point we tried to settle was how to pronounce 'TEssera' or 'TesSERA', and the audience was invited to either tap their head or rub their cheeks to signal their preference. Unfortunately I forgot which was which but we did get a nice audience picture of it:

2 Some typical termtime meetings
Since I haven't had much time to write up my coding this week, I thought I'd highlight some really fun different policy meetings I had, since I'm often asked what a 'typical' week looks like. It's never the same during termtime!
2.1 AI governance with CSaP

Keita Azuma is Chief Policy Officer for Emerging Technologies and Global Affairs in the Office of the Cabinet Secretary for Crisis Management, Government of Japan. He leads Japan's strategic engagement with international AI governance, coordinating closely with the United Nations and the OECD, including the UN Office for Digital and Emerging Technologies, UNODA, UNDP and UNU, and served as lead organiser of side events at the STI Forum.
[...] Within Japan's crisis management architecture, he has played a central role in integrating emerging technologies — including satellite imagery, AI analytics and drone-based reconnaissance — into the government's response to large-scale disasters, accidents and security crises, and has worked on countering mis- and disinformation during such events.
Keita and I had a really wide-ranging discussion ranging from the rollout of LLM technologies for policymaking (as we are working on in the Evidence TAP) through to how forecasting models like the latest advances in Tessera might apply to climate adaptation strategies in Japan. I also learnt that Japan is hoping to host the 2028 AI summit after next year's in Switzerland. After my whirlwind Indian AI summit experience earlier this year, I definitely want to attend that one!
2.2 The Conservation Research Institute management team
Cambridge is full of acronyms, and none more so than the Cambridge Conservation Initiative (CCI), home of UNEP-WCMC, IUCN, RSPB and of course the CRI. The CRI is the codename for the University members of the CCI, and we have regular meetings about how best to organise the interdisciplinary research. My attendance has been sporadic in the last year as I was on sabbatical (except for the fantastic CRI offsite in Norwich) but I very much enjoyed seeing everyone again!

2.3 NVIDIA AI Safety and Security event
Then for something completely different, Sadiq Jaffer and I nipped down to London for an invitational from NVIDIA to discuss their announcements on investments in AI safety in the UK. There was a closed event earlier where we heard a "fireside chat" with Blaise Metreweli discussing the matter with Jensen Huang (sadly, Chatham House rule so no notes on this).
I did get to meet many security researchers there though, including my first contact with the AI Safety Institute who have an excellent red team blog about breaking things. I've been working on a side project about protocol specification that I showed a few people, to encouraging feedback. More on that in future weeks!
Since pictures weren't allowed at these meetings, Sadiq Jaffer and I instead celebrate below at King's Cross' notable achievement of multiple Loo of the Year awards, which is, I'm sure you'll agree, not crap at all.

2.4 McSamosas at Pembroke
Last but not least, this term as part of the Evidence TAP project kicking off at Pembroke, I've been hosting 'samosa socials'. We're working across so many departments that many of our collaborators never really get to see each other in person. One of the great things about the College system is that we can quite easily find a room and invite 20-30 people without issue.
Our wonderful catering team led by Nina Rhodes has been supplying a steady stream of samosas, pakoras and chai, and we've made this a regular event in Michaelmas every Monday at 4pm. I expected numbers to dip after the first one, but we ended up with over 40 (!) people from 8 or more departments showing up. Discussions ranged from the AI safety announcement I mention above, to how we might locally help with the Cam rights of the river, to how a policymaking platform with LLMs could be crafted to fit how politicians work (messaging!), and how global cooperative policymaking might be implemented. I am delighted to see many of the Pembroke undergrads attending as well, so I'm hopeful we can get some Cambridge Green Blue activities going next term if the momentum continues to build!

If you'd like to attend this and are local in Cambridge, just drop me a note and I'll send you the details!
Other than this, I've been moving all my home directories to our Ceph cluster to test out if using a network filesystem is actually practical these days. We're trying to get 10Gbps in our Computer Lab offices so that our ragtag collection of GPU/CPU machines can network together at a reasonable speed. On my list next week is to promote the OpenStreetMap/GBIF/iNat mirror that I have on my machine to something more easily accessible via a Wireguard mesh, so that Michael Dales and Aneesh Naik can use it for their habitat mapping work.
