Mental Models Flashcards
What is a and b after this executes?
let a = 10; let b = a; a = 0;
a = 0 b = 10
Consider:
let a = 1; let b = 2; a = b;
How do variable assignments work?
Variable b does not point to variable a, instead it points to what variable a was holding at the time of assignment.
What is a good mental model for variables in Javascript?
Wires rather than boxes.
In Thinking, Fast and Slow, Daniel Kahneman talks about two different ways humans think. What are they?
Fast: Whenever possible people tend to rely on thinking fast. It is good at pattern matching and can be thought of as ‘gut reaction’. Walking without falling over is a good example of this.
Slow: having to problems solve and think deeply about something. Not reflexive, can be somewhat painful.
In Thinking, Fast and Slow, Daniel Kahneman talks about two different ways humans think. What are they?
Fast: Whenever possible people tend to rely on thinking fast. It is good at pattern matching and can be thought of as ‘gut reaction’. Walking without falling over is a good example of this. It is not good at planning.
Slow: Responsible for complex, step by step reasoning. Helps with things like following/engaging in arguments or mathematical proofs. This system is more costly - i.e. more mentally exhausting. As such we rely on it less than the fast system.
What is an example of thinking fast vs thinking slow?
Reading a function definition. You might scan it at first. If you notice a bug or something that doesn’t match in terms of memorised patterns you are likely to switch to slow thinking and really dig into what the function does and why.
Which ‘fast’ or ‘slow’ thinking method relies most on your mental model?
According to Dan Abramov, the slow thinking is when we really rely on our mental models. Thinking fast uses pattern recognition but true understanding comes from application of our mental models to a context.