Notes on “Media for Thinking the Unthinkable”
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.
- In order to create more powerful systems we need more powerful representations.
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.
- Don't stop at describing the system, show its behavior, how it works.
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?
- We can't see cells or galaxies, but by building tools like microscopes and telescopes we can
first perceive them and then understand them.
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).
- Moving from something in symbolic mode (like a circuit diagram) to an interactive mode (watch the
video) changes the way we think about the system. We can manipulate it, test assumptions, and in
general, play with the system to get a better understanding of it. The results of all these things
are visible to us by working in "visual mode", so by combining the three of them we can get a
better understanding of the underlying concepts.
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:
- We need to see the behavior of the system.
- We need to see the state/variables of the system, make comparisons, etc.
- We need to see multiple representations of the system.
- We need to be able to interact with the system.
- We need to abstract individual systems and look at families of systems (to compare them, extract
common knowledge, abstract even more, etc).
Congratulations @febuiles! You have received a personal award!
Click on the badge to view your Board of Honor.
Do not miss the last post from @steemitboard:
SteemitBoard World Cup Contest - Semi Finals - Day 1
Participate in the SteemitBoard World Cup Contest!
Collect World Cup badges and win free SBD
Support the Gold Sponsors of the contest: @good-karma and @lukestokes
Congratulations @febuiles! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!