Never impose your language on people you wish to reach. – Abbie Hoffman
A few days ago I was writing about why it’s very difficult to put knowledge into some kind of orderly form – but just couldn’t remember where I’d read that before.
The Internet has, however, brought it to me – although through a rather circular route.
As you probably know, if you read these posts, I’m interested in the history of unix.
One of the oldest utilities in the unix environment is an application called dc, which stands for desktop calculator – it even predates the c language.
dc uses something called reverse-polish notation, which means that instead of writing 1 + 1 =, you write 1 1 + and get the answer 2. It’s more compact – using one less operator and you don’t need brackets.
It can be useful when you’re writing scripts and want do quickly do some maths.
The wikipedia entry for dc has a link at the bottom for a paper by Douglas McIlroy, called A research unix reader, where McIlroy talks about how they came up with a way to document their growing system – which came to be known as man pages.
He wrote: ‘The absence of any “logical” grouping of facilities was a deliberate result of discussion. (As encyclopedists have always known, the relationships among knowledge are too various to force into rational linear order.) Retrievability and honesty were the prime concerns.’
So we are there – from wondering about reverse-polish and dc to the concept of information and order.
Now, you may wonder, why think about a concept that is nearly 50 years old?
It’s because even now if you try and document anything or create a system to hold information the chances are that you’ll make a mess of it.
Let’s start with something as simple as knowledge in an organisation.
Do you work in an organisation – have any of us worked in organisations – that have successfully implemented a way to collect and share knowledge between employees?
When you want to know more about something do you head to your corporate information management system?
The papers that pour out of organisations – policies, risk assessments, quality statements – are they ever used to do anything actually useful?
Or are they used to tick boxes to confirm that you have such documents?
Or do you head to the Internet to a collection of disorderly information in which it is almost certain that what you need exists someplace.
It is slightly astonishing, to me anyway, just how that quote from McIlroy is still so relevant today.
All over the world eager young and not-so-young analysts are trying to create databases and spreadsheets, trying to corral and corner data, rather like trying to trap a swarm of bees using a pitchfork.
Yes the columns that make up the pitchfork are solid but they’re not going to keep many of the bees penned in for long.
Or, as the picture shows, it’s like trying to stuff a cloud into a cardboard box.
If you want to create a useful knowledge system you need to let it evolve freely – precisely what has happened with the Internet – and what does not happen with most organisational projects.
But you also need to think about two more things – how you retrieve the information and how you keep it honest.
The retrieval job for the Internet has been taken up by Google – they spotted the solution there.
The honesty point is what threatens to bring the Internet down now – from the problems of fake news to the way in which politicians use the platform to promote policies of hate and division.
But all this is encapsulated in a paragraph of a few tens of words written all that time ago.
This idea that things don’t really change that much is nicely illustrated in Sinclair Target’s blog post about the utility cat.
I love this quote: “My aunt and cousin thought of computer technology as a series of increasingly elaborate sand castles supplanting one another after each high tide clears the beach. The reality, at least in many areas, is that we steadily accumulate programs that have solved problems. We might have to occasionally modify these programs to avoid software rot, but otherwise they can be left alone.”
And cat is important because it is held up as an example of how things bloat and get fat over time – almost as a default.
If you aren’t interested in the programming aspects of this – there is one thing to take away from this post.
When you find yourself trying to control information – trying to create a system to put around it – like a CRM for customer data or database for analytics – breathe to ten and walk away.
In reality the very last thing you should do is think about such things.
The first thing you should do is figure out what your customer needs you to do.