These are some notes from Bret Victor's Media for Thinking the Unthinkable:
Science = System → Theory.
Engineering = Theory → System.
Science → System ← Engineering (two approaches for understanding systems).
The representations that we use of the system are how we think about it. Our representations are
how we understand the system and what we understand about it.
Incomprehensible. Text can be a low bandwith channel (think of it as lossy compression). Instead of letting
the readers create a [probably] incomplete picture in their heads, we can transmit the information
in a higher bandwidth medium:
Understand the picture in the writer's head and instead show that.
Just as there are odors that dogs can smell and we cannot, as well as sounds that dogs can hear and we cannot, so too there are wavelengths of light we cannot see and flavors we cannot taste. Why then, given our brains wired the way they are, does the remark ‘Perhaps there are thoughts we cannot think’ surprise you? Evolution, so far, may possibly have blocked us from being able to think in some directions; there could be unthinkable thoughts.
Richard Hamming — The Unreasonable Effectiveness of Mathematics in the Natural Sciences
Unthinkable thoughts?
There could be unthinkable thoughts...
...yes, but, we can create tools that adapt these unthinkable thoughts to the way our minds work
(and so we can think about them).
Bret mentions that "writing made thoughts visible". I'd complement that with language makes
thoughts transmittable. Not only to others, but to ourselves (be it by writing them or by saying
them aloud). As he mentions though, speech is transient, fleeing.
Writing → Reason → Rational thinking.
It took us ~800 years to go from this:
To this:
Easier to think about, easier to manipulate. What if x is not a number but a concept like a
velocity, or going further, a member of an abstract group?
It's interesting to note that the birth of mathematics as we know them today is not a mathematical
concept per se but a better user interface.
Thinking unthinkable thoughts → Representations to make invisible things visible.
Jerome Bruner talks about three different ways people think about things:
Enactive — Iconic — Symbolic
In modern UI terms they might be:
Interactive — Visual — Symbolic
Interactive: thinking by doing (actively exploring).
Visual: thinking by seeing (especially seeing many things in parallel (it allows us to do
comparisons/analogies/etc).
Symbolic thinking by logic, reasoning (think of code, equations, written text).
By manipulating symbols inside a system (playing with it, see Explorable
Explanations) we can start to develop an intuition
about the problem.
How do we create these representations?
There's a great expresiveness and directness in drawing, when you want to see something it's right
there. Drawing is too limited though (wheter it is on paper or in Illustrator). Traditionally we've
moved away from drawing and instead we write code that does the drawing. Code is the perfect example
of the symbolic mode we talked about before. Instead of worrying about code, we can create tools
that help us draw these dynamic visualizations.
To summarize:
To get a better understanding of systems we need: