On Nov 30, 2009, at 11:13 AM, Ian Mallett wrote:
> g = -9.8m*s^-2.  

If you want to learn about gravity, watch this video: 
http://video.google.com/videoplay?docid=-9055536763288165825 -- but be careful 
or you might get inspired.

I say that because this video is an instance of The Canonical Alan Kay Lecture. 
Indulge me a few paragraphs to explain what that means. 

Alan Kay is a famous computer scientist, mostly known for three things:
        1) His witty sayings, such as, "The best way to predict the future is 
to invent it," and "A good point of view is worth eighty IQ points;"
        2) Actually "Inventing the Future;" and
        3) Inspiring other programmers to invent the future.

In 1969, Alan had a vision: kids learning to "think about thinking," using what 
he called a "DynaBook" -- which we now call a laptop computer. Since his vision 
was a long way off, he got a group together at Xerox PARC, and they developed a 
"working prototype" that was the size of a mini-fridge, but otherwise fit the 
bill. Steve Jobs brought his own gang to see a demo of that, and they were 
inspired to make Macintosh.

Now we have laptops and GUIs, and Alan and conspirators have been inventing new 
programming systems with Squeak (a newer version of Smalltalk) as their 
"assembly language core." Etoys is one of them, and if you haven't tried it, 
you should.[1]

Alan inspires other programmers by showing (formerly-rare) demo footage of 
groundbreaking computer systems, such as Ivan Sutherland's Sketchpad from 1963 
[2], and Doug Engelbart's "Mother of All Demos" from 1968.[3]

When I was at the MIT Media Lab, as a student of Alan's, I saw this Canonical 
Lecture a lot -- even gave it myself a few times. I still find it awe-inspiring 
and humbling.

In this video, you'll see some of Alan's inspirations, and some results of 
using Etoys in schools, including kids learning about gravity by simulating the 
motion of a ball falling -- in the video from about 27 minutes to about 33 
minutes.

Sure, Doug Engelbart and Ivan Sutherland were geniuses, and Alan's no slouch 
himself, but the kids in Alan's demos are not. They've just found a good point 
of view, and a good method of expression. It's our job, as programmers, to 
create better methods of expression. We owe it to the future.

I don't know if Alan has commented on Python,[4] but I think he'd approve of 
it, before pointing out that "the real computer revolution hasn't happened 
yet." I think he'd make the point that programming language designers only 
recently have gotten past the absurd and harmful goal of making languages easy 
for computers to understand and execute. This is so important I am going to set 
it off by itself:

It was only 10 years ago that people were still railing against the notion of 
garbage collection because it cost as much as 15% extra RAM, and 5% of your 
CPU's power. [5] 

Now we're seeing lots of new programming languages, and many of them are 
starting to have slightly more sophistication than object-oriented 
programming's "stacking blocks of granite" approach. (As Alan would say, "But 
that worked great for the pyramids, and required far less heavy lifting than 
most people think!")  List Comprehensions, to my mind, are the next step beyond 
Lisp's "map" and "filter" paradigm, which I think of as "flint arrowheads." I 
hope I live to see the invention of computer programming's "screw fasteners."

Man is most nearly himself when he achieves the seriousness of a child at play. 
- Heraclitus





[1] http://www.squeakland.org/ -- you simply must download and try Etoys.

[2] http://www.youtube.com/watch?v=USyoT_Ha_bA   -- Sketchpad ran on a computer 
built out of individual transistors, with a "CPU Speed" of less than 200 kHz 
(my Mac has 8 cores running at 2.8 GHz, so about 112,000 times as fast), and 
64K of 36-bit words (and my Mac has about 30,000 times as much).

[3] http://video.google.com/videoplay?docid=-8734787622017763097#   -- 
Engelbart's demo is astounding because it was the first demonstration of 
"tele-computing" (the computers were over 30 miles away, and this was a year 
before the first test demo of "Internet" technology, and almost 30 years before 
computers had built-in ethernet ports). It also was the first demo of his 
"mouse" computer interface.

[4] Alan gave a talk to EuroPython in 2006, but I haven't had a chance to watch 
it yet. It's here: http://blip.tv/file/51211

[5] And even then, your computer was idle 98% of the time. I am amused because 
the entire Macintosh Common Lisp I cut my teeth on fit could easily run in 4 MB 
of RAM. One day I was wondering why it was GC'ing so much, and it turned out 
that the memory had gone bad -- the entire system had to run in about 128KB. 

Reply via email to