ACM头
登入

ACM的通信

博客@cacm

我们为时已晚,在CS1中的“第一”


Mark Guzdial

佐治亚理工学院教授马克·古兹迪亚尔(Mark Guzdial)

我们在计算机科学教育中长期以来一直在争论如何开始第一门课程。“如果他们首先看到X,他们将从x上理解所有内容”,我们可以在其中用对象,功能或递归替换x。我们对如果他们首先看不到正确的东西会发生什么,我们会担心会发生什么。你可能还记得,“几乎不可能向先前接触基本的学生传授良好的节目:作为潜在的程序员,他们在精神上被肢解了不超越再生的希望。”

我不知道这些关于“学生首先需要知道的东西”的信念是否曾经是真实的,但是我很有信心今天没有一个是真实的。没有第一。没有对象优先,函数优先,硬件 - 先前或非基础优先。不,我并不是建议高中的计算机科学已经存在 - 平均而言,教师和课程太少了。相反,在一个学生使用Facebook,Wifi和电子邮件生活的世界中,他们肯定有关于计算方式的理论。没有办法得到他们他们构成了理论。当他们决定研究计算时,他们已经拥有它们。

Leigh Ann Sudol-Delyser有一张不错的论文去年科利打电话会议,她要求学生谈论生活中的计算,然后她试图弄清楚他们已经在考虑哪些数据结构。例如,学生已经意识到Facebook Newsfeed在顶部有最新的信息,而最古老的信息消失在底部 - 听起来这些学生已经意识到了队列,即使他们还不知道这个词。

我想到了这个看Carsten Schulte的Iticse 2010论文在研究学生对物体领先的难度和对象词组类别的困难的看法。这是他早期的ICER论文的后续行动对象优先和对象词组类之间没有学习差异。虽然我听到有关舒尔特分析方法的抱怨,但我发现他的实验设置就像可能的那样谨慎。这只要他的两个课程之间的区别是主题的顺序。对象优先与对象词组无关紧要,但是任何其他人都不重要。他的结果确实不足为奇。我们已经知道课程中的主题序列很少在学习上有很大的影响。学生真的很少了解知识,并且随着新信息的出现,填补空白。

这是一个重要的开放研究问题:学生如何理解周围的计算?他们有什么理论?他们可能没有任何 - 直到发生错误。他们如何应对该错误表明他们拥有哪种计算模型。例如,观看学生进行Google或Bing搜索,然后对其进行修改以获得更好的结果。她是如何修改的?她添加了什么以获得更好的结果,为什么她认为这会起作用?

我们了解新手如何发展计算的天真理论。约翰·潘恩的研究向我们展示,新手倾向于开发由事件驱动的软件的声明性解释,并且似乎根本不会发展对象的概念。这“常识计算”组已经向我们表明,新手可以为各种问题创建算法,尽管这并没有真正告诉我们他们如何认为软件和软件开发在周围的世界上起作用。

我们现在与物理学(或生物学,化学或其他科学)教育者处于相同的位置。学生有关于如何通过口语命令,触摸屏和Google/bing搜索工作驱动的Wii控制器,语音邮件菜单系统的理论。如果这些新手理论“肢解”了他们的思想,那么它已经完成了,它发生在所有人身上,我们最好只是继续处理它。在他们学习其他任何东西之前,没有机会将理论放在他们的脑海中。我们必须从学生的位置开始,并帮助他们发展更好的理论,这些理论更加一致,更正确。没有第一的,但我们可以影响下一个


找不到条目

登入全面访问
“ 忘记密码? »创建一个ACM Web帐户
Baidu
map