Computers don’t think like humans — here’s what that means for your policies, contracts, and laws
There’s a bunch of things humans say every day that aren’t actually well defined, but we assume mean the same thing to everyone. That’s an understanding computers just don’t have, because they don’t have common sense like we do.
At the NSW Government, we recently codified our first bit of government rules. That means we made logic statements to replicate the Policy Terms and Conditions a human wrote. You could also codify the rules of a maintenance contract, or countless other things.
But we didn’t create rules using code logic, we interpreted rules that already existed into code logic. Which means we inherited stuff that might read ok, but technically doesn’t make sense.
What the heck is 4.5 years old?
Let’s look at the NSW Government’s policy for who gets an ‘active kids’ voucher. It’s a $100 voucher to spend on sports activities for children who are, amongst other rules, between 4.5 and 18 years old.
4.5 years old is actually a proxy — it’s for ‘School aged’ children and in Australia, that means you’re at least 4 and a half.
A person would assume 4.5 is four years and six months. So for somebody born on 31st June 2000 is 4.5 on 31st December 2004. Easy. Easy for humans.
Then, when we have to write a calculation for it, we realise that it’s pretty ambiguous. There’s leap years, the fact that half a year happens at midday, the fact that months are different lengths. Basically, the amount of time they’ve been alive for when they turn 4 years and 6 months old differs from person to person.
We end up writing a bunch of things that work out if a person is actually over, or under, four years and six months old. A problem that could have been avoided if the people who wrote the rules had been the same people who make them technically doable.
One of the big benefits of considering calculating the rules as we’re writing them, whatever kind of rules we are writing, is that we can spot any human-assumption based ambiguity like the 4.5 years one.
In an ideal world, we sit the people who understand what the rules are trying to achieve with the people who understand how computers will help turn them in to services. Then, instead of a sentence like “is between the ages of 4.5 and 18 (inclusive)” we end up with better rules, which can be easily understood, are easier to manage, and can be accessed by humans, digital services, or software.