Time Tables One of my projects on my "someday"
list is to learn my time tables. Not my decimal time tables (2x2 =
4, 7x7 =49). Those I learned in Grade 3 or 4 or something. I could
brush up on those - 13x11=…. I don't know off the top of my
head. But that's not what I mean.
I want to learn base 16 time tables. Or, "Hex" time tables. Hex
numbers are used by computers is all sorts of places. The color of
this text is defined to the computer as a string of 6 hex digits
(e.g. #000000 = black, #ff0000 = red). Hex is used all sorts of
other places too.
"What for?" I hear you asking.
Simple: I believe our ability to think is enhanced by the common
constraints and multiple that we are accustomed to. Simply put:
it'll stretch my thinking.
Don't believe me? What time is your alarm clock set to? 7:00?
7:30? Probably something like that. Why not 7:28 or 7:03? It's more
likely that your digital alarm clock landed on some time like that
- and then you proceeded to adjust it to an even number. Why?
Because we are used to even.
More to the point: what is even? Well, in decimal-land (base-10
digits that we are used to) even is 0, 5, and 10. "Aha!" I say,
"That's it." Because in base-16 even is not 0,5,10. I'm not sure,
but I'd guess it's 0, 8, 16. "So?" You might ask. Well, that's only
one minor example.
"I'm sorry, what?" I ask, "Your alarm is set to an odd hour
already?" Ok, hotshot, try this one: when you use a microwave, say
you are warming your lunch, and it needs about - you're getting
ahead of me on this, aren't you - it needs about a 1/2 minute to
warm, what time to do you set? (Kudos to the family who taught me
this: Schmidts, you know who you are.) You probably set 0:30. But
that is inefficient. If you want to save a few microseconds of your
time, you might set it for 0:33. Is that 0:03 going to make a
difference? Then why not save the motion of your hand from the
first "3" to the second "0"?
Alternatively, you might look at the buttons on your microwave
and decide that the "9" was closest to the start button and always
use "9"s. In this case, you might set 0:99 and then just stop the
microwave when it ticked down 0:30 (or so).
Big Numbers: Busy Beavers & their dams This
is all just the warm up to an article I just read: "Who
Can Name the Bigger Number?" (warning: long). In this article,
Scott Aaronson (author), argues a few points and talks a lot about
mathematical number theory: Turing machines, Busy Beaver numbers -
it's all fascinating stuff to a geek like me. The real interesting
part comes in the utility of it: at the end. He posits that we
humans are scared of big numbers, poor at thinking about them
(image 4.3 billion grains of sand - yeah, no clue how big that may
be) and that this leads to problems. For example, that if we kept
our current growth rate, the entire earth would be humans by 3750
(or, environmentalists: the exponential growth of global warming is
something most people don't understand well because of this
problem).
*Steps away from that discussion* There is a lot in that article
that I like and it is a great article in that there are 3-5
interesting threads of thoughts to take off from it.
But I'm going to take one that Aaronson didn't and you probably
wouldn't if you weren't reading this.
Leaky
Abstractions
Joel Spolsky talks about leaky abstractions - I'd say coined,
but I don't really know. In computing, an abstraction is something
we use to make life easier. He talks about
it on his blog, but one of his books - "
Joel on Software…" - has a fuller explanation (pp. 197
ff).
When you click on the key "k" and a "k" appears on screen (at
least, most of the time). The keyboard is an abstraction. To the
computer there is no "k." There isn't even a keyboard. Really,
underneath the computer understand input in the form of an
electronic pulse that transcodes to a binary string - you know I
don't even really know what really happens: at best I can
drill down 1 or 2 abstractions (there are several layers of
abstraction with most things on a computer).
And that's the point of an abstraction: to use a concept that is
simple to understand / explain a complex reality.
We use abstractions all the time. You talk about "talking Aunt
Trudy on the phone" but that's not the true reality: it's an
abstraction. In reality, you dial a code (which, in your head, the
abstraction maps to Aunt Trudy) using an electronic device and, if
Aunt Trudy is home, you talk to her. And then there is the phone:
another abstraction. Enough, next.
So what's a leaky abstraction? Well, computers don't always work
as they are supposed to. No, really, trust me though don't. "Oh,
you know that already. Ok."
The Best Leaky Abstraction to Date So, back to
big numbers. Aaronson, talks about a study where a group of
Russian-English bilinguals were trained in some
big-number-math-stuff and then tested on it in Russian and English.
In theory, they should perform the same in either language.
The brain, you see, is a very complex (and beautiful)
abstraction. You think about things - you feel things. It's all
synapses firing and other biology (one of the few subjects I didn't
care for in school). The abstraction is that if I have the 2
languages and can handle subject X in both, I should be able to do
them just as well: because it's my brain power underneath (the
language being a way to "get at" my brain).
But, that's not how it works, it turns out. Instead, whichever
language they were trained in big numbers first, they performed
better in. Put another way: their language formed a part of their
ability to think. This isn't necessarily radical (at least not to
me) but it I wouldn't have expected math to be hampered by
language. I thought that those were two separate things in the
brain. My abstraction had a leak.
If this is true, maybe had I read it in
Spanish (pdf) it would have been harder for me to understand:
since all my math training was in English.
Aaronson goes on to draws some conclusions on education from
this (and rightfully so) which are also interesting.
So, what to do about it?
"9x9=81, 9xA=5A, AxA=64…" (you gotta start somewhere)
Aside: as an added bonus, I also gleaned 2 quotes from the
Aaronson article. One is:
"Big numbers have a way of imbuing abstract notions with
reality." -Scott Aaronson