2017年被称为是少儿编程的元年,之后在各级政府的推动下,家长们开始带领着孩子加入到了“少儿编程”的大军中。
随着人工智能的发展,少儿编程也成为了像英语、奥数一样受人追捧的课程,但是许多家长也有着相同的困惑:我的孩子将来不当程序员的话,还需要从小学习少儿编程嘛?这样学习了又有什么用呢?
今天,小梦老师就来帮助大家解决这个疑问。
01
学少儿编程,不等于要做程序员
面对家长的这个误解,家长们可以问一下自己,“送孩子去学画画的家长,都是希望孩子会成为职业画家的吗?送孩子去学钢琴的家长,都是希望孩子成为钢琴家吗?“
通常家长的回答是:“不是的,只是希望孩子能获得一些兴趣的启蒙,培养一个爱好,训练一下思维”。
其实少儿编程学习也是一样的,并不是为了孩子将来从事计算机行业做准备。学习编程最重要的是学习一种解决问题的能力:编程思维。
那么,什么是编程思维呢?
编程思维是如何分析问题、拆解问题、解决问题的思维方式,也就是我们分析并发现规律、建立解决问题的模型、再映射到合适的数据结构和算法上,最后根据算法写程序的过程。
这个过程中,前两步的分解和模式识别,其实还属于数学思维的范畴,而后面的抽象和算法却是编程思维所独有的,也是我们应试教学上缺少的、真正可以解决问题的步骤。
举个简单的例子:
要如何用一只手表达26个字母呢?
就通常而言,我们一只手最多数到5,就算再加上复杂的手势,最多也就数到10了。怎么样?一只手要演示多达26种手势,是不是毫无头绪?
我们试着将问题拆分,一只手5个手指,要么弯曲,要么伸直,如果我们能给五个手指不同的赋值,是不是就能产生不同的排列组合呢?
由此,运用编程最简单的二进制算法,我们用一只手就能表达32个数字。
攥紧拳头表示“0”
大拇指表示“1”
食指表示“2”
中指表示“4”
无名指表示“8”
小拇指表示“16”
将1-26与26个字母一一对应,就可以得到一组很容易理解的简单手势。
其实,不仅是这种智力题,在我们的日常生活中,小到炒菜之前先把饭煮上(多线程),大到治国平天下(秦国张仪用连横破坏六国合纵,其实是分治法),都能体现出编程思维。
所以,少儿编程是在为孩子提供一种学习方法,编程能够让孩子从小学习像科学家一样思考该如何解决问题,在复杂环境和复杂问题下运用编程的计算思维可以指导孩子更好地解决问题。
02
提高学习成绩,走向升学捷径
少儿编程除了能锻炼孩子的思维逻辑,还能在孩子的文化课成绩和升学方面有所帮助。
1、少儿编程对文化课的帮助,更多的是体现在:学编程可以提高孩子的计算能力以及逻辑思维能力,来帮助孩子解决成绩不好、上课注意力不集中等等的一系列问题,从而帮助孩子的文化课成绩提升。
★数学:编程与数学关系十分密切,对于有丰厚数学基础的孩子,能够帮助他更好地理解编程逻辑,同时,也能够帮助他们理解数学抽象概念。
★语文:编程锻炼的逻辑思维,能在无形中帮助孩子培养写作所需的语言组织技能,能让他们有计划地梳理写作框架,细分文章的主题,选择文章需要的论点,并以令人信服的方式书写他们的观点。
★英语:学习编程能够提高记忆力和理解能力,对于那些记单词有困难的孩子来说,可得到一些改善。另外,编程学习的过程中也会碰到一些专业英语词汇,能在一定程度上扩大他们自身的词汇量。
2、助力孩子走向升学捷径。
近年来编程已经成为诸多发达城市,如北京、南京等中考科技特长生的热门招生项目。
下面是人大附中2019年4月30日在官网发布的科技特长生招生简章,里面明确规定了报名条件之一:在信息学奥赛方面有突出特长。
诸如此类的名校在进行招生时,具备编程竞赛的学生,会具备一定的优势。
另外,还有很多参加信息学奥赛的孩子们,都是从小开始学习编程打好基础,才能够在比赛中获得优异成绩,并以此得到北大、清华、复旦、浙大等国内顶尖高校的保送或降分录取。
▲2018清华保送生各科竞赛人数统计
所以如果在升学竞争压力如此大的今天,想通过信息奥赛获得自招、降分、甚至保送的名额,提前了解编程、学习编程一定是一个非常不错的选择。
03
增加孩子的未来竞争力
如今的新生代,被称为数字时代的“原住民”,几乎都是伴随着电子设备成长起来的。对现在的孩子而言,信息化教育几乎是不可回避的。
如果他们只会在这些设备上玩游戏看动画,无法利用这些设备创造点什么,很难说得上是一个合格的“数字原住民”,只能算是一个熟练的 “数字消费者”。
芬兰的前教育部长曾说过:“在未来,如果你的孩子懂编程,他就是未来世界的创造者;如果他不懂,他只是使用者。”
从目前的经济驱动力来看,经济发展对信息技术的要求越来越高,包括经济、金融、医疗、教育,甚至是政府管理都需要大量的信息技术人才。就像之前的英语、数学学科一样,计算机科学已经不再是一门只是服务于应用的学科。
现在虽然不是所有工作都要用编程,但如果要用到,现学的难度很大。这也是为什么许多发达国家,把编程列入青少年教育的必修学科中。
就像二十年前,不管你是不是名牌大学毕业,只要你学习过一点C语言,能够会几行代码,你就是一个软件人才。
如果你会用烧录器擦写51芯片,那么你可能就会被当做一个嵌入式软件开发人员。
这和50年代拿小学生当知识分子是一个道理,但现在你仅仅拿着这些东西断然无法撬开求职的大门,更不要说未来了。
未来的孩子们,将会面对比一个比现在更AI化的时代。那时的他们,不仅要跟同龄人竞争,甚至还要跟24小时不眠不休的机器“抢饭碗”。
未来最容易被人工智能淘汰的几种职业
所以,我相信机会总是留给有准备的人。编程就和其他技能一样,只要学过,就一定有用得上的地方,而且不是只有当程序员这一条路,而是“编程”这一技能会在各个领域和行业中变得更加通用。
我们不该强迫孩子去学什么,但是起码要给他们看到更大世界的机会,要给他们选择更多学习方式的机会。
多掌握一份技能,就多一份立足于社会的保障,也许就能比别人多一点优势,而这一点优势很可能就是决定你孩子职业和生活的关键。
综上所述,在这个人人都是“创客” 的时代,编程并非是为了让孩子长大成为程序员,让孩子尽早接触学习编程已经成为一种有效提高孩子综合素质的方式。
即使对于那些对编程提不起热情的孩子,或者那些有志于取得文学而非软件工程学位的学生,理解编程依然意义重大。
因此,很多高瞻远瞩的父母,开始将编程作为一种“教育投资”让孩子接触学习。即使孩子未来并不想做一名“程序员”,在“教育投资”的层面来讲,让孩子接触学习编程也是一项非常不错的选择。