浅谈“计算机编程从娃娃抓起”
来源:用户上传 作者: 肖亮英
摘 要:信息时代的发展使得编程成为核心能力,计算机编程从娃娃抓起,不只是对孩子负责,更是对未来负责。从为什么学编程、编程学什么、怎样学编程三个维度论述“计算机编程从娃娃抓起”这一主题的必要性和可实施性,旨在呼吁中小学信息技术教育加强对学生编程能力和计算思维的培养。
关键词:编程;计算思维;素养
在2015年的“两会”上,浙江省科技厅厅长周国辉提出了议案:“编程从娃娃抓起,这是对未来负责。”他认为,当下是一个利用互联网高速发展的数字世界,发展数字世界的核心能力就是编程和数据。编程、数据科学应该从中小学青少年教育抓起,让代码和数据成为我国所有青少年儿童的另一种语言。“三十年前,小平同志提出'计算机要从娃娃抓起’,现在的孩子玩计算机都溜得很,但发展到现在这个阶段,只会基本的计算机操作已经不够了,需要更进一步:编程。”周厅长如是说。
无独有偶,2015年2月,美国总统奥巴马公开表示,如果美国希望继续在全球科技创新中保持领先,所有人都应更早地学习如何编程。“编程应当与ABC字母表和颜色同时得到教学”“编程教学如同识字一样,应成为基础教育的一部分。”奥巴马本人更是身体力行,成为首位会编程的总统。
由以上两例可见,随着时代的发展及信息技术给社会生活带来的影响和改变,人们对计算机编程的教育越来越重视。笔者长期执教小学阶段的信息技术课程,对培养学生计算思维及程序素养颇有感触,在此就小学阶段的编程教育浅谈几点认识,以起抛砖引玉之效。
一、为什么要学编程
其实,在如今的社会,我们的孩子为什么要学编程,答案是显而易见的,从国家层面讲,未来信息产业的比重将逐步增加,如何抢占下一个互联网的制高点,核心在IT人员的培养。当然,这是宏观方面的意义,笔者认为,学编程对于个人的认知和素养的培养还有重要的作用。
1.学编程才能更好地认识世界
世界是数字的,各种信息化产品越来越紧密地将我们的生活联系起来,物联网、云技术、大数据,不断地将我们的世界数字化,各行各业更不可缺少地跟计算机程序相关联。要推动时代的发展,需要有编程思维,要洞悉时代发展,也需要编程思维,在当前时代中竞争与发展,更不可缺少编程思维。
编程是一种自动化理念,它的思想及解决问题的方法被各个学科借鉴和拓展。生物学借鉴编程对信息的处理,发展出生物信息学,甚至将DNA的配对看作编码问题来破解。心理学从计算机的运行机制发展出认知心理学,某种程度上将人的认知过程类比为计算机对信息读取、存储、处理和输出的过程。在探讨宇宙终极问题上,编程思维同样起到了启示作用。在斯蒂芬・沃尔夫勒姆的一篇专访《宇宙的本质是计算》中,这位传奇科学家说:“我们的世界就是计算,就是一套简单的规则生成的复杂现象……很多时候人们说的'随机性’……只是证明你还没为这个系统建立完整的模型而已。”假如模型都有了,那么就可以在计算机中模拟宇宙的一切。如果计算机的速度足够快,快得超过宇宙的运算速度,那么甚至能计算出未来会发生什么,也就是能预测未来。
2.学编程,从科技的消费者转变为创造者
如今,我们的孩子生活在数字化时代,使用着各类智能产品和互联网应用,但他们大多数是科技的消费者,而不是创造者。他们被称为“数字原住民”,但是对科技并不熟悉,他们是经验丰富的使用者但并不是创造者,就像会阅读不会写作一样。所以需要教学生计算机,让他们学会充分使用数字时代的科技。
同时,编程为创造力和创造性表达开辟了新途径。现在的编程学习,可能更像一种高级的乐高积木,学生可以很简便地了解其规则而创作出丰富的产品。Scratch的创作者在浏览Scratch在线网站时,发现很多8~16岁孩子的作品,感慨道:“随着孩子们创造和分享自己的Scratch作品,他们正在把自己锻炼成创想者,并同时为这个呼唤创造力的时代做好准备。”是的,在今天瞬息万变的世界里,没有什么比创造力更重要。帮助孩子们成长为具有创造力的思考者,那就是给予他们创造的机会。我们不能仅仅让他们在电子产品上打游戏、和朋友聊天、上网、搜索信息等等,更多的是让他们创造出自己的游戏、自己的程序。
3.编程可以开发学生的逻辑思维能力和问题解决能力,更好地塑造自己的素养
学生想通过计算机解决某个问题或者实现自己的想法,这并不是瞬间就能完成的事,计算机也并不是智能得通过沟通就能执行命令。在这一过程中,学生需要将自己的问题转换成数学模型,比如想让某个对象在程序上运动的本质是让对象每间隔一定时间坐标位置发生变化,将模型通过计算机语言描述出来,进而上机实践。从建模到编码(coding),需要学生有严谨的逻辑思维能力,思虑缜密,稍有不慎,程序将有漏洞。而编码过程,也是提高学生逻辑思维能力和问题解决能力的过程。
二、学编程是学什么
1.学编程不是人人成为程序员
我们将编程看作一种新的素养,就像写字一样。我们在人生的任何阶段都会用到写字这项技能:无论是和朋友联系,列一张购物清单,还是跟日记说心里话。而写作本身也为人们开启了新的思维方式。在写作的时候,我们学会组织和提炼语言,并反思自己的想法。“写字”对所有人都很重要,而不仅仅是对那些有志成为专业作家的人。
编程也是一样的道理。编程并不仅仅对未来的程序员或计算机科学家才有用。在学习编程的过程中,我们学会了许多其他的东西,比如学习解决问题的策略,学会设计项目,并交流想法。这些技能对所有人都有用,不管他多大年龄、有什么兴趣、做什么工作,但这样并不意味着人人都成为程序员。
2.学编程不一定是学编码
学编程(programming)并不是打代码(coding),不一定要用C、C++,Java等语言,不一定只是用命令形式跟计算机交互。过去数十年计算机科学的发展已经使编程的壁垒大幅度降低,以前可能只是科学家做出的高大上程序,今天一个十几岁的孩子可以在几分钟完成。随着技术进步,编程技能已经可以被很多人自然掌握,不用进行系统学习或者到专业学校深造。我们关注的是需要具备何种能力去更好更有效地编程,也就是编程背后基本素养的培养,这就是“计算思维”。
转载注明来源:https://www.xzbu.com/9/view-7231781.htm