来自 开源教学 社区的一些人在 2010 年教育前沿会议上举办了一个 小组讨论,该会议由对改进工程教育感兴趣的学院和大学教授参加。小组讨论的主要论点是,参与 FOSS 社区是为学生提供更好教育体验的一种方式。
马修·伯克,乔治·华盛顿大学
首先是马修·伯克,他的主题是“跨课程的开源”。当您在一个学期内为学生开设“关于 FOSS”的课程时,您如何让他们理解,课程结束后他们并没有“完成 FOSS”,而应该在他们的学术和职业生涯的剩余时间里使用这些技能、工具和方法?一种方法是为后续行动建立课外活动,例如实习或校内俱乐部活动。另一种方法是将少量 FOSS 融入到其余课程中。即使课程不专门关注 FOSS,它也可以使用 FOSS 工具,深入研究 FOSS 历史,并使用 FOSS 代码示例来阐明概念。
“通过查看和使用大量软件,您可以更好地编写大量软件,”伯克说,他也有行业咨询的背景。“[我们应该] 研究开源项目中的开发技术……并将这些融入到我们的课程中。” 伯克本人让他的学生使用 git 版本控制系统提交他们的家庭作业,他说他最大的挑战是“开源项目不像教科书”。您不能只是告诉您的班级“完成作业 2.1”——这些社区中的问题不是学生可能习惯的结构良好、完全脚手架式、指导式的学习体验。
海蒂·埃利斯,西新英格兰学院
埃利斯教授一个由 11 名高年级本科生组成的班级,他们正在开发 GNOME Caribou,这是一款为有特殊辅助功能需求的人设计的虚拟键盘。“从事开源工作的学生非常有动力,”她解释说,因为他们周围都是充满内在动力的人的社区。她自己参与 FOSS 的开始是一位前学生出国回来后谈论一个名为 Sahana 的项目,他们参与了该项目。埃利斯鼓励这位学生继续下去,并提出指导一项独立研究,以便其他本科生也能参与进来。该小组在夏季末向 Sahana 社区演示了一个志愿者管理模型。快进几个学期,埃利斯现在让她的学生从事一系列 人道主义 FOSS 项目,更有经验的学生返回来指导下一批本科生贡献者。
她指出的一件事是评分问题。由于 FOSS 世界是高度即兴的,因此很难具体说明在学期末需要完成哪些产品才能获得 A——学生可以做得非常出色,但可能没有“成品”,因为(例如)维护者正在休假,并且没有及时接受补丁。因此,埃利斯根据过程而不是产品对学生进行评分,因为社区参与大型分布式项目正是她试图教给她的软件工程师班级的内容。
克利夫·库斯莫尔,穆伦堡学院
“FOSS 项目和社区差异很大,”库斯莫尔在展示一张幻灯片时说道,幻灯片上展示了按贡献者数量和项目去中心化程度排列的各种 FOSS 项目。库斯莫尔试图以加速的方式引导他的学生完成成为开源贡献者的过程,采用“使用/研究/添加/构建/利用”框架。
首先,他让他们 使用 该软件——只需下载它,试用一下,从最终用户的角度看看它是什么样的。接下来,他们打开引擎盖,研究 代码的外观和工作原理。一旦他们熟悉了情况,他们就会 添加 对代码进行小的增强,以习惯贡献的工作流程。当感觉舒适时,他们开始 构建 并拥有他们自己的代码库组件,并开始部署他们正在开发的软件,这教会了他们如何 利用 他们的软件工作来解决最终用户的实际问题。
格雷格·希斯洛普,德雷塞尔大学
“对于一位讲师来说,在 FOSS 中工作可能是有益的,”希斯洛普说。这立刻让我想起了社区大师格雷格·德科尼格斯伯格 几个月前在博客中写道:“[FOSS 参与] 必须始终是有益的。” 希斯洛普讲述了他自己参与开源教学社区如何引导他参与 SoftHum (人道主义目的软件) 和 FOSS 学习中心 项目。“停止考虑代码,开始考虑社区,”他建议道。
希斯洛普强调,开始教授开源并非易事,但回报可能是巨大的。他描述了处理人们加入和离开项目的不确定性,这是我以前在开源教学社区的教授那里听到的。教授开源社区工作就是给予学生探索的自由……并放弃对课堂的控制。放弃这种控制是有风险的。他们会成功吗?他们会学到您要求教授的内容吗?以及风险程度以及如何平衡风险与 FOSS 社区参与的潜力,从而为学生提供更好的学习体验,这是每位教授开源的教育工作者都在努力寻找自己的平衡点的事情。
梅尔·蔡,红帽
学术社区和 FOSS 社区——以及各种社区——都是人们聚集在一起解决共同问题的地方,蔡解释道,她一边走动一边分发潦草的笔记。教授们已经知道如何在学术规则内工作;弥合学术界和 FOSS 世界之间鸿沟的诀窍是弄清楚它们内部的平行结构——你如何提问?人们在哪里聚集交谈?在每个世界中,什么被认为是“有效的贡献”?
“教授可以像反之亦然一样帮助开源社区,”蔡解释说。“我们不擅长脚手架和招募新的贡献者……你们[教授]知道如何让大量不熟悉某个领域的人员快速上手。请教我们如何做到这一点!”
此时,我插话并向在场的教授们解释了为什么 FOSS 社区成员会受到激励来帮助他们。当我们看到像阿勒格尼学院教授马特·贾杜德的 提议让他的班级进行界面设计 时,我们认为“哦,新的贡献者!”但也增加了保证,这些贡献者将:
- 至少在一个学期内出现并负责,当您的项目有六个月的发布周期时,这是一个很长的时间。
- 有一位教授帮助他们浏览了解项目的过程,这样我们就不必连续 20 次回答关于 wiki 的相同问题。
为那些考虑让大学生参与开源项目的人提供一些有用的资源
1 条评论