我本来认为向老彼得讲述变量的概念应该是轻而易举的,但是在实际中发现,还是有一些困难。
首先,引入“变量”概念的问题不是很容易找。比如,我问他“你们班上有多少同学”、“隔壁班上有多少同学”,试图用这样的问题来引入“多少同学”是个变量的概念。但是,对于老彼得来说,自己班上有多少同学、隔壁班上有多少同学都是“固定”的,不是“变化”的。
我本来认为向老彼得讲述变量的概念应该是轻而易举的,但是在实际中发现,还是有一些困难。
首先,引入“变量”概念的问题不是很容易找。比如,我问他“你们班上有多少同学”、“隔壁班上有多少同学”,试图用这样的问题来引入“多少同学”是个变量的概念。但是,对于老彼得来说,自己班上有多少同学、隔壁班上有多少同学都是“固定”的,不是“变化”的。
有了前两天的积累,老彼得终于可以迎来他编程入门课程的一个重要的里程碑:过程。
我先是和老彼得讨论了一些“过程”的概念。比如收看“喜洋洋和灰太狼”,那么一般的步骤就是:打开电视机、用遥控器选择32频道;比如削铅笔的一半步骤就是:拿起削笔器,把要削的铅笔插进去,然后夹住,然后旋边上的摇杆……
通过这些深入浅出的例子,老彼得理解了过程的几个特点:
今天教了老彼得一个很重要的指令:REPEAT,以及另一对配对的指令:PU/PD。
小孩子对重复的概念的理解是不容易的。我花费了几乎两天的时间来教他。
比如这个简单的命令:
repeat 4 [fd 100 rt 90]
这个命令可以在屏幕上画出一个边长为100的正方形。老彼得对这个的理解还是比较快的。同时,他也迅速的掌握了5/6/7/…等正多边形的绘制,同时学到了两个很重要的、也是互相关联的概念:什么是外角;任意凸多边形外角和总是360度。
结合PU/PD命令,他在经过了一些失误之后,学会了画虚线:
repeat 10 [fd 10 pu fd 10 pd]
难点在于嵌套重复。比如画下面这个图形:

需要用到两个循环:
repeat 10 [repeat 4 [fd 90 rt 90] rt 36]
这时他就开始糊涂了。我让他先从里面的循环开始看,然后再看外面的循环。同时,也鼓励他先画一个正方形、再转角度,再画一个正方形、再转角度……通过这样的方式,他领悟到画正方形+转角度可以被看做是一个动作,然后再对这个动作进行重复的道理。我想,有了这个思路,一旦学会过程后再回头来看,对循环会有更深入的理解。
That\’s all for today!

今天开始正式教老彼得学习编程。我决定用Logo语言作为他的入门语言,理由有三:
今天学了四个基本指令:FORWARD, BACK, RIGHT, LEFT。老彼得还是很快就掌握了,并且完成了我交给他的课后作业。
另外,指导老彼得开始记笔记,这个也算是学习习惯的培养吧。
我的目标是这个暑假让他初步掌握Logo。然后到四下的时候,看是不是有能力学习C/C++。
BTW,我用的是MSWLogo,还专门下载了一本教程。

I have been using mobile phones for many years, but I just used it, not being influenced by it, until I got this one: Nexus One.
The most application that I use on N1 is Email. Android 2.X supports Exchange accounts. This is really a must have for my office emails. How can I access my office mails without a handy client, using web access? Come on, buddy, you must be kidding me.
终于下定决心、排除万难,和前令狐一起搞定了一个VPS。这个VPS是在Linode购买的,我们购买的是最便宜的Linode 512套餐,20刀一个月。
搞这个VPS主要有这么几个动机:
慢慢来吧……
最后说一句,原来这些站点–抛开VPN的诱惑–都是可以几乎以0成本的代价运行在我家里的2F主机上的。但是随着80端口的被封,我的2F主机已经无法承担这个任务。都是被B的……
今天继续看由印度作家维卡斯·斯瓦鲁普写的另一本小说《六个嫌疑人》。其中看到这段译注还是挺有收获的:
伽拉萨山(Mount Kailash):印度教圣山,主神湿婆夫妇居住之地。位于中国西藏,中国一般称之为冈仁波齐山。
词条见http://zh.wikipedia.org/zh-cn/%E5%86%88%E4%BB%81%E6%B3%A2%E9%BD%90%E5%B3%B0。
Haha, this is a very interesting trick that it can make you read Gmail in browsers in two panes. The left is the message list, and the right is the message body.
Normally, when you start to read Gmail in your browser, it looks like this: