教学计算机编程,以桃李满天下与MATLAB和MOOC

由Mike Fitzpatrick和AKOSLédeczi,范德比尔特大学

几年前,我们写了一篇题为“用MATLAB和一本电子书向工程专业一年级学生教授计算机编程,它讲述了cs103的故事,这是我们在范德比尔特大学开设的编程入门课程。这个课程现在被重新命名为cs1103,规模已经翻了一番。随着越来越多的学生认识到编程是一项重要的工作技能,它越来越受欢迎。

基于我们在范德比尔特当然的成功,我们决定创建一个庞大的开放在线课程(MOOC)使材料免费提供给大家。我们命名我们的MOOCMATLAB编程入门。尽管我们预计MOOC的招生人数将超过每年300名范德比尔特大学学生的人数,但参与MOOC的人数却超出了我们最疯狂的预期。

在第一年提供的三个交易日,8万多名在校学生观看讲座超过200万次,并提交超过10万套的问题进行分级。的在校生,谁完成了实现在习题及格课程的数量大约是两倍谁在过去15年中完成了我们在范德比尔特课程的总数。据中央级,为MOOC列表和学生评论策展人,MATLAB编程入门在2015年的最佳在线课程排行榜上排名第二,在撰写本文时,该网站在6000门mooc课程中排名第五。

为什么教计算机编程与MATLAB?

MATLAB编程入门是一门介绍性的、大学水平的课程,教授学生如何应用计算机科学的原理、词汇和构造来用MATLAB解决科学和工程问题®

许多涉及介绍性编程的mooc都使用通用语言,比如c++、Java®和Python®。我们决定使用MATLAB,因为它是通用的,简单易学。此外,语言的设计使得它可以写几行(图1)一个功能强大的程序。虽然问题可能会比较复杂,解决这些问题的MATLAB程序比写在一个通用的语言,相当于程序要简单得多。最后但并非最不重要的,MATLAB是在广泛的领域,包括自然科学和金融,以及工程中使用,它是巨资行业。许多学生被吸引到我们的MOOC仅仅是因为它使用MATLAB。

图1所示。这是一个关于MATLAB绘图的视频课程,演示了如何用两行MATLAB代码创建一个螺旋的三维图形。

创建视频讲座

超过40个覆盖矩阵和运算符,函数绘制和调试,选择(条件语句)视频讲座,环路,数据类型和文件输入/输出的过程中提供的。根据不同的主题,讲座范围从几分钟长度将近一个小时。在这些演讲,我们鼓励学生咨询上,我们基于MOOC的电子书,我们强调学生通过实践来学习,而不是看编程最好的。尽管如此,我们花了相当多的时间制作的影片,因为我们想要的讲座是为配合和信息成为可能。

We relied heavily on our years of experience in teaching this material in the classroom to overcome the challenges that all educators face when creating instructional videos: namely, we don’t know our audience, we can’t observe their reactions as we teach, and we receive no immediate feedback during the lecture. In addition, we had to account for the diversity of our target audience, which included not only college students but also secondary school students and college graduates.

在视频,我们走过的历程材料干得很慢,并提出想法尽可能清晰(图2)。我们还包括幽默,希望能为生活增添了讲座。事实证明,这本身就是充满挑战:它需要勇气讲笑话成相机在无声的工作室,当你不知道观众是否会被笑。值得庆幸的是,反馈是在这一点上一致正。这些评论是典型的:“我喜欢他的幽默感。”“他很有趣,也和让你很配合。”“教官用幽默,这让我微笑,享受过程!”至少他们都在微笑!

图2.菲茨帕特里克教授在MATLAB数据类型提供一个视频讲座。

事实上,影片中也总被学生接受。一,谁总结的许多学生共同的主题,对此表示:“我很欣赏何洁,流畅,专业的视频观看,我非常感谢你的解释是非常透彻和清晰......每个视频有一个‘A-ha的时刻’为了我。作为公顷的时刻并不多见科学家之间,这是一个大不了我。”

开发作业和自动评分器

在一个特定的主题每个系列视频讲座其次批改的作业。有六个任务共,每个有八个问题,学生们通过编写MATLAB程序来解决。该任务变得更加具有挑战性,因为课程的进展。在最后一组,例如,学生被要求写一个函数,皈依罗马数字,以阿拉伯数字及其他,计算保龄球分数。

我们早就知道有成千上万的学生提交的问题数万套,这将是不可能级手动所有的任务实现。为了应对这一挑战,我们开发的MATLAB的自动平地机,可提供即时反馈,一旦学生准备测试完成的任务。作业可以直接在MATLAB或通过使用MATLAB在线网页浏览器完成。对于每个作业,学生写一个MATLAB函数来解决问题。

在MATLAB中开发函数之后,学生用自动评分器检查每个函数,自动评分器检查函数的输出,以获得一系列输入。除了测试学生解决方案的功能之外,评分员还确保学生在编写他们的解决方案时遵守某些限制。例如,在逻辑索引赋值上,我们不允许使用循环。平地机扫描提交代码来执行这些规则。

就像在视频讲座的学生的反馈,应对作业和分级系统已经一致正。正如一位学生所说,“在分配非常漂亮测试一个人的理解这一问题的。”另一个说:“分配[是]这门课程的精华部分。该任务是详细,准确的,并足以挑战自己留下深刻的印象。”

自2016年初起,Fitzpatrick博士和Ledeczi博士采用MATLAB Online作为MOOC的平台。

“我爱MATLAB在线,”菲茨帕特里克医生说。“这是最令人兴奋的除了因为我开始25年前使用MATLAB我见过。它为我提供了同样强大的功能,我来依靠我的研究工作,学生在我们的MOOC可以得到相同的功能几乎瞬间。所有你需要的是一个网页浏览器,登录,并在不到一分钟,你就可以用云MATLAB的最新版本计算“。

建立一个在线社区

MOOC成功的最后一个关键因素是,随着课程的发展,学生和志愿者聚集在一起,形成了一个在线社区。在MOOC的Coursera论坛上,我们举办了关于课程材料和问题集的生动讨论。三名社区教学助理(在Coursera上被称为导师)自顾自地全天候回答学生的问题,并自愿帮助测试和改进自动评分器。最忙碌的导师们每人在论坛上发表了1000多个帖子。两位MathWorks工程师还定期检查论坛,并回答有关MATLAB安装和MATLAB环境使用的问题。

我们每天检查的论坛,但常常发现,所有的学生对那一天的问题已经由一个同学,导师,或MathWorks公司的工程师回答。我们只是在响应能力,耐心,这个在线社区的慷慨感到惊讶。

下一步

目前,我们正在为连续第二年MOOC。我们更新了一些讲座和开发的一套全新的任务的。谁完成课程,去年几名学生告诉我们,他们正在采取的过程中,今年又因为他们想在新的习题集工作的挑战和乐趣。

有这么多年的学生告诉我们,他们是多么的幸福与此MOOC帮助他们实现自己的目标的方式,并指出,我们的MOOC是一场势均力敌的第二至#1 MOOC在2015年后,幸福的生活,履行,我们想对课程做最后一个修改:将其名称改为快乐与MATLAB履行程序!

致谢

我们要感谢我们的热忱和不懈课程导师,布兰登·阿姆斯特朗,凯特·布雷迪,李拉弗蒂,Aatish库马尔,真正Labrie在保罗·米尔克,和马特Tearle。我们感谢MathWorks公司提供的学生许可证和资金支持,并在范德比尔特研究所数字化学习(VIDL)视频制作和其他后勤方面的帮助。万博1manbetx

关于作者

迈克菲茨帕特里克是计算机科学的范德比尔特大学名誉教授。他退休了在2011年后的教学在大学水平35年,教授计算机科学29年,并与MATLAB教授计算机编程为11年。他拥有学士学位在物理学和M.S.从北卡罗来纳大学教堂山分校和博士学位的计算机科学来自佛罗里达州立大学的物理学。他用MATLAB在他的研究在计算机辅助外科手术中超过20年。

AKOSLédeczi是计算机工程教授和研究生的计算机科学范德比尔特大学,在那里他一直教计算机编程与MATLAB八年主任。他拥有M.S.从布达佩斯技术大学和博士学位电气工程在范德堡大学电气工程。他的研究兴趣包括模型集成计算和无线传感器网络。

发布时间2016 - 93056v00


查看文章的相关能力