Andy's Law

When I was a Summer student in the late 80's, interning at a large pharmaceutical company in the UK, I was frequently appalled to see people sitting with fan-fold green and white striped printouts on their laps, carefully re-keying numerical data back into another computer. Usually into the PC on their desk. I spent most of my Summers at that time connecting those computers together, screen-scraping terminal emulators, parsing foul proprietary format files, to try to save these well-paid, intelligent people from having to manually transfer data from one computer to another.

Maybe this experience was formative in my subsequent career in networking, messaging protocols, and of course, MQTT!

Anyway, at the time, I coined what I subsequently referred to as "Andy's Law":

You should only type data into a computer once.

There. Short and to the point. But just as relevant today as it was 40 years ago! I still see people labouriously re-entering data from one computer into another.

Stop it! Follow Andy's Law!


Holly's Law

Actually, that reminds me of Holly's Law - coined by my good friend and colleague, Holly Cummins. She is a self-confessed Automation Addict.

Holly's Law states:

Simple, huh?! Again, every day I see examples of repetitive task being done where the people doing them say that they are too busy doing the tasks to stop and automate them.

Get over it - follow Holly's Law!


Andy's Rule

And just for completeness, here is Andy's Rule, coined when I was working on impenetrable multi-hundred page specifications for arcane SCADA protocols, just around the time the first version of MQTT was published (1999, making 2024 its 25th Birthday <party emoji>).

Simply put, Andy's Rule says:

Any protocol specification of more than 12 pages can not be implemented by two separate people such that the implementations are fully interoperable.
Either the people writing the spec couldn't cope with documenting a long, rambling specification, and made errors and inconsistencies; or the people implementing the specification lost the will to live after the 12th page and made errors and inconsistenicies in their code.

It obviously goes without saying, that the first version of the MQTT specification was 12 pages long!

 

Andy Stanford-Clark - Nov '24 - @andysc