CCCF译文 | 从计算思维到计算行动* 原创: 迈克•蒂森鲍姆等 中国计算机学会 译文摘自:中国计算机学会通讯 第15卷 第5期 2019年5月 在这篇观点文章中,我们勾勒了计算行动的两个关键维度:计算身份和数字赋能,而且进一步提出通过专注计算行动以及计算思维,我们可以使计算机教育对年轻的学习者更具包容性、激励性和赋能作用。 关键词:计算行动 计算思维 设想同时教授和赋能的计算机教育。 计算行动(computational action),一个新的计算机教育框架,提出在学习计算机的同时,年轻人也应该有机会利用计算机来创造对他们的生活和社区有直接影响的事务。在这篇观点文章中,我们勾勒了计算行动的两个关键维度:计算身份(computational identity)和数字赋能(digital empowerment),而且进一步提出通过专注计算行动以及计算思维(computational thinking),我们可以使计算机教育对年轻的学习者更具包容性、激励性和赋能作用。从计算机学习者开始学习编程的那一刻开始,他们就有能力去开发对他们的生活有实质影响的计算机产品,而他们所需要的就是处于一个允许他们这么做的环境之中。 很多时候,K-12计算机教育理1一直强调孩子学习编程的“基础”。更高阶段的以发展学习者的计算思维为中心的计算机科学教育,主要聚焦于让学习者去理解计算的一些细节要素,如变量、循环、条件、并行、运算符和数据处理[10]。这种最初的关注点是计算的概念和过程,将开发现实应用程序留给“以后”再做的做法存在这样一种风险:让学习者觉得学习计算机对他们来说并不重要。这种做法回避了很多学习数学和物理的学生们都曾问过的一个问题:“什么时候我们才能在生活中运用到所学的知识?”[1]。 虽然已经有各种尝试将计算机教育置于现实世界的背景与问题中,但这些尝试通常开发的是通用系统(例如为超市设计的结账系统),无法与学习者特定的个人兴趣和生活联系起来。尽管这些系统在实际应用中对所有学习者都是有价值的,但是对于年轻女性和来自非主流群体的青年来说,并没有给他们提供开发具有现实意义的计算机解决方案的机会,这是一个严重的问题。对于传统上在计算领域代表名额不足的这些群体,人们发现,融入并归属于更广泛的计算社区的感觉与能够开发对其自身和社区都至关重要的计算解决方案密切相关[8]。通过与学生的现实生活联系起来,我们可以帮助他们以批判的眼光看待自己能够在影响社区方面充当怎样的角色,并且使得他们不仅仅止步于学习简单的编程,相反,我们可以问他们想要对什么内容编程以及为什么对它们编程[5]。 通过将计算机教育置于与学生紧密相关的现实世界中,我们能让更多的人参与到计算机领域中来,为青年和社会带来好处。这不仅有助于培养急需的程序员,也向社会输送了计算机文化和有解决问题能力的公民。 减少实施计算行动的障碍 在尝试开发有影响力的计算机解决方案时,年轻学习者面临许多挑战。其中的许多挑战可归因于计算机教育本身的背景——计算机教育经常发生在传统的计算机实验室中,这些实验室与学生的日常生活相去甚远。然而,随着移动计算和普适计算的日益普及,可能要重新思考和构建学生学习计算机的地点和方式。计算机教育现在可以从桌面屏幕上解放出来,并与学生的日常生活和社区联系起来。 在计算机领域,与学生生活联系起来的能力代表着一种根本性的转变,这种能力为年轻人开辟了新的途径,让他们可以将世界视为“可能性空间”。在这些空间中,他们可以提出问题并构建解决方案来处理个人确定的需求。但是,为了使年轻人能够构建这些解决方案,我们需要提供平台和学习环境,以减少他们快速构建和实施设计的障碍。举一个例子,我们开发了一款名为“App Inventor”的应用,这是一种积木式的编程语言,允许学习者无须处理复杂的语法,就能构建功能齐全的手机应用程序。 计算行动:一条构建有影响力的计算机教育的新途径 计算机在学生生活中所扮演角色的根本性转变也要求我们批判性地重新审视计算机科学教育的目标,特别是对于K-122学生来说。计算机教育的目标需要超越计算思维,上升到计算行动的视野高度。计算行动的视野高度建立在以下思想的基础上:在学习计算机的时候,年轻人应该有机会以对他们的生活和社区有直接影响的方式进行计算。 通过多个设计研究、研讨会和使用麻省理工学院App Inventor的全球移动应用程序开发倡议,我们构建了计算身份和数字赋能这两个关键维度,来理解和发展支持学生参与计算行动的教育经验。“计算身份”建立在先前的研究基础之上,这些研究表明了年轻人科学身份的发展对于未来STEM3进步的重要性[6]。对于我们而言,计算身份是一种自我认知,即认为自己能够设计和实施计算机产品去解决自己想要解决的问题。此外,学生应该将自己视为庞大的计算机开发者所构成的社区中的一员。“数字赋能”则建立在弗雷尔(Freire)的工作之上[2],弗雷尔将赋能(empowerment)定位为批判性地参与他们所关注的问题的能力,还建立在托马斯(Thomas)和奥尔特豪斯(Velthouse)的工作之上[9],他们发现了赋能与意义、能力、自我决断和影响力等概念之间的联系。因此,数字赋能需要向年轻的学习者灌输这样的信念:他们能够将自己的计算身份付诸行动,以实质性的和有意义的方式去解决与他们紧密关联的问题。 为了完善计算行动的教育举措,我们制定了一套标准概述了所需的关键要素。 支持计算身份的形成需要: • 学生必须感到自己有责任阐明和设计他们自己的解决方案,而不是努力达到预定的“正确”答案。 • 学生需要感觉到,对于更广泛的计算界和工程界的实践和产品而言,他们的工作是有实质意义的。 支持数字赋能的形成需要: • 大量的活动和开发应该建立在真实的并且与个人相关联的环境中。 • 学生需要感受到他们的工作有可能对他们自己的生活或社区产生影响。 • 学生应该感受到他们有能力通过他们当前的工作来寻求新的计算机会。 实践中的计算行动 我们已经亲眼目睹了计算行动这个方法对学习计算机科学产生的巨大影响。在孟买达拉维的贫民窟(亚洲最大的贫民窟之一,电影《贫民窟的百万富翁》的标志性地点),一群年轻女性(8~16岁)认识到女性的安全是她们社区中存在的一个关键问题。尽管之前没有编程经验,但她们还是行动起来,因为她们感受到编程可以给她们身边人的生活带来真正的变化。通过当地导师、一些在线视频以及麻省理工学院APP Inventor的指导,她们构建了名为“Women Fight Back”的应用程序,该应用程序专注于女性的安全,并具有短信息(SMS)警报、地图定位、遇险报警和联系人紧急呼叫等功能[4]。受到早期成功的鼓舞,她们构建了更多的应用程序,包括一个用于协调从公共水源取水的应用程序,以及一个针对无法上学的女孩们的教育类应用程序。这些年轻学习者从零编程经验开始,成长为一个持续努力利用计算机改善她们所处社区的群体,展示了计算行动具有革新性的巨大潜力。 在达拉维女孩和其他类似的年轻学习者成功的基础上,我们开始开发包含计算行动模型的正式课程。最近,我们与一所大型而多样化的美国高中的多位教师合作,使用App Inventor创建了一个为期10周的计算课程。在这个课程中,学生们开发了计算解决方案,以解决与他们及其社区相关且有意义的问题:清理当地河道和提高保护意识。课程结束时的访谈显示,学生对自己的计算身份和数字赋能的认知有积极改变:从根本不相信自己能够构建移动应用程序,到意识到他们不仅可以构建应用程序,而且他们的设计可以产生显著的现实影响。许多学生也对将来构建新的应用程序表示兴奋。 推进这种学习者自驱动且以行动为中心的计算机教育,需要我们重新审视如何为学习者提供支持。这也给教师带来了新的挑战。学生需要在设计过程中使用“脚手架”(scaffolding)来帮助他们理解如何将应用程序分解为可管理和可构建的部分。重要的是,教师需要在没有预定义解决方案的复杂教学环境中仍然能从容应对各种问题。这并不是要求教师更多地了解功能性的编程知识,而是要求他们在应用编程方面更加灵活。教师需要新的策略来帮助学生自己发现解决方案(而不是直接给他们答案),并且需要新的方法来评估学生的工作。认识到这些教育学的转变意味着我们必须接受新的教育方法,来测试和完善我们的计算行动理论。 学习者认识到应用计算机的机遇,然后设计和构建解决方案 让学生推动他们自己的学习或解决问题的过程并不是教育界的一个新想法。在过去的二十年中,基于问题的学习(示例参见Hmelo-Silver[3])越来越多地用于科学和工程教育。然而,将学生设计的产品应用于他们的社区一直是一个挑战。随着移动计算和普适计算的普及,我们开始意识到这里的潜力。 通过专注于计算行动而不是计算思维,我们让孩子参与有意义的项目,而不是预先制定的练习。佩珀特(Papert)认为,在开发对个人有意义的项目过程中,学生将能够形成想法,并通过应对自然产生的挑战来学习必要的编码元素[7]。这类似于在专业领域中编程和构建计算解决方案的过程。来自所有职业和业余爱好的人们都构思了希望构建的“项目”,这些项目需要用到计算机程序。这些人先制定计划再开始构建,但障碍不可避免地出现。这些计算机程序员、专业人员和业余爱好者、计算机科学家、工程师、科学家以及其他人在更广泛的程序员群体中找到自己问题的答案(通过直接询问同事或通过StackOverflow这样的网站)。如果这就是现实世界中计算的发生方式,为什么教育系统却经常让学生以抽象和不真实的方式来学习计算和解决计算问题呢? 随着计算机和计算机教育领域的快速发展,我们有机会重新考虑学生应该如何学习计算机。年轻的学习者从开始学习编程的时候起,就有能力开发对他们的生活产生实质性影响的计算机产品。而他们需要的,仅仅是一个允许他们发挥影响力的环境。计算行动从定义这个环境应该是什么样子开始。随着更多计算机专业教师上线,我们有独特的机会与他们合作,因为他们具备了与学生一起参与计算行动所需的技巧和技能。我们为这样的一个世界感到兴奋,年轻的学习者认为这个世界充满着可以以数字化的方式创造他们(和我们)想要居住的未来的机遇。 脚注 * 本文译自Communications of the ACM, “From Computational Thinking to Computational Action”, 2019,62 (3) : 34~36一文. 1 2016年10月,美国《K-12计算机科学框架》(K-12 Computer Science Framework)正式发布,描述了计算机科学概念和实践的基本集合,是美国新版国家计算机科学教育标准研制的基础。——译者注 2 “K–12”是指从幼儿园(Kindergarten,通常5-6岁)到十二年级(Grade 12,通常17-18岁)。——译者注 3 STEM是科学(Science)、技术(Technology)、工程(Engineering)、数学(Mathematics)四门学科英文首字母的缩写,其中科学的功能在于认识世界、解释自然界的客观规律;技术和工程的功能则是在尊重自然规律的基础上改造世界、实现对自然界的控制和利用、解决社会发展过程中遇到的难题;数学的功能是作为技术与工程学科的基础工具。——译者注 参考文献 [1]Flegg, J., Mallet, D., and Lupton, M. Students’ perceptions of the relevance of mathematics in engineering. Intl. Journal of Mathematical Education in Science and Technology 43, 6 (June 2012), 717–732. [2]Freire, P. Pedagogy of the Oppressed (20th anniversary ed.). Continuum, NY, 1993. [3]Hmelo-Silver, C.E. Problem-based learning: What and how do students learn? Educational Psychology Review 16, 3 (Mar. 2004), 235–266. [4]Joshi, S. Teenage girl coders from Mumbai slum are building apps to solve local problems. (Mar. 29, 2016); http://mashable.com/2016/03/29/mumbai-dharavi-girls-coding-apps/ [5]Lee, C.H. and Soep, E. None but ourselves can free our minds: Critical computational literacy as a pedagogy of resistance. Equity & Excellence in Education 49, 4 (Apr. 2016), 480–492. [6]Maltese, A.V. and Tai, R.H. Eyeballs in the fridge: Sources of early interest in science. International Journal of Science Education 32, 5 (May 2010), 669–685. [7]Papert, S. An exploration in the space of mathematics educations. International Journal of Computers for Mathematical Learning 1, 1 (Jan. 1996), 95–123. [8]Pinkard, N. et al. Digital youth divas: Exploring narrative-driven curriculum to spark middle school girls’ interest in computationalactivities. Journal of the Learning Sciences 26,3 (Mar.2017); doi.org/10.1080/10508406.2017.1307199 [9]Thomas, K.W. and Velthouse, B.A. Cognitive elements of empowerment: An “interpretive” model of intrinsic task motivation. Academy of Management Review 15, 4 (Apr. 1990), 666–681. [10]Wing, J.M. Computational thinking. Commun. ACM 49, 3 (Mar. 2006), 33–35. 作者介绍 迈克•蒂森鲍姆(Mike Tissenbaum) 伊利诺伊大学香槟分校教育学院助理教授。 miketissenbaum@gamil.com 乔许•谢尔登(Josh Sheldon) 麻省理工学院负责App Inventor的副主任。 jsheldon@mit.edu 哈尔•阿贝尔森(Hal Abelson) 麻省理工学院电气工程与计算机科学系计算机科学与工程教授。 hal@mit.edu 译者介绍 刘宇航 CCF专业会员,CCCF特邀译者。中国科学院计算技术研究所副研究员。主要研究方向为计算机体系结构、高性能计算、大数据、智能并发系统。 liuyuhang@ict.ac.cn

转载于:https://www.cnblogs.com/qbxt/p/10949096.html

CCCF译文 | 从计算思维到计算行动*相关推荐

  1. 国际计算机思维比赛,少儿编程领域中,你所不知道的国际计算思维大赛

    原标题:少儿编程领域中,你所不知道的国际计算思维大赛 孩子学习编程,除了培养编程思维和计算思维,也能为未来应对人工智能时代打下基础.今天给大家讲的的是Bebras国际计算思维大赛,请大家持续关注坚果学 ...

  2. 用计算机得到圣诞树,圣诞树、标签系统和计算思维

    陈凯 古老的圣诞树 早期的计算机系统的图像显示功能相当弱,为了显示一幅图画,就有可能占用掉计算机的大部分内存,于是人们想到了用ASCII字符来画画,这其实并不是一个新鲜的主意,打字机发明之后,很快有人 ...

  3. 小学教育如何利用计算机思维,浅谈如何在中小学编程教学中培养学生的计算思维...

    浅谈如何在中小学编程教学中培养学生的计算思维 伍成伟 四川省 泸县二中城西学校 四川 泸州 646100 摘要:思维是人类所具有的高级认识活动,思维是人对外界输入信息与脑内储存知识经验进行一系列复杂的 ...

  4. 001 计算思维-卡内基梅隆大学计算机系主任周以真(英汉对照版)

    英文版CACM Jeannette M. Wing (周以真) (翻译:徐韵文,王飞跃, 校对:王飞跃) Computational Thinking It represents a universa ...

  5. 计算思维-卡内基梅隆大学计算机系主任周以真

    计算思维 Jeannette M. Wing (周以真) (翻译:徐韵文,王飞跃, 校对:王飞跃) 它代表着一种普遍的认识和一类普适的技能,每一个人,不仅仅是计算机科学家,都应热心于它的学习和运用. ...

  6. 第二章:计算思维——知识点整理

    第二章:计算思维--知识点整理 第二章:计算思维 知识梳理 高频考点 2.1 计算思维的概念与应用 2.1.1 计算思维的概念 2.1.2 计算思维的特征 2.1.3 计算思维的内涵 2.1.4 计算 ...

  7. c语言程序设计常用思维,C语言程序设计中计算思维的思考①

    王鑫 李万军 摘   要:计算思维是运用计算机科学的基础概念去求解问题.设计系统和理解人类的行为.本文归纳了计算思维在C语言程序设计中的体现,可归纳为抽象计算思维.自动化计算思维和并行计算思维三种.针 ...

  8. 计算机思维生活中的应用,计算思维研究论文_计算思维的应用_论文:计算机思维在生活中的应用...

    研究方法是指分析论证课题时的思维方法,它属于认识论范畴.没有正确的研究方法,就不能深入认识事物的本质,揭示其客观规律.没有正确的研究方法,就不能有所发现.有所发明.有所前进.有所创新,自然也就不能获取 ...

  9. 计算机思维的结构问题,《计算思维的结构》读书笔记

    前段时间在网上淘了不少关于计算思维的书.在这个特殊的假期,刚好宅在家里慢慢"啃"这些书,慢慢消化. 这个月"啃"下的其中一本书是<计算思维的结构>, ...

最新文章

  1. 在CentOS下安装crontab服务
  2. JavaScript——易班优课YOOC课群在线测试自动答题解决方案(十二)脚本整合
  3. 3D Button Visual Editor
  4. 2016年华为校招上机考试试题答案
  5. Linux 输入输出重定向 2>/dev/null和>/dev/null 2>1和2>1>/dev/nul
  6. java kerberos认证 过期_定位Kerberos 配置常见问题
  7. 【重难点】【JVM 03】CMS、G1、ZGC
  8. ip转换器是否可以被检测出来_一氧化碳报警器是否可以检测煤气泄漏
  9. vue-lazyload vue图片懒加载插件的使用记录
  10. Pycharm中的Django项目连接mysql数据库(包含出现的错误)
  11. 不知道这些,你的世界杯就白看了!
  12. 【模拟信号】基于matlab调相信号产生+解调【含Matlab源码 987期】
  13. 保险数据管理学会IDMA简介
  14. PPAPI+VS2013开发(1):环境配置
  15. MAC下配置 adb 环境变量
  16. 工业企业能源管理系统
  17. VS Code 字体推荐
  18. 5M1E分析法—质量管理纵向无死角
  19. 智安网络详解:零信任网络访问 (ZTNA)原理
  20. C++复习:对C的拓展

热门文章

  1. qt 5.0中HeaderView的setResiziMode无法使用的问题
  2. 1203. 项目管理
  3. arp 命令详解(安装、arp欺骗防御)
  4. 利用nc测试服务器之间端口之间的连通性
  5. Python @property装饰器的用法,判断函数参数整形、字符串、取值范围
  6. crunch字典生成工具
  7. C/C++下载文件_上传文件
  8. 关于Linux C multiple definition of‘XXX’的问题
  9. 十六、定义数据、定义栈
  10. Red Hat Enterprise Linux (RHEL) 6.4 DVD ISO 迅雷下载地址