少儿编程?比你以为的更有趣
作为曾经的一名通信工程师,出于自己对编程这件事一贯的看法,我一度对小小孩学编程还是很抵触的。我固执地认为,编程对使用者的理解能力、语言能力要求都比较高,当初的我们都是从print “hello world!”开始一步步走进编程的泥沼,为了写出一段搞笑的代码程序可是连长皱纹、掉头发都经历过。而现在让这些孩子使用的模块化、可视化编程软件,仿照老师的指令或者例子去统一完成一个任务的做法,更像是玩拖拽游戏,哪里有一个程序猿应有的素养!
一直到孩子三年级,学校里开设了编程课,男孩子大概真的是不同的阶段会有很大的变化,之前文艺范儿的儿子突然多次跟我说对编程很感兴趣。恰巧遇到了小科逗的冬令营,抱着试一试的心态。没想到孩子不仅每次都是兴高采烈地去上课,回来后也会絮絮叨叨半天和我汇报上课的情况。这次我才重新去审视了Scratch编程。
与传统的使用语句直接编写代码不同,模块化编程更注重解决问题的思路和方法,各个环节之间的联系,也就是逻辑关系。比如,做车库入口自动起落架的实验,孩子们会进行Brain Storm,通过讨论,梳理出他们认为合理的判断条件以及事件执行的顺序,使用思维导图或流程图进行梳理。接着在模块库中找出对应模块,进行组合,并设置参数。在反复实验中寻找最合理的设置。通过亲自动手实现,把现实中已经习以为常的生活场景理解得非常通透,也锻炼了孩子的思考能力。
现实生活中,我们有时候会发现不少成年人在描述事情是颠三倒四,语无伦次,无法将事情整理清晰更谈不上解决问题。也经常遇见家长常常抱怨孩子数学解题没思路,语文作文没层次。其实,都是欠缺逻辑思维能力的表现。这一技能可以影响一个人看待问题的角度和视野。孩子在6岁左右开始逐渐形成逻辑思维,但是逻辑思维听上去这么抽象的东西,怎么培养?我们原来一直觉得学数学是培养逻辑思维最好的方法。恩,好吧,可是回忆一下,其实我们会发现,我们更多看到的是逻辑思维能力强的孩子数学成绩会很好。在数学的这个浩瀚的领域里,有不少是抽象的概念,如果用它来作为工具去引导孩子进行逻辑思维,有时候会进入很尴尬的境地——数学好难,我不想学了。而少儿编程则是通过可见的图像、工具、运行结果展现出可视的因果关系,让孩子尝试梳理抽象的逻辑思维,通过实践把抽象思维具象化地表现出来,因而是培养孩子逻辑思维的有效途径。
我还听过这样的说法——对于喜欢打游戏的孩子,让他们去学编程,这样他们会发现:原来这些游戏是这样写出来的啊,我竟然也可以做到,恩,一点也不神秘,说不定我也能写个超火的游戏软件呢。这不是笑话,针对大一点的孩子的确会有这样的效果——治网瘾?图形化编程了解一下?
当然,对于小学以上的孩子,知识上有了一定的积累,理解能力也有了提升,再去学习编程便会有事倍功半的效果。过早地去学习,如果仅仅是机械的模仿,把老师的程序复制一遍,不仅不利于提升兴趣,反而可能让孩子有挫败感,事与愿违了。
乔布斯说过:“学习编程教你如何思考,……我把计算机科学看成基础教育,每个人都应该花1年时间学习编程。”少儿编程并不是要培养未来的程序员,而是让孩子们能使用更先进更直观的工具去梳理自己的想法并将其表现出来、分享出去。
如果你有幸遇到一位好老师,有清晰的思路和先进的理念,让孩子去学习编程吧,你会发现孩子的发展会超出你的预期。很幸运,我的孩子遇到了。希望你也是!
以开放式的课堂,启发孩子们自发思考
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com