今天上午和太子一起出了一趟门——正如BBF在BT群里说的那样,天太热,钻进车子都觉得热。不过幸好肾上的车都是停在地下车库的,所以总体感觉良好,情绪稳定——跑去圆融时代广场的玩具反斗城,用我星卡会员的特权去换了一副【三国杀】之初出茅庐版。
这个是太子拿到了牌。
今天上午和太子一起出了一趟门——正如BBF在BT群里说的那样,天太热,钻进车子都觉得热。不过幸好肾上的车都是停在地下车库的,所以总体感觉良好,情绪稳定——跑去圆融时代广场的玩具反斗城,用我星卡会员的特权去换了一副【三国杀】之初出茅庐版。
这个是太子拿到了牌。
BT群今天有了重大的改进:加入了为广大BT(有的)喜闻乐见、(有的)深恶痛绝的功能:盖章。
由于我们的BT群后台聊天程序采用的是Status.net,所以我只能想办法加以修改+hack–本来是想从头编写的,但是实在是太麻烦了。
我采用的后台框架是Code Igniter,定义了一个新的controller,一个新的model,就基本搞定了。
在测试时,发现中文传不进CI,在Google上搜索了一番后,采用了一个暴力hack方法,直接改写了CI中的一个库里的函数。详情请猛击此处。
放两张王道给大家看看:一张是在StatusNet Desktop下的,一张是在Pidgin下的。
这个修改不是彻底的,是一种hack。只是能恢复盖章功能,我很欣慰……
2010年7月24日,苏州,肾上豪宅。 来自苏州、南京、上海、杭州这四个长三角地区最重要城市的BT代表欢聚一堂,参加了由肾上招集并主持的BT群苏州床菜会暨JJ收到禽来交流会。
席间得知GSG MK的生日在7月27日,于是顺大便为MK终于在三天后能立起来而庆祝一番。
====以上是主题,以下是废话的分割线====
我本来认为向老彼得讲述变量的概念应该是轻而易举的,但是在实际中发现,还是有一些困难。
首先,引入“变量”概念的问题不是很容易找。比如,我问他“你们班上有多少同学”、“隔壁班上有多少同学”,试图用这样的问题来引入“多少同学”是个变量的概念。但是,对于老彼得来说,自己班上有多少同学、隔壁班上有多少同学都是“固定”的,不是“变化”的。
有了前两天的积累,老彼得终于可以迎来他编程入门课程的一个重要的里程碑:过程。
我先是和老彼得讨论了一些“过程”的概念。比如收看“喜洋洋和灰太狼”,那么一般的步骤就是:打开电视机、用遥控器选择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,还专门下载了一本教程。
