Copyright, patents, Samba and Microsoft

This timeline covers the period of most obvious abuses of power by Microsoft against free software and Samba in particular. It was more difficult to bury open source like Samba in expensive litigation than a company, but they tried hard. This was the Ballmer era, named after the then-CEO, and the history of Samba’s triumphs feels highly relevant to 2026. What caused Microsoft’s new CEO in 2014 to dramatically change course from such directed hostility? Perhaps it was a fit of morality. Perhaps it was the intention to launch the much worse extortion racket we see today. ...

February 6, 2026 · 376 words · Dan Shearer

Samba

In 2026, the Samba Project is nearly 30 years old and has conservatively a billion users. It started when I got upset at Microsoft for wanting to monopolise all computer networking! I discovered some unmaintained but interesting open source software for sharing files and printers with workstation computers. And the rest is the official Samba history. Samba isn’t just a clever idea, it is implemented by talented software engineers with a very large number of total contributors. I was not one of the Samba core engineers, not being good at intensive protocol analysis combining encryption, obfuscation, historical anomalies and sheer overwhelming volume of old-school RPC design. I was (and remain) more interested in interoperability architecture and design, why these things are needed and make sense to users. During its first decade: ...

February 4, 2026 · 988 words · Dan Shearer

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

February 4, 2026 · 2584 words · Dan Shearer

BibLaTeX scripts and eras

BibLaTeX references across time and cultures I was writing paper in English so ideally there would have been solid English language references, but I found this was not so for my topic. This is for LaTeX authors who need to include references with unusual requirements, especially non-latin scripts, non-English references, rare scripts and ancient documents. In some references I had all three, meaning in my case: Category Range in my references Languages Chinese, Sanscrit, Spanish, Arabic Eras ancient (3400BCE), modern ancient (900CE), old (1898) Right-to-left Arabic Dates precise, approximate, and ranges I had no previous experience of publishing an extensive research piece with this sort of variation. No computer system really handles it well, and as content is increasingly created in non-latin scripts, latin-centric software is showing its flaws. LaTeX has responded with the modern LuaTeX project which demonstrates how robust this 50 year old software is. ...

February 3, 2026 · 2593 words · Dan Shearer

Open Source to Chemical Rockets

(written in 2008) How a young Australian discovered Open Source and a career. Eventually learning that a mixture of code, law and mathematics is a frontier for human rights battles. It isn’t often I come face to face with myself after a twenty-something year break, but I did yesterday. As a first year university student at the South Australian Institute of Technology, I wandered into an Adelaide company called Australian Launch Vehicles (ALV), a company I noticed when driving around doing landscape gardening oddjobs. “Launch Vehicles” sounded very cool, so in I went. ALV was founded by a pair of entrepreneurial rocket scientists. Despite decades of rocketry history in South Australia, there was no local space industry. Establishing a new Australian spaceflight capability in 1987 was very ambitious. ...

February 2, 2026 · 1345 words · 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 · 535 words · Dan Shearer

Reversible Computers

Reversible Computing and Reversible Debugging are amazing and useful applications of Time Shifting via virtualisation, aiming at the massive problem of software unreliability. I believe my excited comments from 2005 still stand: Reversibility is the biggest advance in debugging since source code debugging — GDB developers list In 2026, reversibility has come both a long way and not far at all. I am still very interested in it. What is reversibility? It is possible to have a network of running computers - say, Android, Windows, Linux running on miscellaneous hardware - and then to stop them all and reverse back to any point in time. For example, reversing to a point just before a catastrophic error occurred, so we can watch carefully. And repeat it if we want to, again and again, any number of times. Imagine installing an operating system you know nothing about, starting an application… and then running the process in reverse as it unboots, scrolling up the screen until it switches off. This is true reversibility. ...

February 1, 2026 · 956 words · Dan Shearer

Security Standards and Certifications

I have been lead implementer of the main security and privacy standards several times each. These can seem intimidating, but properly used they improve security overall, and can help a business run more smoothly. From a pragmatic, business point of view: These standards are about writing down the actual rules of your business relevant to security and privacy, and then writing down how you improve these rules, and recording how well they work. All businesses can benefit from challenging their working habits and practices, and since privacy and security touch most parts of a business, this is an opportunity to review how the business works before something goes wrong. From the point of view of both Computer Science and Information Management Science: ...

February 1, 2026 · 1023 words · 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 · 1047 words · Dan Shearer

Radio Waves to Random Number Generator

Random humans and computers Humans are terrible at randomness. In fact if you ask people to write down a list of random numbers it usually takes a few seconds to show they are really not random at all. Similarly, the common saying “one chosen at random” is often not random, and stage magicians exploit our inability to assess how random an event is. But computers now, surely they can be random? It sure feels like it when your printer jams. It turns out though that no, computers need some help to be random. That wouldn’t matter except that randomness is exceedingly important to making computers and networks work. Somehow or other I had picked that up when I was 16 years old. Our highschool had the quite amazing BBC Micros, which I didn’t use much since my loving parents bought the family a Unitron 2200 when I was 15, because computers do seem like they are going to be important in the future. Well they got that right, among many other things. ...

January 11, 2026 · 585 words · Dan Shearer