几周前,我发明了一个推特标签,发起了一场关于计算思维、教育不平等以及学校和教师现状的“推特谈话”(对话)。这些主题很吸引人,发人深省,所以我打算把一连串的推文变成一个故事,在这里分享。
史蒂夫Bissonnette在推特上链接到一篇博客文章(见贴在这里)关于一份新报告(见报告在这里),表明英国编程俱乐部的孩子们在计算技能方面有所提高,但在其他我们可能认为是“计算思维”的技能方面却没有任何提高。我转发了史蒂夫的推特,并评论道:
这并不奇怪,但非常有趣。参加编程俱乐部可以提高学生的编程能力。这不会对任何其他思考或解决问题产生影响。# doesComputationalThinkingExist
舒奇·格罗弗就挑衅性的标签把我叫了出来# doesComputationalThinkingExist.我回答说,基于Ben Shapiro的一些推文和评论,我已经对计算思维(CT)有了更批判性的观点(例如,在这里).CT通常被描述为不需要编程。这是否意味着穷人家的孩子可以得到国家标准的计算机计算机,而富孩子可以得到真正的计算机计算机和真正的编程,这将给他们带来编程技能带来的巨大经济效益?我们甚至能定义计算思维吗?如果可以,我们能证明它是从计算环境转移到非计算环境的实践吗?
阿曼Yadav推迟他说,他认为CT“是一个切入点,让教师看到CT与他们每天在课堂上所做的事情(以及被评估的内容)之间的联系。我们把计算机科学作为把‘真正的计算机科学’带入教室的基石。”阿曼戳了我一下。”顺便问一下,#CS在K-12不就是#编码吗?我回答说:就像K-12的数学只是方程一样.当然,这两种说法都不正确。方程是谈论数学思想的超级强大的方式。代码是谈论计算想法的一种超级强大而灵活的方式。”
本·沃尔真的让谈话开始了用他的推文总结问题如下:
我认为@guzdial的观点是#cs和#编码是明确的可交付的主题,有明确的好处#ct是模糊的,很难定义,而且通常交付不好-而#ct的好处更难确定。# whatiscomlutationalthinkinganyway
先不谈定义,拉菲·桑托斯问道我们的教育目标是CT和CS。他提出了三个选择:经济流动性(例如编程技能),重塑科技行业,拥有更好/不同/多样化的劳动力,或者受过更好教育的公民。这些是不同的结果,需要不同的方法。
阿曼给出了一个定义他在密歇根学校的项目,其中不包括算法因为数学老师很关心这个概念。本·夏皮罗发了一条推特我强烈推荐大家阅读.他深入到什么是CT的核心(“当我们已经有了其他的名字来指代相同的实践/技能时,是什么让CT值得拥有一个新的名字?”),特别是如何在没有编码或算法的情况下教授CT(“您能详细谈谈没有算法的调试意味着什么吗?”)
我在自己的推特上回答了我对CT的担忧。线程从这里开始,而“展开”(将几条线索组合成一篇文章)则是可以在这里.我在这里引用了一些推文:
最初,珍妮特把计算思维作为“如果你学习CT,你学到的东西可以应用到你的日常生活中。”我想很多人都不相信了。
现在,我们说“你可以通过使用不同的方式学习,比不使用计算更强大。”这就是@LorenaABarba很有力地说,我想我们大多数人都同意这一点。
但是为什么我们说“CT”而不是计算、编码、编程,甚至是计算机科学呢?真正的原因是人们害怕“编程”这个词,仍然不确定我们可以教每个人编程吗?
返回@shuchig和# computationalthinkingevenexist的交换。我们能在没有计算思想(代码)符号的情况下教用计算思考吗?派珀特不这么认为。徽标的发明是为了使计算思想易于理解。
在接下来的几天里,有很多很棒的推文被发布在了对话中。我喜欢Rob Underwood的评论,他说教CT而不教编程就像“教音乐来帮助孩子们提高数学水平”。难道我们不应该让孩子们接触到让计算机如此强大的东西吗?就是用这些超快的机器执行程序的能力。自从那次谈话之后,我想得最多的是内森·霍尔伯特的几条推特。在一个,他指出,“编程”现在是一个意味深长的术语,因为如果它似乎只是促进软件开发人员的职业生涯,那就会对孩子们造成伤害,而这根本不是我们的意思。在另一个,他谈到了教学的想法与代码,作为我们思维的外化,但不一定要求学生写代码。那会是什么样子呢?也许像布雷特·维克多的关于可学习编程的有趣工作.
对我来说,最重要的要点是阿曼·亚达夫(Aman Yadav)提出的。他指出一开始就说“编程”只会失去老师。当他说在这里,
当小学教师的工作依赖于数学和读写标准化考试的分数时,我不确定我们还能给他们的盘子里再添一件东西。我们项目中的老师看到了CT在帮助数学/科学学习方面的价值。对我来说,如果我们发现CT镜头有助于改善学生的这些结果,那就是一种胜利。
Code.org的首席执行官哈迪·帕托维支持了阿曼,这是21世纪初的研究表明“编码”和“编程”这两个词吓跑了孩子。如果我们把CT纳入现有的课程框架,我们会取得更大的进步,认为哈迪.
关于计算机教育,我一直在反复学习的一个教训是,我们才刚刚开始。今年是美国工程教育学会(ASEE)成立125周年。ACM CS教育SIG (SIGCSE)今年已经50岁了。我们都是新手。
阿曼和哈迪向我们讲述了当今教师和学校的现实。“编码”和“编程”的含义并不是Seymour Papert在1968年开始Logo时所想到的。我们不能轻易改变这些意义。虽然我仍然不确定CT是什么,但我确实认识到,教育设计师正在创造它,作为西摩和我们许多人想要的那种学校计算机的入口。CT可能是让我们达到“全民CS”的最佳阶段。我担心学校教育标准僵化,学校教育的定义僵化今天变得不符合21世纪公民的需要和应得的东西。但是我们可能还处在21世纪的早期,还不能让我们的学校开始真正的计算机教学。
嗨马克…# DoesComputationalThinkingEvenExist吗?当然了。当一个学生了解到一个(合理的)迷宫可以通过系统地将可探索的位置放在堆栈(队列)中,然后弹出(dequeing)位置来解决,这是一种新颖的思维形式,理解算法可以导致解决方案。同样,使用Prim或Kruskal的算法来创建MST,而不是使用蛮力。这些想法不需要与编码/编程或STEM联系在一起——它们可以独立存在,以演示“算法解决问题”(对我来说相当于“计算思维”)。
呆多久
嗨,呆多久,
让我们分别考虑你提出的问题。
解决计算问题(比如解迷宫)需要一种新颖的思维方式吗?也许吧,但其他人把类似的解决问题的实践称为算法思维或数学思维。我认为这很新颖,但我们还不知道如何定义它。
我们能否在没有编码/编程的情况下教授像Prim或Kruskal那样的算法或迷宫解决方法,以便学生可以在非计算甚至非stem的环境中使用它们?目前还没有人证明这一点。这是一个开放的经验问题。
——马克。
显示所有2评论