Human scale computing


At one of the upcoming CIIC workshops I would like encourage further exploration of the notion of human scale computing. We briefly touched on this topic in the last workshop as part of the discussions around semantic search.

One of the 26 MODA + MODE principles is:

Adapt the cognitive load generated by technology to human cognitive limits

This principle can only be put to good use if human cognitive limits become a primary concern in the design of human institutions and technologies, in much the same way that human scale physical dimensions and characteristics have shaped the discipline of ergonomics. Human scale computing can be understood as the elaboration of the role of cognitive characteristics of humans within ergonomics.

In an increasingly software and data intensive human world the objective of human scale computing is to improve communication and collaboration:

  1. between humans,
  2. between humans and software systems,
  3. and between software systems.

This objective is another way of stating the goal of developing a language that is better than all human languages reliant on linear syntax.


Current economic and social problems go deeper than challenges related to flows of money and physical resources. For at least two decades now people have been happy to engineer and construct opaque software intensive systems, neglecting the role of understandability for humans, and by implication, creating webs of dependencies that no one understands and that can’t easily be analysed in terms of potential risks.

The risks associated with opaque systems are not limited to classical software systems and also extend to artifically “intelligent” (AI) systems that make use of machine learning techniques.  AI systems, the way they are currently designed, further grow the web of dependencies, complete with plenty of naive/simplistic assumptions about human nature(s) and economics baked in.

In terms of potential risks the web of dependencies in the world of software intensive networked systems (which includes program code and data – the distinction between program code and data is meaningless, yet software engineers often completely forget about the dependency web between data elements) is comparable to nuclear power. The data/software incidents to date are roughly comparable to a level of up to the Three Mile Island accident (large scale data security breaches have become a regular occurrence; increasingly cars, buses, and airplanes require regular rebooting to avoid potentially fatal accidents; significant disruptions of complex multi-level supply chains can easily impact millions of people; etc.).

It will take at least a couple of Chernobyl scale and Fukushima scale impacts for human societies to consider a change in approach. By that point isolation of negative externalities and disentanglement from the web of software and data dependencies will have become the hardest problem that humans have ever faced – and that problem will not be isolated in abstract cyberspace but will create and compound problems and impacts in the physical world on a daily basis.

With these concerns in mind I propose the following draft definition of human scale computing:


Human scale computing refers to a new communication system that enables you as a human individual to:

  1. Create and maintain exactly one [computing] system (repository of activated knowledge), not zero, and not two or more
    1. Instances of the system should be able to replicate themselves
    2. All instances of the system must synchronise their models at least once a day
  2. Teach the system what you value, what you believe to be facts, and the models that you use to assess new inputs – nothing more, and nothing less
    1. All the concepts in your language
    2. All your models of the world
    3. Your value system and motivations
    4. Your heuristics for inductive, deductive, and abductive reasoning
    5. All the data instances that you rely on to justify your models (this translates directly into a configuration of a machine learning tool that is understandable by you and by your computing system)
    6. To write and draw fluently in your language
    7. To trust those agents who you trust, no one else, and no one less
    8. What you believe to be translations between your language and the languages of the agents you trust
    9. Which models and data instances you have shared with which agent
    10. Your heuristics for trust building and destruction
  3. Collaborate with your system to interact with the world as often or as infrequently as it suits your cognitive lens and communication style
    1. Synchronise models with your system
    2. Spend time to validate semantic equivalences (shared understanding) with other agents
    3. Refine your models based on the learnings resulting from collaboration with other agents
    4. Update the scope of applicability your models as needed, some models may become obsolete over time
  4. Manage cognitive load in a timely manner, ideally before you become overwhelmed
    1. Analyse the sources of potential overload and teach your system to identify the triggers
    2. Reduce the level of interaction with other agents to a comfortable level
    3. Create algorithms that allow selected cognitive processing to be automated (delegated to your system)
    4. Delegate cognitive processing beyond your understanding to trusted agents with relevant domain knowledge and spare capacity
    5. As needed, share further models and data instances with your trusted agents to facilitate effective delegation
    6. Signal spare cognitive capacity to your trusted agents and respect the load of your trusted agents
  5. Adopt a human scale definition of organisation
    1. An organisation consists of a set of collaborative relationships between trusted agents – nothing more, and nothing less
    2. An agent within an organisation values all its/her/his relationships with other agents within the organisation
    3. The sum of relationships between an external agent and the agents within an organisation are valued by the first agent and by at least one of the agents within the organisation

The resulting system not only acts as a mirror of your conscious knowledge and understanding, but your interaction patterns with the system also reflect your specific learning style and your cognitive preferences.

Need for further research and exploration

Our current technologies and communication tools hardly meet any of the human scale computing criteria to a satisfactory level. Despite all the hype about exponential technological change – which must not be confused with progress, software assisted communication and collaboration is still in its infancy.

Making human scale computing a reality requires significant further work. It represents an opportunity for tapping into the unique cognitive abilities and challenges of neurodivergent individuals, who often find themselves on fringe of society. A quote from Tony Attwood, author of The Complete Guide to Asperger’s Syndrome, provides a suitable call for action:

There’s work to do this century – diseases to cure, environments to save, freedoms to preserve. Fortunately, there are people with minds capable of the challenge, with the ability to focus and persevere. They possess perspectives and talents unique enough to solve the biggest of problems, or enhance the most challenging projects. They are Aspies.

Neurodivergent people learn and play differently. In particular aspies and autists only have a limited if any interest in competitive social “games”. They communicate and enjoy themselves by sharing information and knowledge, and not by negotiating social status. Neurodivergent individuals:

  • Adhere to idiosyncratic moral value systems rather than social norms
  • Are okay with exploring ideas that upset the “social order”
  • Spend much more time experimenting and implementing ideas that others would consider crazy or a waste of time
  • Have untypical life goals: new forms of understanding, making a positive impact, translating ideas into artistic expression

Collaboration can take many forms. Human scale computing represents an opportunity not only to improve communication between humans and software systems, but also to improve communication and trusted collaboration between humans with different kinds of minds and cultural backgrounds.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s