少儿编程:现在是学习的最好时代!
“少儿编程”一词在国内出现相对较晚,根据百度指数显示,2017年之前国内家长鲜有耳闻。随着AlphaGo的横空出世,人工智能的概念爆炸式席卷全球;随着两会的召开,人大代表提出建议研发统一的编程课程体系,更加明确了编程在中小学逐步推广普及。
近几年各省市教育厅也频繁出台少儿编程教育的利好政策,少儿编程教育也逐渐引起国内家长的关注。
首先,先说下少儿编程,我们鼓励孩子学习编程,并不是为了让孩子以后去写代码当程序员,而是重在锻炼他们思考问题解决问题的思维能力,这种编程思维才是学习的精髓。其次,编程思维是"理解问题—找出路径"的一整套思维路径,主要分为4个步骤:分解、模式识别、抽象、算法。
AI时代,少儿编程已经成为一种不可逆的发展趋势。让孩子学习编程,不是单纯为了让孩子学习算法、代码,而更多地是在培养孩子丰富而科学的思维方式,让他们以后在生活和学习中,能够运用科学思维解释身边的现象,解决身边的问题。
什么时候学编程好?学编程,现在是最好的时代!为什么这么说呢?我们把时间往回拨一拨,看两个人:个人电脑时代最伟大的两个人——比尔盖茨和乔布斯。
这两位科技大佬都生于1955年,大部分硅谷的创奇人物也都出生在1955年左右,比如微软的联合创始人保罗·艾伦、前CEO史蒂夫·鲍尔默、谷歌前CEO埃里克·施密特等等。
纯属巧合吗?当然不是。巧合的背后,时代对个人成功的影响可见一斑。1975年,全球第一台个人计算机Altair横空出世,而当时刚满20岁的乔布斯和比尔盖茨已经学习编程近10年。这样少有的机遇,用比尔盖茨自己的回答就是“全世界不到50个”。
从小学习编程的经验,再加上恰逢个人电脑革命的爆发,成就了乔布斯和比尔盖茨,两者缺一不可。
如果没有电脑革命的爆发,他们或许会成为电脑领域的专家,但不会有改变时代的影响力。如果不是从小学习编程,机遇再好,也没有能力把握。磨炼多年的技巧,因时势的改变突然之间变得极具价值。
而现在,以人工智能为主的第四次工业革命即将到来:人类迎来改变世界的新机遇!
全球IT巨头纷纷布局人工智能领域:谷歌收购DeepMind、Facebook开发人脸识别技术、百度进军无人汽车、腾讯打造AI实验室。人工智能时代已经到来,顺势而为,让孩子从小学习编程,才能抢占时代的先机。
这也就解释了为什么国家要在中小学阶段设置人工智能相关课程,逐步推广编程教育,抢占人工智能最高点,因为少年强则国强,时不我待,现在就是学习编程最好的时代。少儿编程真正能带给孩子的东西,是一种思维层面的变化,比如创新能力的提升。
少儿编程到底学什么
少儿编程到底学什么?近些年,不管是国内还是国外,都在推广编程低龄化教育,从而衍生出了一个行业:少儿编程,那么少儿编程到底学什么呢?实际上不管是少儿编程,还是成人编程,编程学习的内容主要是三个方面:编程语言、算法和编程工具,其中编程语言是基础,核心是算法,外在表现是编程工具。总而言之,编程的核心是学习算法,那么在非职业阶段包括少儿阶段,我们可以暂且把学编程等同于学习算法,学习算法能够极大的培养孩子们的培养逻辑思维能力,我们各种类型的编程竞赛比如NOI(全国青少年信息学奥林匹克竞赛)和ACM-ICPC(国际大学生编程竞赛)等,主要考察的也是算法。计算机算法就是高度抽象后的常见问题的解决方案精炼成了执行过程,学习这些算法,就是学习数学家、计算机科学家们几十数百年来的智慧积累,而且,算法的学习过程,也是一种思维训练和头脑体操。而当今人工智能的相关技术研究,主要也是AI算法的研究,只不过这些算法需要更加高级的数学知识,所以青少年阶段的AI算法研究是不切实际的,但是可以通过编程应用已有的成熟AI算法去解决实际问题。当然学习编程需要一定的文化课知识的支撑,尤其是数学和英语。因为算法是数学知识应用实践的一种途径,要想学好算法必须有相应的数学基础,而反过来,学习算法也能帮助学生更好的去理解和学习数学,使得数学知识在不再是一堆“不知何用”的公式,而是能够解决实际问题的方法。另外,目前世界上最先进的编程语言、编程工具和编程学习书籍等基本上都是英文的,所以要想学好编程,英语基础是必不可少的,当然,和数学一样,学习编程也能够让孩子们更加主动的去学习英语知识。但是,虽然编程学习的核心是算法,但是学习算法的前提是掌握一定的编程语言和编程工具,我这里特别强调编程学习的核心是算法,是为了纠正一些正在把大量时间浪费在编程语言和编程工具学习上的学生们,因为这些是职业程序员而言是必不可少学习的东西,对孩子们而言并非那么需要,孩子们只需要掌握相应年龄段需要的编程语言和编程工具就可以了。根据我的研究调查,不同年龄段孩子具备的文化课基础和个人素质能力有很大的差距,所以针对不同年龄段的孩子应该学习和使用不同的编程语言及工具。比如大多小学4年级的孩子已经掌握了计算机的实际使用以及基本的英文词汇量,这时候就足够进行代码类编程学习,而对于2年级以下的孩子大多都不具备计算机的基本使用能力,这时候要学习编程显然基于平板电脑或者智能手机的图形化编程更加合适,而对于3年级的孩子应该学习基于计算机的图形化编程更加合适,这样刚好帮助他们从平板电脑转移向计算机上学习编程。所以根据我的研究,我将少儿编程重新进行阶段性分类,根据年龄的不同、编程语言以及工具的不同和编程学习目标不同重点不同将少儿编程重新分为三个阶段:幼儿编程(2年级以下)、少儿编程(3-4年级)和青少年编程(5年级以上),下一篇文章我将分别详细介绍这三个阶段学习的主要内容、编程语言及工具和教学方法。森珀编程:魏思政