Articles are often updated, substantial, useful for reference.
See also Notes
and Research
, or browse by topic
.
Digital freedom and law#
The battles over who controls software, data, and communications have been running for thirty years and are not over. These articles cover the legal and policy terrain — patents, privacy law, data sovereignty — from being in the middle of it.
More reliable software#
A recurring theme in my work is that software fragility is underestimated and under-addressed. These projects and articles approach that problem from different angles — data integrity, reproducibility, reversibility, and version control.
- LumoSQL
— Modifying SQLite to give device owners genuine control over their own data, without breaking compatibility.
- Reversible Execution
— Rewinding and replaying software to find bugs and security problems. Still the biggest advance in debugging since source-level debuggers.
- Logical and Thermodynamic Reversibility
— How reversibility connects to the energy crisis in AI infrastructure.
- Not Before Time
— Time-locking information using existing tools and tried mathematics.
- Not Forking
— Automating change management across source trees in ways version control systems cannot.
- Fossil
— The only realistic alternative to Git, with stronger cryptographic and reproducibility guarantees.
- How to Replace Windows NT with Linux
— Written at Linuxcare in 1999, this kind of independence from US-centric software is suddenly a global concern. Part of the Samba story.
- Margaret Hamilton and Software Intent
contains a reconstruction of a 1994 article of Hamilton’s I found
and cleaned up, with permission. The idea of intent seems central to software reliability.
AI safety and agentic systems#
Current AI safety efforts focus on making individual models better-behaved. My work on the Perseverance Composition Engine ↗
takes a different approach: structure the system so that misbehaviour is caught before it causes harm, the way human institutions have worked for centuries. These articles develop that argument and its technical context.
Health and medical#
- Radiophobia
— Why patients should not be advised to consider cancer risk relating to scans, what it costs in missed diagnoses and fear-driven harm, and an explantion of the medical term ‘radiophobia’.
Practice and teaching#
- Security Standards and Certifications
— How the major standards work in practice, and why their bad reputation is mostly undeserved.
- Teaching Exercises
— Exercises in cybersecurity and computer science I have used over many years of mentoring.
- Code of Conduct
— A concise code of conduct for open source projects, compressed from the Mozilla Participation Guidelines.
- BibLaTeX, eras and scripts
— Managing references across non-Latin scripts, ancient sources, and non-English languages in LaTeX.
In responding to a recent security problem I had to consider the idea of intent in computer software, so I looked to see what Margaret Hamilton ↗ has to say. Hamilton proved her ideas spectacularly during the first Apollo moon landing in 1969. A hardware failure generated unexpected errors ↗ , but the software coped by running the highest-priority tasks despite the barrage of errors and prevented an abort just seconds before landing on the surface. I eventually found an article in a 1994 copy of Electronic Design magazine which explains her Development Before the Fact philosophy. After discussion with the current magazine editor, I was able to clean up the scanned text and document Hamilton’s prescience.
...
Anthropic publishes its constitution ↗ along with research about where the constitution works and where it does not. The current version is an ethical treatise addressing Claude discussing safety, ethics, Anthropic’s guidelines, and helpfulness, in that order when they conflict. Anthropic favours cultivating good values and judgment over strict rules.
In 2026, Anthropic’s operational judgment failed twice in the same way, leading to the leak of the Claude Code source code ↗ . The constitution asks Claude to imagine how a “thoughtful senior Anthropic employee would react”, but what happens when the organisation’s structure fails?
...
💡 Advised not to have a scan due to radiation risk? If you or your children are advised against having a medical scan due to radiation risks, you are probably hearing ‘radiophobia’. Health services often confuse protecting patients receiving radiation with protecting radiation workers who may be in these environments for decades. It will take a while for practices within health services to catch up to current understanding. Meanwhile, there is no need to be hesitant of any scans you are offered, despite some lurid warnings coming as standard. (The clinical term ‘radiophobia’ refers to an individual’s unfounded fear. Here I use it to mean when misinformation creates fear in patients.) When a medical person told me recently You can do without the PET scan ↗ you have had recommended, because we limit the number of scans people have so we don’t cause more problems than we find, it seemed a bit strange. I am in the fortunate position of working at a university where I have access to people who understand these things. So I made enquiries and learned that this was radiophobia, and it can cause people to miss out on healthcare. But I still wasn’t offered a scan.
...
AI is slow, and Agentic AI ↗ is even slower. I develop an MCP server ↗ that generates PDF documents, and I work with the Agentic Perseverance Composition Engine daily. Tasks that take maybe 5 microseconds on an operating system (eg, does a file called Things-to-Do exist?) can take a million times longer – between 2 and 5 seconds – because each operation requires multiple round trips to a remote LLM, often with timeouts. It’s a young, unstable stack, comparable in maturity to early MS DOS or the Apple ][. When AI gets hold of your data via an MCP server it can do interesting things, but it is not put together well.
...
From time to time I am engaged to help organisations in the UK and in the EU make decisions about where their data is stored, how it is accessed, and how to keep things as stable as possible over the next few years. This was a dizzying mess until 2025, and in 2026 there are some big decisions coming. Organisations need as much certainty as they can get for making decisions which are expensive to change in the future.
...
This file is a Code of Conduct first written in 2020 for the LumoSQL project. Here is Version 1.6 – Updated 9th February, 2026. Heavily adapted and compressed from the (very large indeed) version 3.1 of the Mozilla Participation Guidelines, and published by LumoSQL under the Creative Commons Attribution-ShareAlike 4.0 International license.
Contents LumoSQL Code of Conduct This file exists because the LumoSQL Project needed it, less than one year after starting in 2019. We take it seriously, and hope that most English-reading adults can understand what is said. We hope this is not needed very often. Collective kindness is needed more than ever in this global pandemic.
...
The detail of the GDPR and its implied computer science contain a solution for sharing secrets according to law. This continues to be true in 2026, as the Digital Omnibus Regulation ↗ takes shape.
Executive Summary
The GDPR sets up a conflict in trust between companies in particular circumstances, which can only be resolved by using the automation of a cryptographic audit trail with particular properties as described below.
Problem Statement
...
This is the second time ↗ the Court of Justice has decided the same question. In brief, after 4 years, in 2020 the Court was completely satisfied that the United States violates the privacy of EU citizens when the personal data of EU citizens is visible to the US government, and that the US has no intention of changing its behaviour. Therefore, US companies are not permitted to hold the personal data of EU citizens and residents.
...
The Fossil ↗ source code management system is the most fully-featured alternative to Git, and has had twenty years of development and testing since 2006. After helping Fossil make some changes I now use Fossil for several projects. I also use Git extensively on various software forges (but not GitHub unless I must). Mercurial ↗ is actively maintained but has lost most of its mindshare since Mozilla ↗ , Bitbucket and others migrated away, and is rarely chosen for new projects today.
...
LumoSQL ↗ protects data on mobile phones using a new data storage technology which is highly compatible with most existing devices. With LumoSQL, the device owner has ultimate right to decide who can read or change their data… and this decision continues to be enforced even after it has been copied off the phone to (for example) a bank or insurance company for processing with their in-house database software. In contrast, the situation at present is that device owners are rarely in control of the privacy of their own data, despite many laws relating to privacy.
...