全球各个创新中心都急需大量具有编程能力的技术人员,美国总统奥巴马也在极力促成各地学生学习编程,但是教师资源短缺和学生水平参差不齐,都是挡在美国教育新战略前面的巨大障碍。
艾莉和劳伦在加利福尼亚州洛思阿图斯市罗耀拉小学读6年级,她们在第5期课程开始前2分钟,就蹦跳着跑进了希娜·维迪雅南森的教室。她们一直在和班上的另外两位小伙伴威廉、布莱克比赛——看看谁最早进入编程教室。这两名女生坐在一排崭新的台式苹果电脑前,立马做起了维迪雅南森布置的作业:找出某一电脑程序中的错误,然后修正错误。这是一种十分重要又很费力的工作,专业工程师的大部分时间都在做这件事。
普及编程教学的拥护者自然希望这种现象能够遍布全国。在这些拥护者中,除了有渴望雇到新一代工程师和程序员的商业领袖,还有希望美国在全球经济中保持竞争力的政府官员。今年年初,微软创始人之一比尔·盖茨就发推特说,“在21世纪,每一名学生都应该有机会学习必备技能——编程。”很多人都和盖茨一样,坚信编程是一项新的认知能力,与阅读、算术一样重要。
奥巴马政府的官员为美国计算机科学教育的未来勾勒了一幅宏伟的蓝图:一是美国学生与别国学生齐头并进——他们指出,早在2014年英国就要求每一名学生都学习编程了;二是在所有学生平等接受编程教育的情况下,有助于减少富有的白人学生与少数族裔和条件困难的学生在成绩上的差距。然而,要想达成目标并不是一件容易的事。在全美学生中普及编程教育还面临着严峻的后勤挑战,上到缺少合格教师,下到缺乏课程资料。
维迪雅南森拥有计算机科学硕士学位,已有7年的教学经验,在“每一名学生都应该学习写代码”的设想提出时,她就已经表示支持了。她说:“我所说的‘每一名’指的是所有女孩、男孩、特殊教育学生以及那些自认为学不好理科的学生。”不过,与很多人不同,维迪雅南森用现实主义调和了她的热情。在一次班级间的谈话中,她指出,实现这个诱人的目标存在很多障碍,“首先,我们没有足够的计算机科学教师。”
美国不仅缺乏计算机科学教师,也没有经过一致同意的计算机科学课程。CSTA已经为幼儿园到高三的学生设置了一套标准,但是内容非常宽泛,这意味着,像维迪雅南森一样的教师都是自主决定授课内容,以及如何教导学生的。现在的数学和阅读测试难度都很大,导致计算机科学经常被忽视。维迪雅南森说:“对那些非必修的课程而言,课程表中已经没有更多的位置来安排它们了,而且学校的经费也不够。”
维迪雅南森的学生开始学编程时,已经有了无数的优势。他们走进课堂时就已经知道了计算机的相关知识,了解它们如何运作;有些人已经在家或者课外拓展活动中着手学习编码了。他们就读的公立学校开设的编码课程也受到了基金会的支持。基金会从学区的学生家庭筹集资金,用于提高教学。学区的各所学校位于硅谷的中心地带,可以独立置办全套台式机和平板电脑,大多数学生家长在附近的谷歌、苹果、Facebook总部上班。
简·马戈利斯熟悉这种假设与推论:学习写代码是贫困学生和非白人学生不敢想的事。马戈利斯是加利福尼亚大学洛杉矶分校教育与信息研究生院的高级研究员,负责集中研究洛杉矶3所不同公立高中的计算机科学教学。2008年,她和合作者在自己研究的基础上,写成了《浅滩搁置:教育、种族与计算》一书,书中解释了她和合作者们提出的“虚拟种族隔离”,这令人感到非常不安。
马戈利斯和她的团队希望为处境艰难的学生服务,他们发现经济和后勤问题经常让这些学生无法利用课外机会学习。南希·塞也决定参与其中。2013年,塞参加ECS项目的培训后,成为了ECS的“教师主管”,帮助其他老师学习如何让学生深入参与计算机科学课程。塞在洛杉矶的奥古斯都·F·霍金斯高中任教,学生都是非裔美国人或者拉丁美洲人,75%的学生都是“经济困难生”。
的确,推广编程教育常用的一个理由是,缺乏编程经验的年轻人很难踏入一些高收入的行业。但是许多批评家认为,狭隘地将精力投入到学习某项专业技能也不是长久之计。斯坦福大学教育学名誉教授拉里·库班提到了上世纪七八十年代,美国用早期计算机标记语言做的试验。这项试验由麻省理工学院教授西摩·佩珀特领导,他们发现,教导学生学习标记语言的努力付诸东流。
如果编程教学不是最终的答案——或者说不全是——那什么才是答案?珍妮特·M·温认为答案是:计算思维。温是卡内基梅隆大学计算机科学咨询教授,也是微软研究院的全球副总裁。2006年,她在一本杂志上发表的一篇文章迅速成为经典之作。她大胆宣称:“计算思维是每个人的基本技能,不单单属于计算机科学家。这种思维模式是先理解计算机科学基本概念,然后将它们应用在解决问题、设计系统和理解人类行为等方面。”
计算思维教学的拥护者认为,这种教学方式具有很多单纯的代码教学所不具备的优点:内容丰富、知识有深度;可以给学生一套灵活的思维工具,可以用在很多场景中;不论是在学校,还是走上了工作岗位,教给学生的知识和技能都长期有用。
美国普及计算机科学教育的行动仍在持续发酵。白宫科技政策办公室负责学习与创新板块的副理事库马尔·加格也在推行这项行动。他解释了为什么这类项目可能会取得成功:“奥巴马总统就职时,只有11个州同意将计算机科学课程纳入毕业条件,”加格说,“之后,情况发生了翻天覆地的变化,另外28个州和华盛顿特区都同意将计算机科学课程归入理科生毕业要求。”