Not Before Time

What Did They Know, and When Did They Know It? This old question in law, journalism and commerce has decided the outcomes of criminal trials, ended political careers, and settled the fate of companies. But when it comes to digital information, until recently it was quite difficult to answer. Not Before Time (NBT) is a public broadcast facility that connects information to time in three ways that can be trusted without trusting any single person or organisation: ...

April 10, 2026 · 25 min · Dan Shearer

Slow LLMs and MCPs are hiding problems

This is a technical note about a problem that is going to bite agentic AI users soon. 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, and AI seems so, so slow. There’s so much waiting, and every mistake means yet more sitting around. Tasks we know actually take maybe 5 microseconds on an operating system (eg, does a file called Things-to-Do exist?) can take one million time longer – between 2 and 5 seconds. This is because the big brain in the cloud is being consulted multiple times, often with timeouts. It’s a young, unstable and unreliable stack, rather like the early days of MS DOS or the Apple ][. When AI gets hold of the data from your computer via an MCP server it can do some very interesting things, but it is not put together well. ...

March 12, 2026 · 6 min · Dan Shearer

Opportunity in GDPR Article 28

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 Under the EU’s GDPR law virtually every company is a Controller, and virtually all Controllers use at least one Processor. When a Processor is engaged, the GDPR requires that a contract is signed with the very specific contents spelled out in clause 3 of Article 28. The GDPR requires that Controllers and Processors cooperate together in order to deliver data protection, and this cooperation needs to be very carefully managed to maintain the security and other guarantees that the GDPR also requires. That’s what this mandatory contract is intended to achieve. ...

February 9, 2026 · 14 min · Dan Shearer

How to Replace Windows NT with Linux

When Linux was a Struggling Challenger In 1999 I joined my first startup, Linuxcare in San Francisco. The Linuxcare story is a quintessential United States dot-com bubble narrative, featuring a famous venture capital fund, massive growth, a failed IPO, and a fancy new ex-IBM CEO resigning under a cloud. Founded in 1998, Linuxcare aimed to be the “0800 number for Linux”, a concept we now know was sound. So close! ...

February 8, 2026 · 45 min · Dan Shearer

Fossil

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. ...

February 8, 2026 · 14 min · Dan Shearer

LumoSQL

LumoSQL protects data on mobile phones using a new data storage technology which is highly compatible with most existing devices. With LunmoSQL, 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. ...

February 7, 2026 · 6 min · Dan Shearer

Logical and Thermodynamic Reversibility

The topic of reversible computers and backwards execution is quite different to logical reversibility. My experiences of reversibility were all driven by correctness in software and it didn’t matter that under the bonnet nothing truly executes backwards. Now AI with its hungry datacentres has made energy a top priority problem to solve, and development of reversibile hardware to achieve thermodynamic reversibility seems feasible. Logical and thermodynamic reversibility Large Language Models are subject to the laws of physics in a bad way, because they use so much power and make so much heat. With reversibility, physics might come to our rescue and greatly reduce the amount of power required. ...

February 1, 2026 · 4 min · Dan Shearer

Not Forking

Not-forking is a technical tool for software development. Not-forking assists with reproducibility. Here are some simple ways of explaining what Not-forking can do: Not-forking lets you integrate non-diffable codebases, a bit like patch/sed/diff/cp/mv rolled into one. Not-forking is a machine-readable file format and tool. It answers the question: What is the minimum difference between multiple source trees, and how can this difference be applied as versions change over time? Not-forking avoids duplicating source code. When one project is within another project, and the projects are external to each other, there is often pressure to fork the inner project. Not-forking avoids that. Not-forking helps address the problem of reproducibility. By giving much better control over the input source trees, it is more likely that the output binaries are the same each time. But here is the big win: Not-forking avoids project-level forking by largely automating change management in ways that version control systems such as Fossil, Git, or GitHub cannot. The full documentation goes into much more detail than this overview. ...

February 1, 2026 · 3 min · Dan Shearer

Reversible Execution

Reversible execution creates computers that seem to run backwards, applying time shifting techniques with simulation/virtualisation. They address the problems of software unreliability and complexity, and I believe my excited comments from 2005 still stand: Reversibility is the biggest advance in debugging since source code debugging — Me, on the GDB developers list In 2026, reversibility still isn’t seen as an ubiquitous must-have for software development, but awareness is increasing. At the same time, the equally interesting topics of logical reversibility and thermodynamic reversibility have become very important. They are not really anything to do with reversible execution, they just sound similar. But if you’re interested in the problems AI datacentres present the world, this kind of reversibility looks highly relevant. ...

February 1, 2026 · 5 min · Dan Shearer

Education Exercises

These are some exercises and tricks I have either created or been subjected to over the years, and I have mentored students through them on many occasions. The general theme here is that most of the systems and stacks that are taken for granted often don’t work very well, and often don’t seem to have a very bright future. This is even the case for famous codebases relied on by billions of people. There are no absolutes and no immediate fixes, but it is food for thought if we can demonstrate immense waste of human effort amid poor quality computing systems, even when impressive modern computer science is applied. ...

February 1, 2026 · 5 min · Dan Shearer