0%

下海--《乐高机器人EV3程序设计艺术》

当了解到孩子喜欢乐高机器人的时候,我想这个课程完全可以自己教,依老父亲多年对计算机的认识,绝对不比外面的老师差,外面的课400块一节,我上一节是不是就挣回来了。说得虽然是笑话,但是教孩子上STEM课程的构思,我已经准备了好几年。

下海–《乐高机器人EV3程序设计艺术》

之所以起了一个叫下海的标题,那是因为“临渊羡鱼,不如退而结网”。我已经拿好渔网,马上就要下海了,作为一名躬身入局的人,不能光说不干。这么多年的读书与学习经历,对挑选书籍还是有点经验的,包括选择LEGO教材。有一类书叫做“the art of XXX”,一般都是有深度,有内涵的,比如唐纳德的“the art of algorithm”,又比如“the art of unix programming”,所以今天这本书的英文名也是“the art of LEGO Mindstroms EV3 Programming”。

我钟情于乐高编程,是有原因的。一方面是已故的西蒙教授关于让小朋友学习编程会让他们找到新天地的论述触动了我;另一方面是LEGO Mindstroms就是西蒙教授带领MIT媒体实验室和Lego共同开发出来的产品,让我感受到了工程届的美。

机器人不是活物,所以有各家仿冒EV3的机器人产品,会吸引了各路家长的眼球,让他们纷纷掏钱。然而有西蒙教授的理论加持的LEGO Mindstroms却一直不冷不热的摆在货架上,不过我想,即便是计算机科班的人群,能够静下心来思考计算机哲学理论的,并不会太多。因此,当与人讨论到计算机哲学范畴的时候,我会很谨慎,毕竟不太理解的人会觉得你矫情和教条。然而,让一个对计算机理论木有独立见解的老师来教自己的孩子,我是不放心的,然而这几年我又不在广州,万般无奈之下只能让孩子去报班。

当我看完这本书的时候,我觉得作者的确很用心,毕竟计算机是一个科学、技术与工程交叉融合的学科,回到计算机的上古时代,如果没有图灵的自动机理论、没有冯诺伊的架构设计、没有德福雷斯特发明的电子管、肖克利的晶体管技术以及莫克利和艾克特工程能力,计算机是做不出来的。当我们从计算机科班毕业的时候,让我们独立的去做一个机器人,相信很多人都无从下手,更不要说让几岁的小朋友了。Lego Mindstroms EV3的过人之处在于,用精密的制造技术将一个个零件模块化,并采用了当时性能较高的ARM处理器,通过linux对机器人设备进行控制,并且用图形化的界面引导孩子做程序设计的工作。

一开始,我们可能会认为这只是一个玩具,但是当我看完这本书的时候,发现这只不过是Project-Base Learning的一个了不起的产品。不然,我们根本不知道学了编程能做什么?难道只是写一句“Hello World”?难道只是一张文凭?只是一个认证?当我们为了要完成书本上的游戏任务的时候,我们学习了系统环境、学习了编译环境、变量、条件语句、控制语句、函数、模块,学习了计算机算法,学习了单元测试、冒泡测试、V&V测试,学习了基于原型的迭代过程模式。如果把这个变成科班的课程,或许就是相对晦涩的C语言设计、面向对象设计、linux系统管理、算法设计、软件测试、软件工程、嵌入式系统设计的课程。然而当我们上完这些课程的时候,依然没有办法独立的做一个机器人,让机器人完成我们教他的任务,虽然是从最简单的寻道,自主的走迷宫,依托传感器对外部做出反馈。当孩子们完成了这个项目,当遇到一个新挑战的时候,他们一定会调用他们学过的知识,通过计算机来完成,学习是为了解决问题,而不是显摆“茴香豆的茴字有几种写法”。

作为老父亲,工作遇到的觉得可以用程序优化的事情,毫不犹豫的选择了自己敲代码,无论是值班室的业务系统,还是全会的证卡管理系统,抑或是核对上传国扶办的数据与电子台账的差异。但是我不会告诉你,我一直都在使用python,使用django,使用node.js,使用vue,使用sqite,使用anaconda等等。很多计算机人,在毕业之后才发现,自己并不喜欢计算机,想着办法抹除自己身上的计算机味道。可我不是,专业搞机20年,以后将坚持一直搞下去,带着娃一起前行。

结语

我是一个非典型的计算机工程师,自从考入华工的那一刻起,便注定了我这辈子离不开计算机了。这也是我人生的支柱,如果有哪天,我放弃了计算机,估计那就不再是我了。