跳到主要内容

学习编码与学习编码

通过

学习编码与学习编码

你好,世界!
有空间吗
有一些编码吗?

本周,全球超过一百万名学生将参加 代码小时,这项年度活动旨在激发人们对计算机科学和计算机编程的兴趣。这反映出在某些方面,人们越来越有兴趣促进学校内部的努力,以扩大人们对“编码”的含义的认识(即编写一套循序渐进的方向来指导计算机做某事),并帮助学生发展相关技能。

也许并不奇怪,许多 领导技术商行 一直是这种教育编码“运动”的热烈拥护者和支持者。尽管这种支持在美国特别显着并备受瞩目,但许多 突出组织机构 与硅谷有密切的联系和/或根植于硅谷-很久以前,这只是北美的一种现象。

引用编码技能以及更广泛的IT工作对其国民经济的重要性,许多国家的政策制定者正在考虑进行各种形式的国家编码教育工作–并且一些教育系统已经开始实施相关举措。从 特立尼达和多巴哥印度尼西亚奈及利亚,“编码”正在引入课堂和课程中 世界各地 以各种方式,包括非正式的和(越来越多的)正式的,以及改善和/或恶化(取决于您的观点,以及特定举措的特殊性质或严格性)。

这种现象在整个欧洲尤其明显,尤其是在欧洲(至少在关心和关注此类事物的人群中), 爱沙尼亚英国 已为初等年级的学生引入了编码课程(英国实际上已将此强制性–斯洛伐克也一样,这是值得的)。每年十月 CodeWeek.eu 作为大陆联络点,并展示了许多此类国家和地区工作。欧洲学网的最新报告(计算机编程和编码-欧洲的优先事项,学校课程和倡议 [pdf])是对21个教育部进行的一项有关其当前与编码相关的举措和未来计划的调查结果。迄今为止,已有16个欧洲国家在某种程度上将编码纳入其课程中(预计芬兰和比利时的佛兰德地区将于2016年实现)。尽管这些国家/地区中的大多数都集中在高中阶段,但是在大多数这些国家/地区中,越来越多的人开始在初级阶段找到(或很快找到)编码。该报告重点介绍了欧洲经验中出现的一些重要的相关教学问题:

  • 如何有效设计涉及编码的学习过程和结果?
  • 根据他们的年龄,兴趣和能力,哪种具体活动(和编程语言)最适合不同的学生?
  • 采用跨课程的方法来教授编码或离散计算机科学课程有什么优点(和局限性)?
  • 如何完善评估,尤其是在其他学科的跨课程方法中整合了编码的情况下?

它还强调了与培训和对教师的支持有关的许多挑战。虽然许多开发工具和服务以使编码运动成为可能的初创公司都在美国,但欧洲在许多方面都处于学校实际相关活动的中心。

---

有人说,“编码”是“新素养。”有些人认为,编写和理解计算机代码的能力对于理解如何驾驭自己的道路变得越来越重要,更不用说成功了,在现代社会中,我们的生活越来越受行动的制约和/或约束。运行在计算机代码上的设备和信息系统。

我希望很少有人会与这种观点争论,以使一些学生了解‘编码”并发展一些相关技能是一件坏事。说:

*所有*学生是否应该学习编码?
所有?这是荒谬的! 有些人会回答。
所有?绝对! 其他人回应。

我参加了教育部和世界各地教育政策论坛的许多相关讨论。有时,似乎这两个小组的成员不仅在不同的页面上,而且从完全不同的书中阅读。 那些人就是不明白,我听过来自 团体感叹 彼此 此类会议结束后。

对于它的价值,以及如果它可能对其他人有好处,以下是我听到的一些最普遍的论据,以支持和反对教育编码计划的支持,但顺序不分先后:

1.编码教育将帮助学生获得与当今就业市场直接相关的职业技能。
查看世界上所有与IT相关的工作,编码教育的倡导者说。 我们的学校不应该专门为我们的学生准备竞争吗? 抛开关于职业导向课程和方法在教育系统中的适当位置的更大问题(一些人对什么是更广泛的看法‘教育的意义不仅仅在于为明天的工人做好准备,还意味着某些观点有些极端(“中国父母的最新狂潮:学前班”),批评者认为,许多相关的努力实际上是在浪费时间,原因有很多。其中包括:(a)着重于开发主要在其他场所容易学习的机械过程; (b)他们主要关注的是今天而不是明天的“与工作相关”的技能; (c)这类倡议很大程度上是由商业部门(他们认为自己的动机与 大怀疑); (d)当前的许多努力本身没有教学价值。人们经常不屑一顾地引用那些据称与编码有关的项目,但这些项目仅比学习如何使用基本的办公工具(如文字处理器和演示软件)多得多。
支持者反驳说,将来不应该做某事,因为今天常常做得不好,这并不总是会引起争论,而仅仅因为私营部门支持学校中的一项特定活动并不一定意味着要这样做。不好或有邪恶的意图在起作用。 不要把婴儿和洗澡水一起扔掉,他们回应。

2.编码有助于发展重要的逻辑和解决问题的技能。
史蒂夫·乔布斯说:编码教你如何思考”。很少有人会反对这样一种观念,即良好的语言教学可以帮助开发重要的逻辑思维和解决问题的能力。确实,大多数编码教育的核心是逻辑,旨在帮助人们识别和解决特定的问题(无论是“在屏幕上出现问候”还是“将这只乌龟移到桌面上”这样的基本知识)。左”或与尝试模型预测的降雨模式或病毒在整个人群中的传播一样复杂。对此,批评家认为 编码课程并不垄断这种技能的发展,实际上这些技能应该嵌入到整个课程中,而不是单个学校课程的重点。

3.理解编码可以帮助学生更好地了解周围世界的本质,以及如何以及为什么增加其中一部分的功能。
计算机在我们的生活中扮演着越来越重要的角色,因此了解它们的功能非常重要。 我发现,在教育政策制定者中,这种说法往往是普遍同意的,尽管考虑到许多相互竞争的优先事项,尽管不同的团体仍然不同意这种说法的实际意义。话虽如此,值得注意的是,许多教育编码工作的批评家可能未完全掌握这一观察的潜在意义。计算机没有自己的想法(至少现在还没有!),它们只能按照已编程的指令行事。您在市场上要支付的价格,为什么您的政府或私人公司认为您可能会做(或不做)某事,为什么搜索结果会显示在屏幕上–这样的事情越来越不是由一时兴起的人直接决定的,而是由某人创建的算法(或算法的组合)直接确定的。了解这种算法的功能以及如何实现,对于理解我们日益数字化的世界将变得越来越重要。 (技术既不是好事也不是坏事,Melvin Kranzberg指出,也不是中立的。)那些承认从这些观察中得出的潜在深刻见解的人可能仍然认为,这里存在非常实际和即时的机会成本: 如果您将编码添加到所有学生的必修课程中,结果将是什么? 一些地方正在考虑做一些事情,例如让编码课程用于满足 外语 或基本 数学 要求–这是一件好事吗?

4.教学生编写代码可以充当后续学习STEM主题的门户-并有望带入相关领域的工作和职业。
理性的人可能会不同意其确切的性质和大小‘STEM挑战”(即,由于学生数量不足,正在学习科学,技术,工程和数学而出现的问题……也许是另一篇博客文章的主题)。也就是说,即使批评家承认存在这样的挑战,他们也可能会问:‘编码”,这真的是提高STEM普遍兴趣的“最佳”途径吗?如果没有很好地教授编码,那么它是否真的会使某些学生无法继续学习STEM主题,从而降低他们从事STEM相关职业的可能性?学校编码教育的确是编码的门户,还是实际上只是“寓教于乐”?这与学校购买的所有计算机有关,但仍未弄清楚如何高效地使用计算机,总比没有好。可以肯定,但并不比许多潜在的替代品好吗?

经常与此相关:

5.在学校引入编码可以成为实现更大机会平等和机会均等的力量。
毫无疑问,技术行业遭受与多样性(或更准确地说,缺乏多样性)相关的实际问题。在某些地方在学校引入编码的努力被认为是可以帮助实现这一目标的措施。拥护者坚持认为,当编码成为每个人都要做的事情时,它不再仅仅是 例如 适用于男孩,适合在家中使用计算机的孩子,适合加利福尼亚州或印度的人,白种人,亚裔或___的人[请随意插入自己的刻板印象和/或‘特权”组。评论家可能会反驳说,为更多种类的孩子提供更多的编码机会肯定会有所帮助,可以为那些原本可能不会得到的人提供一些最初的机会,并消除某些陈规定型观念,但情况相当复杂,还有很多工作要做。这些批评家担心,由于学校中有编码计划,某些领导人将宣布多样性挑战正在发生。‘解决”,或至少‘处理”,然后将其保留。支持像 编码的女孩 或更多本地化程序,例如 女孩编码 这样的批评家说,(在尼日利亚)一切都很好,当然,这是一个好的开始,但事实并非如此。‘解决问题。

6.能够编码为创造力和创造力表达开辟了新途径。
努力通过使用类似工具向年轻学生传授编码技能 ,或作为机器人课程或计划的一部分,以促进“制造”(和/或“物理计算”),通常被认为是(良好)编码教育工作可能包括的令人信服的例子。再次,许多批评家可能会赞扬这种努力,但仍然认为,即使您承认编码在我们技术日趋饱和的世界中是一种新的素养,在继续进行新的大规模开发之前,仍然值得提出两个相当基本的问题,学校中的强制性教育编码计划:

  • 我们如何处理古老的阅读,写作和算术基础知识?
  • 在我们开始对已经fundamental肿的课程进行新的学习之前,我们不应该确保已经具备了这些基本的“识字技能”吗?

---

一些相关的讨论:

在一位优秀的老师正在学习编码的同时,他正在与一个积极进取的学生一起工作并提供支持,许多人发现很难反对这样做(更多)。毕竟,教育上的“成功”在很大程度上是从根本上发挥学习者的内在好奇心(而不是扼杀它!)的功能。如果我们谈论的是这样一种情况,即使对学习兴趣不强或略有兴趣的学习者死于死记硬背一些与“如何使计算机做某事”有关的相当基本的命令和动作,特别是由自己做的老师我不太了解这个主题,“什么”在很大程度上与如何进行操作(例如更改PowerPoint中的字体大小)有关–嗯,作为正式课程的一部分,也许没有人需要在学校学习。当然,在这两个极端之间有一定的空间,使事情变得更加有趣和复杂。

考虑到广阔的中间领域时,人工智能先驱Roger Schank的话可能会有用。尚克(令人发指的是,他也不会) 宣布 那是什么,“任何值得他大吃一惊的认知科学家都知道,重要的不是像代数或化学那样的学科。重要的是认知能力。”可以说,在编码方面也是如此。可能编码本身并不是真正的目标(尽管我们当然需要编码员,就像我们需要化学家一样)–但是,如果大规模的编码教育可以帮助学生发展自己的认知能力,那 潜在地 更大目标的有用手段。

作为已经在促进基本识字技能发展方面做得很好的教育系统中的一项课外活动或充实活动,按照这种思路,在学校推行促进编码工作的努力似乎很合理,尤其是在这种情况下努力有助于吸引或激发原本不感兴趣的学习者-尤其是在由于偏见,歧视或刻板印象而无法将此类学生视为(甚至认为自己)学习此类事物的候选人的地方。然而,在许多仍在努力帮助学生发展基本识字技能的地方,尤其是在许多中低收入国家,如果许多决策者认为教育编码工作如此努力,也就不足为奇了。对我来说,他们“现在买不起”的“奢侈品”。

也就是说,决策者在 一些 这样的地方开始改变他们的声调。面对公认的基本‘电脑知识过去不再需要(不管是好是坏)在学校中垄断使用计算机设施的课程(因为学生或已经‘计算机知识”),还是‘效率低下”(因为此类课程尚未展示出真正的价值),或者仅仅是过时的(技术变化如此之快!),其中一些人现在开始自问: 如果我们不再教授ICT素养,我们将如何使用学校安装的所有昂贵的计算设备? 在这种情况下,请在‘编码可能会落在特别肥沃的土地上,无论好坏,政策制定者都希望在现有的学校计算机实验室中占据一席之地,同时展示可以被称为“慈善”的内容。‘想象力危机”: “计算机类1.0”原为‘ICT素养”,但这已经过去了,所以现在我们进入了“计算机课2.0”:‘编码”,因为这是最新操作。 (我们知道这是因为它在TEDtalk中。)

还有另一种方式来考虑潜在的价值和相关性‘但是,尽管说实话,但在我参加的有关教育政策制定者的相关讨论中,这种观点仍然与众不同。根据这种思路,真正的价值在于‘进行编码教育并不是要培养与市场相关的计算技能,并(在将来的某个时候)导致计算机程序员数量的增加。 (这可能会发生,如果确实如此,那当然很棒,但这不是 真实 支持者说)。相反,编码课程可以用来帮助学生发展技能,以便他们可以‘从算法上思考”并从事所谓的‘计算思维”。卡内基梅隆大学的人们认为,这是 相关活动,“计算思维是一种解决问题,设计系统并理解人类行为的方法,它借鉴了计算机科学的基本概念……[它]意味着创建和利用不同级别的抽象,以更有效地理解和解决问题。 。计算思维是指通过算法思考,并能够应用数学概念(如归纳法)来开发更有效,公平和安全的解决方案。”根据这样的人,‘学习编码实际上是关于开发技能,方法和对工具的熟悉程度,以帮助使用‘编码学习’. ‘换句话说,编码不仅仅适用于程序员和计算机科学家,还与*所有*学习者相关,并且可能与*在学校教授的所有*课程有关。

就是说,即使在这样的论点吸引了决策者的听众(我发现,在大多数情况下,他们并没有接受),所有教育体系中的一个共同挑战是,缺乏能够自己教书和融入社会的教师相关的基本概念和方法,使学生可以在学习以下知识的同时发展和利用编码技能‘学校里传授的传统主题:不仅是科学和数学,而且还有历史,语言甚至是艺术或体育等学科(是的,甚至有可能–但在相当特殊的学校环境中,需要一个相当特殊的体育老师)。在这种实际情况下,有必要由专门的编码老师介绍单独的编码课程,这显然具有吸引力。 让我们首先教孩子们编码,并进行算法思考,一旦我们有了一个好的开始,我们将尝试找出如何使这些东西与他们在上学时间的其他时间相关的方式。其他地方说: 我们在本地找不到这样的老师,因此我们根本不会教这些东西。

---

我们应该在学校教编码吗?是什么‘coding’ mean 在我们的背景下? WHO 应该教它,并且 WHO 应该学习–几个,还是每个人?我们可以负担得起吗? (相反,鉴于我们的邻居和竞争对手正在这样做,我们能负担不起不这样做吗?)我们是否有兴趣确保更多的孩子‘学习编码”,然后停在那里,还是更多地发展可以最终帮助学生的技能‘code 至 learn’?

无论情况如何,决策者如何回答这些问题以及许多其他相关问题,在很大程度上可能是因为她如何看待教育的作用和过程以及学习活动。


注意:此地标顶部的图片(“ hello world!”)来自 维基共享资源 并且属于公共领域。 (如果您意识到这一点,那可能是因为这是人类拍摄的第一张地球图像,这是阿波罗8号任务的一部分。)购物车中一个男孩的第二张图像(“那里有一些编码的空间。 ?”)最初发布到 Flickr 通过 garycycles。是通过以下方式发现的 维基共享资源 并根据其条款使用 知识共享署名2.0通用(CC BY 2.0)许可证 .

交叉发布于 博客s.worldbank.org/edutech

迈克尔·特鲁卡诺(Michael Trucano)是世界银行的高等教育&技术政策专家和教育创新全球负责人,是该组织在全球范围内解决问题的联络点 技术使用与教育的交集 在全球的中低收入国家和新兴市场。阅读更多 博客s.worldbank.org/edutech.