acm-header
登录

ACM通信

BLOG@CACM

实现全民计算机科学可能需要几十年的时间


Mark Guzdial教授

图片来源:密歇根大学

https://bit.ly/3HR5iYb2021年12月21日

我上个月在BLOG@CACM上发布的帖子是关于最近的CS教育大会的https://bit.ly/3eQHYNK).我对新的报告和数据特别感兴趣,比如2021年计算机科学教育状况报告(https://bit.ly/333nHS5).总体而言,在2021年,4.7%的美国高中生选择了计算机科学。各州的仪表盘很重要,因为美国各州之间的K-12教育差异很大。大多数州的仪表盘告诉我们目前的注册人数,但没有告诉我们累积效果。我非常感谢Jeff Forbes和Leigh Ann DeLyser在Twitter上帮助我思考这些问题。

这里有两个重要的问题:

  1. 在任何时候,目前有多少比例的美国高中生已经学习了计算机科学?如果我们想在学校里创造一种计算机科学的文化,这是很重要的。在学校里,教师很容易将计算机融入到整个课程中,因为有很多学生已经有了经验。
  2. 到毕业的时候,有多少比例的美国高中毕业生选择了计算机科学?这很重要,因为正如北达科他州公共教育主管克尔斯滕·贝斯勒所说(https://bit.ly/3EUkz8y)在CS教育大会上,“我们永远不会使用更少的技术。”随着我们在社会中越来越多地使用计算机,计算机教育对维持民主社会的重要性也越来越大。

就在最近,加州的CS组织举行了一个网络研讨会,其标题反映了我脑海中的问题:“我们到那一步了吗?”(https://bit.ly/3EX8HTf).简短的回答是“不”,更详细的视图是重要的,因为访问的差异很大。

所以,假设某所美国高中四年的计算机科学入学率是每年5%。如果那所高中只有一门计算机科学课程在统计中,那么这两个问题的答案就介于以下两种可能性之间:

  • 如果这5%的学生都是高年级学生(在高中四年级和最后一年),那么只有5%的高中生曾经学过计算机科学,只有5%的毕业生曾经学过计算机科学。
  • 如果5%的学生都是一年级的学生,那么四年之后,20%的高中生选修了计算机科学课程,但每年仍然只有5%的毕业生选修了计算机科学课程。

总体而言,入学人数增长缓慢。德克萨斯州提供了一个可以追溯到10年前的仪表盘https://tabsoft.co/3qLIXEd).在过去十年中,大多数人口统计群体的CS入学人数增长了2%-4%。

马里兰州的参与率要高得多(见他们的仪表盘https://bit.ly/3qVkGfg).他们目前的入学率为12%,26%的高中毕业生至少修过一门计算机科学课程。马里兰州能达到这些数字的部分原因是,他们的高中通常提供不止一门计算机课。

开设更多的课程有助于招生,但这并不是严格意义上的附加。仅仅提供两门课程并不会自动让你的毕业生比例翻倍。在许多州,大多数上第二门课的学生已经上了第一门课。例如,正在上大学先修课程CS A的学生可能已经上过大学先修课程CS原理。

如果我们每年的入学率达到25%,我们可能就会接触到100%的美国高中毕业生。假设我们每十年增加4%的CS入学率。如果我们现在的入学率是4.5%,可能需要至少40年才能实现全民CS。

还有一种方法可以大幅提高这两个百分比:要求毕业时修计算机科学课程。纽约市的学校、芝加哥的学校和阿肯色州的学校都将计算机科学课程列为高中的必修课。这是一个巨大的转变,但也凸显了美国的不平等。在德克萨斯州,只有2.3%的女高中生选修计算机科学课程,但100%的女高中生都在有要求的地方选修这门课程。

计算机科学课程很难成为高中毕业的必修课。这需要很多老师。米兰达·帕克的论文(https://bit.ly/3JLavT8)表明,即使你有老师,也有高中校长不把CS作为优先考虑,所以需要很多的说服。如果你强迫学生上他们讨厌的课程,你的目标是什么?我的研究小组最近读到一篇论文(https://bit.ly/3sYWpaK)的研究表明,大学前计算机学习经历的负面影响对女生的影响要大于对男生的影响。如果做错了,就长期影响而言,你可能会让情况变得更糟。

相反,让我们考虑两个更深层次的问题:为什么它很重要所有学生知道计算机吗?而且学习计算机科学课程能最好地达到这个目标吗?我在秋天的时候做了一些演讲,回答了这个问题,并在一个你可以访问的帖子中提出了这个论点https://bit.ly/3qOFTqX.以职业为理由去教每个人计算机是一个薄弱的理由——不是每个人都需要成为专业的程序员。我提出了学习编程的三个最初理由:支持发现,支持表达,支持正义。最后一个是最关键的论点所有学生学习计算机。正如图灵奖得主彼得·诺尔在1967年所说的那样(引用迈克尔·卡斯珀森在https://bit.ly/3JG8Eic):

一旦信息学在普通教育中得到完善,在许多人的认知中围绕计算机的神秘就会消失。这可能是促进对信息学理解的最重要的原因。这是人类凌驾于计算机之上的必要条件,也是确保计算机的使用不会成为少数专家的事情,而是成为一个普遍的民主问题的必要条件。因此,通过民主制度,它将属于我们所有人。”

我们不需要让每个人都来实现Naur所描述的目标。我们可以在整个课程中教授计算机,这是一个更好的学习场所应用不同上下文中的计算。有许多积极的经历不同的(除了计算机科学)课程可能会让我们更接近“全民计算机科学”的目标,而且可能比让所有学生上计算机科学课更便宜、更容易实现。(这是我们的驱动愿景茶匙语言;看到https://bit.ly/3sVPUVU)。然而,如果我们想要看到集成计算学习体验的影响,我们需要不同于注册CS课程的措施。

我们必须弄清楚如何衡量学生知道关于计算和他们如何认为而不仅仅是他们是否踏进了计算机科学的课堂。我们现在正在衡量后者,这以特定的方式推动了努力和政策。按照这个速度,我们在几十年内都无法在美国实现全民CS。让我们找到一些更好的方法来实现更可实现的目标。

回到顶部

作者

马克Guzdial他是工程学院电气工程和计算机科学教授,也是密歇根大学信息学院的信息教授。


©2022 acm 0001-0782/22/4

允许为个人或课堂使用部分或全部作品制作数字或硬拷贝,但不得为盈利或商业利益而复制或分发,且副本在首页上附有本通知和完整的引用。除ACM外,本作品的其他组件的版权必须受到尊重。允许有信用的文摘。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,都需要事先获得特定的许可和/或费用。请求发布的权限permissions@acm.org传真(212)869-0481。

数字图书馆是由计算机协会出版的。版权所有©2022 ACM, Inc.


评论


克里斯托弗Riesbeck

“我们不需要让每个人都参加计算机科学课程……我们可以在整个课程中教授计算机,这是学习在不同环境中应用计算机的更好地方。”马克,我完全同意,计算机不应该被孤立在一门课程中——但同样的道理至少也适用于数学、伦理学、美学和历史推理。到目前为止,只有基本的阅读和写作才能躲过这一陷阱。只要特定学科的课程和考试是课程的规范模式,一切都将被强制纳入其中。


马克Guzdial

嗨,克里斯,

摆脱课程规范模式的一个方法是将计算机重新定义为一种读写能力,而不是一门独立的学科。没有人会对在物理、生物或化学课上看到方程式感到惊讶。正如你所说,所有的课程都要求阅读和写作。我们必须将计算作为一种有用的、有时是必要的方式来支持计算机以外的学习目标。


显示所有2评论

Baidu
map