The importance of mental models
I worked as a JavaScript developer for 3 years. However, I didn’t know what a mental model of JavaScript meant during the first 2 years until I read Dan Abramov’s book Just JavaScript, where I realized how important it is to build a correct mental model. For example, how do you understand variable? Consider the following mindless code: const a = { one: 1 } const b = a a.one = 2 console.log(b) People with container/bucket model may say b is { one: 1 } , but people with wire/label model can give { one: 2 } without any hesitation. Mental model is not about how something is implemented under the hood. It’s all about thinking inside, which is why I didn’t say “people with reference model”. Next blog I will share how I build my mental model as a Python beginner.

I worked as a JavaScript developer for 3 years. However, I didn’t know what a mental model of JavaScript meant during the first 2 years until I read Dan Abramov’s book Just JavaScript, where I realized how important it is to build a correct mental model.
For example, how do you understand variable? Consider the following mindless code:
const a = { one: 1 }
const b = a
a.one = 2
console.log(b)
People with container/bucket model may say b
is { one: 1 }
, but people with wire/label model can give { one: 2 }
without any hesitation.
Mental model is not about how something is implemented under the hood. It’s all about thinking inside, which is why I didn’t say “people with reference model”.
Next blog I will share how I build my mental model as a Python beginner.