A Design Challenge for Horologists

I have an interest in non-electronic computers as an educational tool. An horologer is someone who makes mechanical clocks and watches, and horologers definitely don’t believe in electronics. That’s why I published Shearer, D. (2007). "Communication: A Request for Collaboration." Horological Journal, 149(12), p. 471., which sounds much fancier than the letter to the editor it was. Given I didn’t even know the British Horological Institute ↗ existed until a week prior it makes me very pleased. I believe everyone can benefit from the principles, but especially the lawyers, politicians and those involved with privacy and law enforcement really needs to what a computer is. The law defines what can and can’t be done with a computer, and to some extent it even defines what a computer is. I think one of the best ways to picture the essence of a computer is to have one in your hand that uses no electronics. Electronics is great, but we don’t need it to have thinking machines. As some background, on my desk I have this little beauty: This has nearly 700 parts, and was invented by the Willgodt T. Odhner in St Petersburg, Russia, in 1874. It was mass-produced in Sweden 1935-1945. Many companies sold copies through the 1970s. It can store numbers and do long division and multiplication - turn the handles, push the buttons, ding! But despite being an essential tool of business for a century, it’s only a calculator, not a computer. I picked it up in a flea market in Helsinki :-) My hand-operated calculator: would not meet most legal definitions for being a computer. It can’t store a list of instructions, and its programming (long division implemented in cogs and levers is still a program!) cannot be changed. would, when in use, meet the legal definition for processing personal data under the GDPR. I could use it to add up your expense records for the month, and the amount of the last expense and the total of all expenses would remain stored and readable in the machine when I finished. (I seriously doubt this calculator would be used to cause GDPR breaches! But it is important to understand the principle of these definitions.) In order to be a computer, it needs a decision system capable of reading a programme and executing it, or what we would call a CPU in an electronic computer. The Babbage Analytical Engine ↗ was a full mechanical computer designed in 1837. The design has been demonstrated many times since to be workable, and there were even programs written for it by Ada Lovelace ↗. She was the first to realise the Difference Engine was much more than a calculator. The 1937 Z1 computer ↗, built in a small home in Berlin, was a fully functional mechanical computer, using electrical motors to turn and move the components: The Z1 was soon destroyed in bombing raids, but the Z1 was the first recognisably modern computer. When I give a talk about “What is a Computer?” I usually play this clip from the US Navy ↗ showing their mechanical fire control computers. This is (a) fascinating and (b) a reminder that very often computing advances are first used to do a better job of killing people. This is certainly the case with AI in 2026. … and all that explains why I wrote in the January 2007 issue of the British Institute of Horologers! I got several replies from horologers (real actual clockmakers!) but didn’t achieve my goal. I have made some progress though. What I really want to see exist is an actual working clockwork computer that performs useful tasks we can recognise from today’s world of computing. It’s clearly feasible. ...

4 February 2026 · 13 min · Dan Shearer

Logical and Thermodynamic Reversibility

This wee note is about physics results I noticed suggesting it may be possible to greatly reduce the power and water required by datacentres. This is in a field of physics I am not remotely able to verify but I’m keeping an eye on what seems to be happening. Large Language Models are subject to the laws of physics in a bad way, because they use so much electricity and make so much heat. Landauer’s principle ↗ identifies the thermodynamic cost of information erasure, and some later work builds on this to show that computation can avoid erasure through logical reversibility. ...

1 February 2026 · 5 min · Dan Shearer

Not Forking

Not-forking ↗ exists to solve a difficult problem presented in the LumoSQL project: how could we graft two very active source trees together in an ongoing way to produce a third, independent tree? I designed and tested the first phase of Not-forking, and Claudio Calvelli did most of the coding. These days I’m the maintainer, and it turns out Not-forking is a reproducibility tool which addresses the computer science problem of developer intent. ...

1 February 2026 · 5 min · Dan Shearer

Reversible Execution

Reversible execution creates computers that seem to run backwards, applying time shifting techniques with simulation/virtualisation to address software unreliability and complexity. I stand by my excited comments from way back in 2005: Reversibility is the biggest advance in debugging since source code debugging — Me, on the GDB developers list ↗ in 2005 In 2026, reversibility still isn’t seen as an ubiquitous must-have for software development, but awareness is increasing. 💡 Confusingly similar names I also have an article on the totally different but similar-sounding topics of logical reversibility and thermodynamic reversibility . If you’re interested in the problems power-hungry AI datacentres present the world you might find it interesting. What is checkpoint-based reversible execution? Reversible execution is about giving the appearance of a program executing backwards in time. If you’ve not seen it before, it is just as strange and impressive as it sounds. ...

1 February 2026 · 7 min · Dan Shearer

Education Exercises

These exercises assume a CS graduate-level background and familiarity with the tools mentioned; they are for mentors to adapt for their students. I have either created or been subjected to all of them 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. ...

1 February 2026 · 6 min · Dan Shearer

Radio Waves to Random Number Generator

Random humans and computers Humans are terrible at randomness. If you ask people to write down a list of random numbers the result can usually be shown to not be random at all. Stage magicians and marketing experts exploit our inability to assess how random an event is. But computers, surely they should be random? It sure feels like it when your printer jams. But no, computers are often worse than humans at being random, and that’s a problem. Randomness is exceedingly important to making computers and networks work. ...

11 January 2026 · 3 min · Dan Shearer