幼儿园的职业日:如何在20分钟内演示编程?

Pét*_*rök 186 children

原始问题

我被邀请到我大女儿的幼儿园小组谈话并回答孩子们关于我职业的问题.该组有26名4-6岁的孩子,另外还有3名教师,他们对编程和IT本身有任何相关的恐惧,但他们大胆地学习新的技巧.我会有大约20-30分钟,没有投影仪或任何东西.他们有一台旧电脑,看起来可能是486,我甚至不确定它是否正常运行(更新:它不是).

我的研究发现了很好的早期线程,有很多好的提示:

我的情况与上述情况不同:后者与年龄较大的儿童有关,而第一种情况则是与单个孩子(或老年人)交谈 - 一组20人是完全不同的挑战.

我怎样才能以有趣的方式教孩子们和他们的老师有关编程的知识?


基于答案的计划

感谢所有惊人的答案,伙计:-)我认为接受单一答案并不合理,但我最喜欢Jim,就像大多数SOers显然那样.然而,许多其他答案包含有用的提示和想法(其中一些我肯定会在未来的职业生涯中用于学校......).

我整理了一个粗略的计划:

  1. 简要解释一下编程是什么,就像在这个答案中一样.
  2. 告诉计算机无处不在,并与孩子们一起收集示例(如下面的几个答案所示).
  3. 吉姆和三明治一起演讲.
  4. 如果时间允许,进一步构建:
    • 解释说,计算机的优势在于它们能够准确地记住它们曾经被教过的东西(并通过准备第二个三明治,重复第一次尝试的所有错误来证明它)
    • 第二轮尝试修复过程中的错误
    • 解释循环的概念:你可以让计算机n用一条指令准备三明治

这是我的计划 - 我很确定它会变得非常不同,所以我会根据情况即兴发挥.演讲安排在大约2周的时间内 - 我将在事后更新帖子,并告诉它实际上是怎么回事......


结果

最后演示的那一天到了......简而言之,一切都很顺利,这是一个巨大的成功:-)

这一次,这群人变得非常焦躁和精力充沛,所以谈话偶尔会变得有些混乱.我不得不缩短它并进入Big Sandwich Maker Show.正如吉姆所说,孩子们喜欢它.

但是有一种不可预见的副作用:在第一片面包最终准备好之后,每个人都想吃!所以有一段时间 - 我试图跟上对话并解释更多关于节目的问题 - 我们不得不与幼儿园老师安装一种紧急服务线来制作大量的果酱面包并喂饱饥饿的人群(这只是一半)早餐后一小时,记录:-).然后我们用完了面包,这显然意味着演示的结束.孩子们注意到可怜的电脑踩到了一块破坏了袜子的橘子酱后,最大的一阵笑声爆发了:-)

老师们自己也给人留下了非常深刻的印象 - 从反馈来看,这是迄今为止这个小组中最好,最有趣的职业日.再次感谢大家的好主意!

可以改进的事情(下次):

  • 当我问"你觉得电脑是聪明的吗?"时,我很惊讶大多数人回答"不".然后我问谁认为电脑很聪明,为什么.然而,我忽略了问谁认为计算机是愚蠢的,为什么 - 因此我认为我错过了一些可能有趣的答案.
  • 邀请孩子们围着桌子让他们积极参与......但有时可能有点过于积极.面包切片开始从餐桌上消失,一些观众模仿电脑,就像将自己的手指浸入黄油和橘子酱中一样:-)所以最好保持一定的距离.
  • 为了控制饥肠辘辘的人群,应该事先清楚地告诉孩子:"你可以吃掉所有的面包,但只能示威之后!"

但总的来说,我对结果非常满意.而且我相信孩子们得到了核心信息:作为一名程序员,如果你避免造成混乱,你可以制作你的面包(即使是橘子酱:-)

Jim*_*ley 276

我之前做过这个.

我在桌子上放了很多纸巾,然后拿出一条(廉价)面包,一小桶黄油,一小罐果冻和一把塑料黄油刀.

我对孩子们说:"你们当中有多少人认为电脑很聪明?" 大多数人举手.我说:"计算机是非常愚蠢的.人是聪明的.你必须告诉电脑一切,不知道该怎么做任何事情.我要告诉你我的意思.我要假装我我和电脑一样愚蠢,你们告诉我如何做三明治."

当第一个孩子说"打开面包袋!" 我撕开袋子,让面包随便掉到桌子上.这得到了很多咯咯笑声.我继续按照他们的话对孩子们说话,直到他们学会了简短的具体命令,最后我们最终得到了一个黄油和果冻三明治.有很多笑声,但他们离开了理解,至少是一点点,程序员的生活.

(我应该注意,我也在成人的"编程入门"课程中进行了这个演示,并且它与它们一样好用.)

  • 当成年人很傻时,+1孩子喜欢它,他们会告诉他们该怎么做:) (110认同)
  • 这就是程序式编程方法.;-) (14认同)
  • 我曾经和小学的孩子一起参加了类似的演示.当孩子们忽略了用刀子将果冻撒在面包上时,孩子们大笑起来. (10认同)
  • 这是我在任何地方看到的任何问题的最佳答案之一.谢谢. (6认同)
  • 听起来像是一个很好的主意,可以通过亲身实践的方式来提升乐趣并让他们学习.希望我在幼儿园做过这个演示! (5认同)
  • 至少没有一个孩子叫出DROP TABLE. (5认同)
  • @herzmeister - 恰恰相反!没有什么可以更多**对象**导向;-) (2认同)

Joh*_*ohn 47

做一个动觉版的Logo怎么样?

假设你有两个孩子并排.他们是否可以仅使用"前进","后退","左转90度"和"右转90度"命令来确定如何切换位置?我确定还有其他游戏,比如穿过迷宫等.

如果能让他们继续前进,我想你会留意他们的注意力.这将激发人们的兴趣.他们后来会发现这份工作是久坐不动的.;)

  • "如果能让他们继续前进,我会认为你会留意他们." 不能同意更多. (6认同)
  • 把两个孩子放在房间的前面,让椅子上的孩子们给出命​​令.站着的孩子对他们所做的事情没有发言权 - 他们必须遵循班级给出的命令(显然你会想要以某种方式控制人群).整个班级都参与其中. (6认同)

小智 28

不要试图在计算机上显示任何内容.看着别人打字对成年人来说很无聊.对于5岁的孩子来说,这是无政府状态的一个秘诀.

相反,让它互动.某种形式的"西蒙说",但让他们成为程序员.

  • 那么它将是"sudo"而不是"Simon说"?;-)说真的,这是一个好主意,我会考虑更多...谢谢. (14认同)
  • sudo让我成为三明治http://xkcd.com/149/ (2认同)

Jon*_*gel 11

我从来没有试过这个,但它可能很有趣.

通过使用每个孩子的一些属性作为输入数据来物理地演示算法.

例如,让它们并排形成一条线(按照它们最初的顺序).这可能在一个半圆圈中效果更好,所以他们可以看到彼此进行练习,但必须在某个地方有一个突破.然后,从该行的一端开始,让他们轮流做"如果左边的同学比你高,切换位置;否则,留下来." 当你通过线路并且没有人切换位置时游戏结束.让他们观察结果.(提示:冒泡排序!)


DVK*_*DVK 7

为了让孩子们参加编程,你可以开车到劳斯莱斯的幼儿园,和你华丽的其他人一起走进去.

如果你不是比尔盖茨,那么你只需要解释一下你每天坐4个小时无聊的会议,打印2小时的TPS报告封面,并盯着前面无能的程序员写的愚蠢的东西.其他6个小时.(不用说那时你就是来自那些维持你最后一个节目并认为你是前一个无能为力的人的电话).

不,我不苦,你为什么这么问?

说真的,(我确定我潜意识地从这三个线程中的一个抄袭),让他们玩"给我如何做Y的指示",你用Genie的方式做事 - 除非说明非常准确,否则都是错的明确.实际上,假设孩子们看到阿拉丁,精灵就是一个很好的例子.

; ^)


MK.*_*MK. 7

让他们为你编写简短的程序来做简单的事情(比如进入房间并坐下),然后逐字地执行它们来演示"错误" - 它们不够具体或者没有考虑到某些因素,所以你会做错事.尽量不要在这个过程中伤害自己.它应该很有趣,并且可以让他们非常了解算法是什么.