崩坏说在前:九月份讲程式设计较为多,那时竭尽全力聊。你家小孩上了三年级后,碰触了数个机器比赛、程式设计比赛,还被同学科学普及了有关程式设计今后的自学路径,能说我是既遗憾那时晓得了,又懊悔晓得得算晚了。
因此那时弟弟上了一年级,我就正经把许多弟弟以后疏失的地方性补出来,弟弟也跟弟弟一同学,为他们打好此基础。那时这篇,我借由前不久的专题讲座讲义一同跟我们剖析下“程式设计究竟是不是学”那个大议程。
除此之外,非常感谢我们的全力支持,赠给想学程式设计小孩的程式设计LEGO限量版都领完啦~(如是说戳这儿:赠送给小孩的618礼品第二波!600份程式设计课LEGO限量版手速领),尽管礼品已经送完了,但试唱却是在竭尽全力的,钟爱的好友也能加mengyapipi进行申领哦!一毛钱就能领,相等于是VM288的~
程式设计究竟是不是学
你家Joshua从幼稚园开始碰触程式设计,老友如果也看完我这些年给我们所推荐过的许多程式设计天然资源,比如说19年这条:《用LEGO秒变程式设计巨匠,3-10岁小孩都能玩的“程式设计魔术师” 学出来(附天然资源浏览)》,历史记录的也是你家小孩幼稚园碰触程式设计的心得体会。
为何想让小孩自小碰触程式设计?这一两年结晶留下来,或是就是那句,最简单的标语:“为的是不被今后的黄金时代出局”。
想必这些年我们也有感受的,大数据的分析方式,历史记录了我们的很多“足迹”和生活经历,餐厅也开始有机器运餐员,甚至还有无人快递、自动货运……人工智能和机器的采集模式已经更广泛地运用在我们的生活中。
就好像世界经济论坛发布的这份《2020今后就业报告》。▼
里面就提到,疫情正在加快整个世界的自动化进程,预计到2025年,“机器革命”将会颠覆8500万个技术岗位。当然,新技术也将会创造多达9700万个工作岗位。
因此那时小孩碰触计算机、编程和机器,是不是有点像我们小时候对“电脑要不要学”的认知,完全抗拒电脑的、拒绝自学电脑的,就是到了真正理解黄金时代巨变的时候,自己已经连基本技能都无法驾驭。
让小孩学程式设计,其实也是希望他们多一份应对外部变化的保障。
在这些年小孩自学程式设计的过程中,我也体验到计算机思维对小孩的超多启发,像逻辑思维、问题解决的能力、趣味性和创造力、以及小孩对算法、大数据、测算等计算机此基础知识与技能的提升……都有利于自学。▼
特别是新课标里已经把信息科技课程纳入,这也是把程式设计从加分项目程式设计必备技能的信号,仅小孩学到的能力,其实就和今后社会必备的核心技能,息息相关。▼
二、程式设计的自学路径是什么?
陪小孩学程式设计多年了,一直有在思考怎么学程式设计才好。
我们熟悉的程式设计语言主要是Scratch和Python, 但其实除了这两种之外,还有C++、Ardoino这些,像我学校的课外兴趣班今年的体系规划里,小学的机器、程式设计自学路径是这样子的:
小学一二年级:图形化程式设计(Scratch)
小学三到六年级:C++ 语言(从此基础到进阶)
小学一到三年级:机器(1阶到6阶)
小学四到六年级:Arduino单片机机器(从此基础到进阶)
小学二到六年级:EV3创意机器
我特别好奇的是,原来三年级已经能学C++语言了,这和我的传统认知有偏差。
同学跟我讲:三到六年级不限年龄,小孩要是准备好了,都能开始碰触C++。
和其他语言相比,C++作为编译语言,比Python等解释语言运行得更快,占用内存更少,运行效率也更高。因此在各种大赛中,比如说信息学竞赛、CCC或是NOIP(信息学奥赛,相等于奥数的地位)的官方语言,都只采用C++。
传统自学路径是Scratch->Python->C++,后来发现,其实C++也能做到更浅层的入门,因此从Python切换到C++就不是“必须选项”,也看同学的教学和授课能力。▼
如果小孩有程式设计此基础,自学能力也不错,那么在C++的自学上,就有更多的时间,连续性的自学有可能能让小孩在小升初或是初中阶段拿到CSP- J(入门组)的省一等奖,那就是非常硬非常硬的XSC优势。
而在人工智能方面,机器和Arduino有“一半程式设计一半实物”的特性,你写了代码,通过实物连接,就能清楚看到你电脑写的代码在实物传感器上展现出来的效果。
如果小孩开始学Arduino,那主要是运用Arduino软件,在IDE中编写代码,然后再传到电路板上,最后连接到实物。这是Joshua以后的作品。▼
前面提到的年龄段,其实都是泛指。一个班里都是混龄的,比如说创意机器班要考试才能入,小孩年龄能是四年级,也有六年级。
什么时候学程式设计,并不能简单地只参考年龄。
课程的选择不仅要符合小孩的年龄,更重要的是和小孩的计算机此基础相匹配。
在全国范围内,不同的省份、城市对信息科技的普及程度却是有很大区别的。
比如说有的学校的信息技术课的分量较为重,可能小孩在三年级就已经在系统自学图形化程式设计了,也有了很好的打字此基础,懂得基本的操作,那么三年级顺利过渡到学C++语言,就水到渠成。▼
而有的小孩的学校没有开展程式设计课,小孩对基本的指令还没有概念,打字速度也较为慢的话,就算是在五六年级,也不一定适合自学C++,建议从图形化程式设计语言学起。▼
如果一定要讲个普遍的自学路径,那么就是:
①如果小孩在学前班到四年级那个阶段,而且还不会打字,就能先选择图形化程式设计,观察一下小孩的计算机此基础。
②如果小孩在三年级以上,而且会打字,对于文本的理解较为到位,那么能考虑一下C++语言
③如果小孩在五年级以上,程式设计基本功也打得较为扎实,有竞赛想法的,能尝试申请进入信息学奥赛,比如说CSP-J的自学节奏,获奖对XSC帮助很大。
三、机器和程式设计要是不是选?
在我的云姐妹里,有很多是通过机器认识我的,不少小孩都是先入门LEGO,然后那时慢慢也碰触到了程式设计,因此我也问了那个我们都很关心的问题。
程式设计和机器并不是对立的,更像是“你中有我,我中有你”的关系。
就比如说机器的运动,是依靠程式设计指令实现的,里面解决方法的思维是非常类似于程式设计的。
而在小孩在自学了程式设计之后,也能看懂为何机器里的模块能实现不同的功能,背后的原理又是什么。这就是程式设计和机器相辅相成的地方性。▼
在比赛上,机器跟程式设计更是经常有交织的部分。在国家的白名单比赛中,有三分之一的比赛都是科技类比赛,其中既有机器的赛项,也有程式设计的赛项,能说是“亲兄弟”了。▼
(小孩参加的其中一个白名单比赛)
当然,它们的侧重点确实是有所不同的。机器的侧重点,在于工程的搭建。小孩需要晓得要用到哪些元部件,用怎样的函数块去解决实际生活中的问题。
我们能发现,机器的自学过程中会用到程式设计,但它不会成为一个重难点体现出来。小孩只需要晓得不同的原部件有哪些功能,会拖动或调用基本的模块就能了,强调的是“会使用功能”。
而程式设计的自学,则更强调“会打造功能”。比如说,同样一只机械臂,学机器的小孩需要会“调用”运动模块;而学程式设计的小孩,则要晓得如何通过算法“实现”机械臂的运动。
因此,程式设计自学的是更加底层的知识,锻炼的也是小孩拆解问题、解决问题的能力。这是程式设计比赛中的获奖作品。▼
故事天马行空,而且表达也是丰富且清晰。除了拥有丰富的情节和音效,还在其中增加了迷宫取物的小游戏,使得作品更加的有趣,更具有参与感。▼
因此如果小孩程式设计和机器都在学的话,如何去平衡时间,关键却是要看小孩的兴趣。但要走远走深,软件、硬件的功力都很重要,这必须得说在前头。
四、适合小孩的程式设计比赛
那时科创和程式设计氛围越来越浓,我们看到的国家竞赛白名单的比赛里,一大部分都是科创和程式设计路径的。
小孩是考级却是比赛好,那个问题我在专题讲座中专门咨询了小图灵的金牌程式设计指导同学小黄同学,她给我一个建议:
如果小孩在打此基础的阶段,能更多去参加考级,如果他在学完一个阶段的课程后,对自己的程式设计此基础有信心,再去参加相关的竞赛也不迟。
这样的路径是由易到难的,小孩适应出来会更快,也较为有成就感。
同学也在专题讲座中分享了几个含金量高、值得小孩参加的全国性比赛,我在这儿给我们剖析一下。
考级类
在众多考级当中,小黄同学给我们特别提到了一个围绕着图形化程式设计展开的考级,叫NCT(全国青少年程式设计能力等级测试)。
有关选择NCT的原因,一共有三点。
首先,NCT是用AI线上监考系统的,在家里就能考。因此无论在哪个地区的家长,都能带孩子在线上参加,就不用跑去线下的考场了。
除此之外,NCT的标准是清华研制的,通过了教育信息技术标准委员会的认证,这就类似于官方盖章了。每个小孩考完之后,也都会得到一个证明自己程式设计能力的证书。
最后,NCT的影响覆盖范围较为广,很多的中学都晓得有那个考级,因此对小孩们的升学,以及许多地方性的程式设计特长生的申请都会有一定程度的帮助。
总的来说,如果小孩学完一个阶段的知识后,想要检验自己的此基础扎不扎实,能先选择考级,而如果不晓得考哪个,能把目光更多地放在认可度高的NCT上。
竞赛类
在这些比赛中,同学特别强调了CSP那个比赛,也就是软件能力认证。作为最为老牌的程式设计比赛,它的含金量也是最高的。▼
CSP一共分为的是两个类别,一个是CSP-J,J就是初级组,还有一个是CSP-S,S就是提高组。
这两个比赛的参赛年龄有一定的限制, Junior入门级的最小参赛年龄段是小学, Senior提高级最小年龄段是初中。因此对于小学的小孩来说,就能打CSP-J,初中以上的小孩,再去考虑参加 CSP-S。▼
这两个比赛是非常老牌的,它的主办单位就是著名的中国计算机学会,也就是NOIP比赛的主办方。
这儿给我们科学普及一下,NOIP就是中国青少年信息学奥林匹克竞赛省赛,和我们熟悉的物理、数学、生物、化学奥赛是一个含金量的,作为国际5大学科联赛之一。▼
NOIP再往上,就是国家级的程式设计比赛NOI,再往上就是世界级的比赛IOI。一直以来,NOIP都是跟小孩的升学挂钩的,只不过最近两年被暂停替换成了CSP,那时又重新开放报名了。
简单来说,我们能把 CSP跟NOIP看作一个整体,把它们当成初赛跟复赛的关系就行。▼
让我们回到CSP这门比赛,它的含金量究竟是什么样的?小黄同学给出了一个统计:在2021年 CSP-J一共有53407个人报名,晋级的有16132个人,晋级率是30.21%。▼
从数据来看,我们能发现,对比数学物理化学等等学科的竞赛,CSP-J的参赛人数是比这些传统学科竞赛要少的,而且它的通过人数会比其他学科竞赛更多。
也就是说,CSP-J的竞争激烈程度,相对其他学科来说会更小许多。
除此之外一个很重要的点是,因为NOIP是省赛,而不同省份的参赛人数又是不一样的,这就产生了许多情况:有的省份卷到离谱,有的省份一片祥和。
就拿黄同学给的数据举例,甘肃、海南、吉林这几个省份,晋级比例居然达到了95%以上。就是因为这些省份中晓得NOIP的人很少,参赛的人也很少,因此他的晋级最低分就非常的低,很容易就能获奖。▼
可能会有好友好奇,CSP的奖究竟有什么用?
我就举我收到的XSC的特长信息表,计算机领域第一项就是CSP-J/S。▼
总的来说,如果小孩在程式设计系统自学后,觉得学有余力,就能尝试这些比赛,开拓一下眼界。
写在最后
有没有觉得程式设计、计算机和机器世界,打开了你的一片新天地呢?
我最开始了解到的时候,也有这种感触。
因为小孩的理工科兴趣爱好,因此我这些年没少积累这些东西,而每次碰触好的课程、认识好的同学,我都会学到很多以前从来没碰触过的信息,看到没看完的世界,因此也想把这份庞大而细致的程式设计干货分享给我们。
相信能点进来文章的好友,大部分都是怀揣着对程式设计世界的好奇,希望能在小孩的兴趣特长上给予你足够的帮助。
我觉得在小孩兴趣爱好的启蒙上,千万不要过早判断小孩今后有戏却是没戏,看到CSP-J和NOIP这些就觉得离自己小孩很远,可是回想一下自己小时候,参加过这些奥数、英语竞赛等校内组织选拔的经历,是不是也历历在目。
总归来说,如果小孩钟爱,扎实打好基本功,就为后来留多了可选择的空间。
把小孩对程式设计的兴趣培养出来,什么时候起步都不算晚。
这是家有三年级小孩的过来人心声,希望能够帮我们缕清思路,做好最适合小孩的自学规划。
END
崩坏研究所BUD,专注于早教启蒙和亲子沟通,是百万妈妈信赖的育儿号。