What is it
- The total amount of mental effort being used in the working memory
- describes a universal set of principles for managing cognitive load that lead to efficient learning
Designing teams & their responsibilities with cognitive load in mind
- Dan North speaks about this in Software that fits in your head.
Total cognitive load is comprised of three types
1. Intrinsic Load
- imposed by the inherent complexity of the task being performed. Manage large tasks by breaking them into smaller ones. Epic → User Story → Task
- Dan North has some good tips on how to handle intrinsic load, Dreyfus Squared comes to mind.
2. Extraneous (irrelevant) Load
- imposed by distractions, or tasks irrelevant to the goal. e.g loud environment, unfamiliar dev tool, unreadable code, complex organisational processes to follow before, or during work. Can be mitigated by reducing the number of libraries & tools to a bare minimum, making use of linters, that sorta thing.
- You want to minimise this as much as possible, not always possible to completely eliminate
- this is usually where tech-debt lies.
3. Germane (relevant) Load
- imposed by tasks relevant to an overall goal. in the context of software delivery, an example of this is knowing the syntax of your team’s language of choice in
Managing information overload
- This is a full presentation on cognitive load theory, and other stuff around managing information overload, & how we learn.
Related reading
- Shared by Andre - Cognitive Load Developer’s Handbook 🧠