The programming world is full of mathematicians, logical people, engineers. But they might not be the best people to make software.
Making software which really suits an expert work is more like architecture, designing buildings people really want to live in – who have a detailed internal model of how people behave in buildings.
Or consider the people who create high street retail businesses, who need to create a sense of welcome for customers, and also maintain security – quite analogous to what software ought to do.
Interior designers can create rooms which people want to be in.
Ergonomic experts can create tools which fit the way people’s bodies work so they feel intuitive to use.
Writers and editors can deliver information to an expert the way they want it.
Advertising people can make someone excited about an opportunity.
The police know how to make sure people are aware of a problem.
These are all people who know, in their own way, how to develop a good environment for expert work, and there are plenty more designers.
What if software was designed in depth by these people – and then once it had been comprehensively designed, the mathematicians, engineers and logical people step in to build it?