惊呆!做个旅行计划都能变成一堂计算思维课
在英美等国家的中小学里,编程已成为与读写、数学和科学并列的核心学科之一,美国总统投入40亿让全美孩子学习编程。 我们不禁要问 - 为什么让孩子学编程如此重要?
来听听比尔盖茨怎么说的:
"学习编程”可以锻炼你的思维,帮助你更好地思考,创建一种我认为在各领域都非常有用的思维方式。" ——微软创始人比尔盖茨
什么是计算性思维?
这里,我们首先要明白什么是计算性思维?
计算性思维(Computational Thinking)用计算机逻辑来解决问题的思维:将一个困难问题分解,通过逻辑分析和细分步骤构思出解决方案,从而形成问题解决的模型,应用到更多同类问题当中。
看上去有些抽象吧?其实在日常生活中解决问题时经常会用到,它包括了数学和逻辑、推理和预测、问题解决能力等等。
谷歌公司将计算性思维概括成这四大类型:
这几个词只是看上去很抽象,实际上,我们的生活中,有很多问题的解决要用到这些思维。
比如制定旅行计划,需要用到计算思维
“策划全家人的旅行”听起来非常庞大、繁琐,怎么样让孩子能把一个复杂庞大的任务完成呢?如果孩子学过计算思维,那他可以从分解任务开始着手。
第一是分解问题的能力,把一个庞大的任务分解成几个小问题分别解决。
将“策划全家人的旅行”这个庞大的任务分解成几个小任务,我可以把旅行,先分解成“订机票”、“订酒店”、“订活动”三个任务,然后依次分别解决。
而其实每一个小问题又可以进一步分解成不同的小任务来解决,当你将每一个小任务都解决好了以后,这个“计划全家旅行”的庞大的任务也就可以轻松地解决了。
第二是模式认知。比如旅行时,订酒店,其实我2014年、2015年都在某一个网站上订了某个连锁酒店,非常靠谱,住得也非常舒服,这一次我可以同样地在这个网站上订这个连锁酒店。
在这里,我会根据我过去的经验以及过去解决问题的方法,来解决我眼前的问题,这是认知模式的一种。酒店订完了,我们基本上就要计划一下我们的活动了。
第三是抽象思维。下图中,左边和右边是两个不同的计划,对比之下就能发现,左边有很多没有必要的细节,比方说“要吃巧克力麦片”,如果我们把很多时间花在没有必要的细节上,就会降低我们的效率。
所以一个善于运用抽象思维的同学会剥离出问题的核心,知道什么是重要的、需要提前确定的,什么是不重要的、到时候慢慢看也行的。这样TA就不会浪费时间在不必要的项目上。
第四是算法设计,大家可以通俗地理解为解决方案的设计。我们还拿旅行计划的设计作为例子,到了假日的早上,我非常开心地准备去公园玩,那么问题来了,怎么从酒店走到中央公园去?这里需要一系列的解决方法。
我首先会问今天下雨吗?今天不下雨,我们就要出酒店门,右转,朝北走七条街等等,才可以带我们到公园。如果今天下雨,我们则要回房间、拿上伞,在酒店门口等的士,的士来了就告诉的士司机我们的目的地……
我以前经常听到别人说——“我天生就是个路痴,就算给我个地图我也找不到地方,你还是来接我吧”,其实我认为,没有人是所谓的天生的路痴,只要你能对着地图、运用好计算性思维里的算法设计、严谨地计划好自己的每一步,就没有你无法到达的目的地。
计算思维也可以通过生活中的实物训练
“计算性思维”归根结底是根据孩子的思维发展规律,培养数理逻辑能力。可以利用一些玩具和实物进行培养,再过度到编程的学习上,会更自然。
学龄前3-6岁的孩子主要以具体形象的思维为主。比如,问孩子“3+2等于几”,对这个年龄段的孩子不那么容易,但若问他们“3个珠子和2个珠子放在一起是几个珠子”,大多数孩子会觉得好算很多。
因此,这一阶段“玩”实物是最有效的思维训练。
串珠子,可以让孩子研究串成有规律、间色不同的图案;涂鸦填色,比如在一组直线排列的三角形填上间序为“红、黄,红、黄,红、黄”的颜色,或是推测下一个图形的颜色;拼图,也可以让孩子对具体的形象、结构产生认识。
除了“有序”的练习,创造性的串珠制作和培养想象力涂鸦也能对孩子思维的提升有巨大帮助。
6-11岁是培养孩子抽象逻辑思维能力的关键时期。通过观察分析,逐步让孩子学会对事物进行概括、抽取出事物的特性形成概念,进行推理、判断。
数学游戏是典型的计算思维与逻辑练习方式。比如下面这个题目:
把写着1到100这100个号码的牌子,像下面这样一次分给四个人,你知道第73号牌子会落在谁的手里吗?
考虑“数”的顺序,运用逻辑推理,让孩子在思考和探索这个数学问题时通过尝试找到比“穷举”更快更有效的办法,从而得到思维的提升。
除此外,棋类、魔方也是传统而有效提升儿童思维能力的方式:
可别忽视了日常对话,这对训练孩子的思维能力有着重要作用:
1. 强调日常对话中的因果关系
明辨因果关系是逻辑思维的基础能力之一。比如,去公园的时候告诉孩子:
因为今天天气很热,所以你现在口渴了;因为你口渴了,所以你需要喝水。
孩子并不一定能理解这里的因果联系,但父母在表达自己的过程中注重逻辑,会在潜移默化中影响孩子的思维方式,使之更清晰。
2. 教孩子区分事实和观点
美国小学课堂上教孩子思辨的重要课题之一,就是“fact or opinion”(事实还是观点)。
事实,包括太阳是热的、蛋糕是甜的、A是字母表里的第一个字母、蜘蛛有八条腿;而观点包括“我喜欢晒太阳”、“蛋糕很好吃”、“我不喜欢背字母表”、“我觉得蜘蛛很可怕”。有意识地引导孩子,区分我们表达的是感情、观点,还是道理、依据,这在分析问题和做判断的时候非常重要,也是孩子日后思维发展的基石。
有了生活中点滴积累,孩子的理性分析、逻辑能力才能够不断建立。当孩子的计算性思维得到充分训练时,“数理化”这些课程基本都是小case了!
相关阅读:【干货】一张图看懂孩子编程学习的成长路径
欢迎参加“跟着博士玩编程”公益课,点击阅读原文报名参加!
海码爸爸 ∣一群计算机博士发起的父联组织
长按识别二维码,加关注;欢迎加入QQ群:361999832