A lot of thinking around corporate data systems is making information easy to find. Experts (we are told) spend too much time looking for information, or aligning it.
What if they never had to search for information at all?
Ok some people are going to have to spend time looking for information. Researchers and detectives for example.
But most of us shouldn’t. We have complex expert work to do, but we’re predictable enough that the information could be right there.
Our systems are nowhere near designed that way. How can we get closer to it?
Category: Uncategorized
-
Can it be unnecessary to look for information?
-
What intelligence actually means
Roger Schank, speaking at our first ‘Software for Domain Experts’ conference in Athens last week, gave a theory of what intelligence means – or to be more precise, how we usually use our intelligence.
Perhaps the most interesting way we use our intelligence is when we spot patterns.
To tell an old family story – at my father’s mother’s wake, my uncle was sitting outside the house in Battersea on a doorstep, and an old lady walked by who said it was very sad news that she had died. My uncle asked her who she was, and she told him. My uncle put some patterns together and realised it was the lady who had (at this point the story is not so clear but she’d had a colourful past which he’d heard about – or was illegitimate – or something). But he’s putting together patterns based on little bits of information.
To give another example, in city restaurants tonight, old friends who work in a similar field but not together, will meet for dinner and talk about what they were doing, and someone will say what they will doing, and trigger another story about someone’s experience, an their conversation will go like that – “that reminds me of ..” “i think i know that guy” “once we had something like this in Paris”
This is all mundane stuff but this is how we use our intelligence.
And computer can’t do this or anywhere close.
Roger told an example about IBM’s Watson, supposedly the world’s most advanced ‘artifical intelligence’ – which basically reads Wikipedia pages in a sophisticated way, like Google does.
In the Jeapardy quiz show (which Watson famously won), the question was asked of ‘what was the anatomical oddity U.S. Gymnast George Eyser, who won a gold medal on the parallel bars in 1904.”
The answer is that Mr Eyser had an artifical leg.
Watson read the Jeapardy Wikipedia page, which had notes about his leg, but Watson couldn’t understand what it was actually saying. So Watson gave the answer that is leg was an ‘anatomical oddity’, not that he had an artificial leg. But Watson can’t spot patterns.
When we really develop artifical intelligence, it will spot patterns – as well as you can and my uncle can. But we’re nowhere near there yet. -
Experts want to spot patterns and be told facts
I had coffee yesterday with a friend who is formerly one of the top project managers in the UK oil and gas industry, developing billion dollar projects, a real expert.
I asked him what kind of software he would have ideally liked. (Actually I may have asked him something a few steps back like, what do experts actually need).
He said that experts want to spot patterns and trends of what is happening
And experts want to know facts of what’s happening.
That’s it.
That’s the same for any expert, a doctor, school teacher, policeman, engineer, business development person.
Why can’t software provide that?
The software industry is developing alerts, messages, drill down information systems, dashboards, collaboration tools, analytics, news services, ‘we thought this might be useful’, all this fragmented mish mash of tools. But missing the opportunity to give expert users what they really need.
Of course, for software to distill all the data available and get the right ‘fact’ to the right person is an enormous technical task. Facts might be based on analytics.
Perhaps many lives could have been saved if security experts were more aware of the fact (which I read today) that it has been possble to get on a plane at Sharm El Sheikh without scanning your baggage, on payment of a fee of £20. (see http://www.independent.co.uk/news/world/africa/russian-plane-crash-sharm-el-sheikh-airport-security-concerns-raised-after-tourists-pay-20-to-skip-a6723591.html)
But technology has the capability to do this – and no-one (much) is developing it. -
Good software supports but doesn’t direct
I don’t know why it is so popular among software designers to try to direct the users. It is an insane idea.
I bought a new Amazon Kindle last weekend. Before I could read a book on it, I was required to actually do stuff to show I knew how to use it, or forcing me to learn how to use features like highlight a sentence,
Most infuriating of all was a page which asked me to enter my Twitter and Facebook IDs – and there was no option to say ‘no I don’t want to connect my Kindle to a Twitter or Facebook account I just want to read books on it’. I had to select ‘I’ll do it later’ or something similar to go to the next screen.
Once I start thinking like a hacker, like the programmers do themselves, then it is no longer infuriating. The way to get to the next screen is to click ‘I’ll do it later”. But still, I would rather not be guided at all.
I’m a human just like you are – I like to go my own way. “My Way” is maybe Western culture’s most popular songs. Why don’t software enginers get it?
Good software should be like my servant. Its there when I need it and out of my way the rest of the time.
I’m not speaking like an idiot, I’m saying this is how my brain is wired to be, and so is yours.
When will software do that? -
The best software should be invisible
I’ve just bought some wine and dinner in Tescos supermarket and paid with a self-service checkout,
I forgot about it,
Then I started thinking about how much easier Tesco’s self-service checkouts are compared to the Sainsbury’s ones I have used twice over the past week, buying something similar.
Start off with the fact that I don’t expect to use my brain when I go to supermarkets, at least the logical part of my brain. I think hard at work and go to supermarkets when I am not at work, so trying to rest my brain. I can cope with a smile at a check-out attendant and sometimes some chat and taking my card out that’s it. I don’t expect to have to work out how to use software.
I don’t like social interaction much when I need to get something out of it. I have to do that a lot at work, which is fine, but I don’t expect to have to do it at supermarkets. So I hate it when the software bleeps at me and I have to find someone to type in a password (which is all they do, by the way, never do what the software is asking them to do, ie confirm i’ve put what i said i put in my ‘bagging area’).
The first time I went to Sainsbury’s on the weekend, I had to get an attendant twice – once to confirm I had in fact bought one bag, and once to confirm I’d put a pencil sharpener in the ‘bagging area’ which was too light for the scales to pick up (not that the software was clever enough to know).
The second time I had to get an attendant 3 times. The first time I put the shopping basket in the “bagging area” and think I couldn’t just remove it, someone had to type in a code. The second time to confirm I was over 18 to buy wine. A third time to confirm I had bought 1 bag.
In Tescos I bought 1 bag and bought wine and didn’t need anyone to type in any codes.
A third example – when buying a chocolate bar in an airport last weekend, already stressed from having to look after 3 small children and bags (with my wife’s help), I was faced with a self checkout machine. An attendant came over and (perhaps seeing the look in my face or perhaps he does it to everyone) agreed to operate the machine for me. That was great for me but from the software’s point of view, is pretty much admitting defeat.
It is much easier to use software when you know how it works and you know its quirks and bugs – just like the people who build it do. It is horrible to use it, particularly when you don’t want to use your brain.
The relevance to the Software for Domain Experts blog is this. Experts don’t want to think about their software – they don’t even want to feel that they are using software.
Making software which does this is hard – but worth the effort.
When will someone do this for experts? -
3 strong threads
There are 3 strong threads to the Software for Domain Experts idea.
The first is the technical one. Using ‘low code’ tools, and other methods which make it easier to build code, new applications can be built much faster. This is very essential when we start to move away from the ‘step by step’ process of building software, to one where software is continually evolving, after the users are using it. This makes it easier to make software which is more stable, and adapt software – for example to the needs of a different country.
The second thread is the commercial one. If experts have better software, they can do so much more with it – which means more profitable organisations and investment opportunities. And there are opportunities for small software companies building tools to help them.
The third thread is the psychological one. Decades of research has been made into how the mind works. We like to follow regular patterns, we love to learn, we like security, we don’t like change, we can’t handle much complexity. We can spot connections between different things much more powerfully than computers can – and most expert work perhaps comes down to a form of this (like the fire chief who recognises a house which is about to collapse before a non expert does).
All of this comes together in an exciting business opportunity.
-
When the domain experts (who will use the software) understand the software logic and are involved in its development
A critical problem with software implementations is lack of “engagement” from the people who are going to use it.
The term “engagement” might be accurate (ie to say, they aren’t interested) but misses a great deal.
From our experience working with the Aberdeen oil and gas industry, it seems more accurate to say, many professionals would rather pull all of their teeth out than have a discussion about software. They hate software, they hate their company IT department, they hate software companies and their stupid promises, they hate software which tells them what they can and can’t do, or software which tries to get them to ‘comply’ with something someone else decided.
Often – or perhaps usually – they don’t understand what the software is telling them, or why it says what it says.
It makes them feel devalued as a human being, spending their days trying to work out how to get on with sofware rather than actually doing what they were trained to do and want to do.
Once they’ve figured out how to use a software package, even if it took them months, then they really really don’t want anyone to take it away from them and start trying to get them to do something else.
So we get a situation where, yes, users are not very engaged with software development.
how do we fix this?
-
Expert centric software – what we value
Here are some things we value when creating expert -centric software:
- When the domain experts (who will use the software) understand the software logic and are involved in its development
- Experts able to follow goals rather than following processes
- Experts have the best possible software working landscape, with the best company data readily available and easy to work with
- It is very easy to enter data and stories
- Software tools which motivate people
- Software tools which aggregate large amounts of corporate data
- Tools which distinguish fact, analytics, previous experiences
- Tools which help you find out about previous experiences which were similar to this one and what happened
- When the domain experts (who will use the software) understand the software logic and are involved in its development
-
Expert job categories – who would benefit from expert centric software
Here are some expert job categories who might benefit from expert centric software:
CONSTRUCTION / BUILDINGS
Building surveyor Construction manager Estate agent Facilities manager Geographical information systems manager Geomatics/land surveyor Housing adviser Site manager Building control officer/surveyor Building services engineer Quantity surveyor ENGINEERING
Aeronautical engineer Civil engineer Commissioning engineer Communications engineer Control and instrumentation engineer Electrical engineer Engineering geologist Environmental manager Exploration geologist Health and safety adviser Land-based engineer Maintenance engineer Manufacturing engineer Materials engineer Materials specialist Mechanical engineer Mining engineers Petroleum engineer Seismic interpreter Site engineer Software engineer Structural engineer Technical author Technical sales engineer Water engineer Chemical (process) engineer MONEY
Commodity broker Corporate banker Corporate treasurer Credit analyst Financial manager Insurance broker Insurance claims inspector Insurance risk surveyor Insurance underwriter Investment analyst Investment banker – corporate finance Investment banker – operations Investment banker Investment fund manager Pension scheme manager Trader Loss adjuster (chartered) GOVERNMENT / LAW
Advocate (Scotland) Armed forces officer Arts administrator Barrister Clinical research associate Customs and excise officer Customs officer Doctor (general practitioner, GP) Doctor (hospital) Economist Education administrator Energy conservation officer Government lawyer Government research officer Health and safety inspector Health service manager Higher education administrator Lecturer (adult education) Lecturer (further education) Lecturer (higher education) Legal executive Medical physicist Museum education officer Nutritional therapist Nutritionist Records manager Recycling officer Social researcher Solicitor Sports development officer Tax inspector Teacher (secondary) Tourism officer Town and country planner Trade union research officer Trading standards officer Urban general practice surveyor Waste disposal officer Water conservation officer Careers adviser (higher education) Civil Service administrator Licensed conveyancer Local government administrator Patent examiner Regulatory affairs officer INFORMATION TECHNOLOGY
Information scientist Information systems manager Information technology/software trainers IT consultant IT technical support officer Systems analyst Systems designer/builder Systems developer Systems programmer GENERAL MANAGEMENT
Media planner Agricultural manager Catering manager Charities administrator Logistics/distribution manager Management consultant Personnel officer Planning technician Project manager Quality assurance manager Recruitment consultant Fisheries officer Fitness centre manager Leisure centre manager RESEARCH
Market research executive Marketing account manager Marketing executive Restaurant manager Retail buyer Retail manager Sales executive SCIENCE
Animal nutritionist Biomedical scientist Field trials officer Food scientist Food technologist Forensic scientist Immunologist Meteorologist Soil scientist Toxicologist Advertising account planner Biomedical engineer Oceanographer Operational researcher Product development scientist Programme researcher Research scientist TRAVEL AND TRANSPORT
Courier/tour guide Exhibition organiser Hotel manager Tour/holiday representative Transportation planner Travel agent -
The Software for Domain Experts Manifesto
- Creating business value
- If experts have the right information presented in the right way, it creates enormous business value.
- They can make better decisions, keep organisations healthy, and be more productive, and enjoy their work much more.
- They can even generate entirely new business models.
- Giving experts better data is surely one of the best answers to some of the world’s biggest challenges – (reducing the cost of oil and gas production, solving carbon, running government departments well, everything else).
- If a problem can’t be fixed by giving experts access to the right data, it probably can’t be fixed at all.
- Many experts in critical roles have a tiny percentage of the data which would help them do their jobs better readily available.
- What experts need
- Experts need the right data presented in a clear and consistent way so they can make the right decisions.
- The data needs to show them where they are, what is happening, things they should be aware of, times when they were in a similar situation before and what happened.
- Entering data must be as simple as possible
- They must have a rough understanding of how the system works
- The system must also motivate the experts – give them suggestions which hold their interest
- People working together must also have access to the same data, so they can discuss what it means
- Experts may be part of a process, but it probably makes sense to separate the process management with the challenge of providing them with the right data, otherwise it gets too complicated.
- In order to provide this
- They probably need ongoing service and continuous customisation of the software to changing needs. This is not something big companies are usually very good at.
- The user interface will probably be web hosted
- Building the right user interface, and delivering the right data to it, will also need domain expertise
- There will be different interfaces for people in different roles. People in a chain will see the data of people before and after them in a chain; people in management roles will see the data of their subordinates.
- Under the hood
- Getting the right data to the right place is no trival matter
- It requires a lot of very complex data translation work, which will all need to be paid for, from the value generated for the domain experts – which means the domain experts have to be supportive of the idea
- Data standards will be very helpful, particularly in working out the intersections between streaming and fixed data
- Data analytics are important – but the effort is wasted unless the right data can be delivered to the right place to someone who understands what it is
- The software will probably be cloud hosted
- Low code tools will help put the software together faster – and make it clearer to the developers how it works – and make it easier to update.
- The commercial model
- Expert users must be involved in development as much as possible – since they (or their departments) are paying for the development
- Need to be space for independent companies of all sizes in every layer – the user interface layer, getting data to the user interface, underlying databases, analytics, cloud hosting, low code tools
- Common errors made in creating Software for Domain Experts
- Too much emphasis on ‘business process management’ and not enough on getting the right data to the right people
- IT department taking a reactive mindset – fixing problems rather than creating the best possible system
- Not enough willingness to do the really difficult work!
- Creating business value
