专栏名称: CDA数据分析师
CDA数据分析师品牌官方微信,开放、创新、分享。
目录
相关文章推荐
51好读  ›  专栏  ›  CDA数据分析师

如何给六岁小孩解释编程

CDA数据分析师  · 公众号  · 大数据  · 2017-05-09 17:57

正文


作者:Tomek Kaczanowski

翻译:方芳  梁傅淇

校对:丁楠雅

本文转自数据派THU,转载需授权


任务: 给一群六岁的孩子解释你的工作内容。


难度: 高(我自己的女儿在其中)。


有不少人分享过他们关于这项任务的点子——你可以在Stack Overflow上找到许多非常有趣的例子(比如说这个 http://dwz.cn/5U0UvO )。很多点子的出发点都是展示计算机有多么愚蠢,例如需要很精确地告诉计算机做什么、如何做。这些点子确实很有趣,但是我怀疑课后孩子们是否能真的理解一点儿编程方面的知识。


如何做一次成功的presentation呢,我的观点是:


  • 用问题和画画吸引孩子们。 我在现场使用的画纸非常大(用的挂纸板),我一边说一边画——顺便说下,这是个让小孩子保持积极性的好法子(他们玩得很高兴,笑话程序员笔下的稻草人和小猪佩奇不长这样,现场充满了笑点)。我忘了拍现场照片,但是我只要再画一遍你就能明白我的意思。


  • 在孩子们已有知识的基础上讲解(YouTube, 笔记本,平板,DVD)。 现在每个孩子都在YouTube上看动画片、在平板上玩游戏、观察父母在笔记本前工作。他们知道电影是保存在CD或者DVD上,智能电话和平板电脑是类似的东西(说到游戏和电影时)。


我从一个基本的问题开始 “谁知道程序员是干什么的?” 由于孩子们昨天已经讨论过这个问题,此刻他们有一些想法一点也不奇怪。然后我告诉孩子们我自己的定义:“程序员是写计算机程序的人,他们会用特定的语言告诉计算机该做什么。程序员还懂很多关于计算机的东西。”


然后我画了一个工作中的程序员。



接下来是讨论 计算机 。所有的孩子开始讨论他们父母的笔记本电脑(孩子们一遍又一遍提到同样的事情真的很可爱)。讨论了一会儿之后,我打断他们,指出 在各种地方有很多计算机 ——例如智能手机、手表、还有一些在汽车和电梯里。我把每个提到的东西都画下来,并且用几句话讨论了计算机在各种情况下应用在哪里。


我还问孩子们觉得天气预报是怎么出来的(一个聪明的孩子回答“卫星知道第二天天气是啥样”),然后告诉他们计算机是在成千上万个测量设备采集来的数据的基础上计算预测的。



随后我把话题切换到 计算机程序 上,我告诉孩子们计算机之所以能做很多事,是因为程序会指引它们做某个事情。


我说到YouTube,因为孩子们熟悉Youtube。 我从画孩子们都熟悉的UI开始。


我问孩子们YouTube上有多少电影。不少孩子困惑了,但有几个喊道“百万”或者“无穷”。我问他们有没有可能所有的电影都放到一张盘里,然后画了许多光盘问道:“你告诉YouTube要看某集小猪佩奇后会发生什么,它是怎么找到正确的磁盘的呢?”孩子们沉默了,于是我画了个数据库并快速描述了它的作用。



我想向孩子们传达这样的一种理念,即他们看到的只是冰山的一角, 程序员负责的事情远比这个要多 。我解释了程序员是怎么处理如下不同的事情的:


  • 保护电影,防范坏人(“如果有人想改变数据库,你看不了小猪佩奇,只能看到足球赛时将会发生什么”——可怕的沉默)

  • 备份(“如果一张盘坏了会发生什么?你就再也不能看小猪佩奇里小猪爸爸尝试挂一幅图的那一集了”——又是一阵可怕的沉默)

  • 所以YouTube是在不同的设备上运行的(智能手机,平板,笔记本)

  • 播放广告

  • 计算观看各个电影的人数

  • 显示类似的电影有多少个赞,等等


这是个提醒孩子们 编程是团队工作 的好时机。 程序规模庞大而且还涉及到不同领域的知识,这就需要许多人参加到程序编制中。在这一点上,我更新了第一幅图,加上另一个程序员,这样就有两个坐在一起的程序员了。


下一个话题是 计算机如何工作 ——当然阐述得比较粗糙。我所能告诉他们的是:


  • 鼠标和键盘是用来给人们对计算机下命令的

  • 显示器是计算机做应答的

  • 每一台计算机里面有一个处理器(可以看作是计算机的大脑)

  • 磁盘是计算机用来存储信息的



我主要讲解了处理器,告诉孩子们它用的是一种有趣的语言,只包含0和1。我假装用一种只有A和B的语言说话,孩子们和我玩得很开心。然后我解释了程序员们创造出程序语言就是为了能更方便地和处理器对话。


接着我讲解了最简单的 程序语言的例子 (使用一些伪代码)。我想再给孩子们多讲一些内容,但感觉他们开始走神了,所以没来得及讲循环语句。









请到「今天看啥」查看全文