所有教育工作者都应了解的 16 条 FOSS 主义

还没有读者喜欢这个。
A bubbled in scan sheet

Opensource.com

当 Heidi Ellis 在 今年的教授开源暑期体验活动(5 月 28 日至 30 日在费城德雷塞尔大学举行)上发言时,她希望她的同事们理解让学生参与开源项目的非凡教育益处。

还有什么比开源社区本身的提炼智慧更能帮助他们认识到这些益处呢。

Ellis 与德雷塞尔大学教授 Greg Hislop 共同协调了 POSSE,她告诉来自全国各地学院和大学的近 20 名教职员工,让他们计算机科学专业的学生融入开源社区可以促进一种传统的课堂体验无法提供的参与。但是,她说,如果学生和教授都没有准备好拥抱开源之道,他们都应该为一点文化冲击做好准备。

因此,Ellis 从自由和开源文化中提取了 16 条格言——她称之为“FOSS 主义”——来解释开源价值观如何改变计算机科学教育。

FOSS 主义 #1:一切都关于社区

Ellis 说,让学生开始使用开源意味着要求他们做的不仅仅是参与一个新项目。它涉及到要求他们加入一个社区。她说,“当你这样做时,你就加入了一种新的文化。”

因此,学生必须迅速适应一个拥有自己方法、偏好和内部笑话的群体的潜规则。当加入一个开源社区时,学生应该确定该社区首选的沟通渠道,并将这些渠道作为了解其文化的窗口。

Ellis 说,“社区驱动项目,而不是反过来。”

通过加入开源社区,学生可以获得专家的帮助,当他们开始为自己的贡献而苦苦挣扎时,专家可以帮助他们。通过这种方式,教职员工为他们的学生获得了宝贵的导师。

Ellis 说,“一旦你进入社区,你就是社区的一份子。”“这是好处之一。他们会关心你的学生。”

FOSS 主义 #2:富有成效地迷失方向

任何开源项目或社区的范围都超出了任何一个人完全理解它的能力。因此,学生可能会在陌生的领域感到迷失或漂泊不定。但是他们的导师应该鼓励他们富有成效地利用他们的困惑——调查社区,并通过挖掘其材料来了解项目。Ellis 向听众保证,一段时间的头晕目眩的迷失方向是完全自然的——甚至是 Beneficial 的。对于刚接触他们选择的开源项目的教授来说,情况也是如此。

Ellis 说,“这对于导师来说可能是一个非常陌生的概念。”“我们被教导我们应该是学科专家。”

FOSS 主义 #3:回馈

Ellis 解释说,开源软件项目依靠用户和开发者的贡献生存,因此学生必须学会立即开始回馈。他们应该更新文档、测试代码、确认错误、回答其他人的问题——尽他们所能贡献一份力量。他们很快就会意识到,他们不需要成为专家也能对他们的社区产生积极影响;他们只需要愿意去做这项工作。Ellis 说,即使是最小的贡献也是有价值的。

FOSS 主义 #4:机会主义盛行

由于很少有开源开发者全职从事他们的项目,相互竞争的需求总是限制了他们的贡献能力。因此,Ellis 解释说,开源开发可能相当机会主义:开发是在编码人员利用他们出现的资源时以突发的方式进行的。学生必须意识到,开源开发过程并不总是反映工业界的开发过程;工作可能会根据社区成员的可用性而断断续续地进行。

FOSS 主义 #5:如果不公开,就等于没发生

开源工作是公开进行的。编码人员使用邮件列表、IRC 频道和其他公共沟通渠道,以便社区中的每个人——以及任何想要加入社区的人——都可以了解他们在做什么。Ellis 说,学生必须习惯于公开工作并分享他们的资源。

她说,“如果人们看不到他们,他们对人们就没有好处。”

Ellis 补充说,透明度对教职员工来说也可能令人吃惊。

她说,“大多数学者都根深蒂固地认为,在任何东西完善之前都不要发表。”“在开源世界中,情况恰恰相反。”

FOSS 主义 #6:拥抱彻底的透明

由于开源社区参与分布式开发,他们拥抱彻底的透明,他们产生的所有材料——所有文档、代码和其他学生可以利用来加强学习的工件——默认都是开放的,随时可以在课堂(及其他地方)中使用。

Ellis 说,“所有这些都是一个丰富、丰富的学习途径。”

FOSS 主义 #7:先请求原谅,而不是请求许可

Ellis 解释说,几乎无一例外地,开源社区都使用某种形式的版本控制,因此学生应该意识到,他们的贡献几乎不可能完全破坏一个项目。他们不需要请求许可来修改某些东西;他们应该简单地开始工作,如果他们犯了错误,就请求社区的原谅。通常情况下,社区成员是理解和支持的,因为撤销错误几乎不需要任何努力。

FOSS 主义 #8:分支是免费的

仍然不愿直接使用社区代码库的学生应该记住,他们可以轻松地分支一个现有项目,并使用本地副本进行修改。这样做可能会让他们自由地进行实验。它甚至可能导致他们修复一个错误——Ellis 说,他们可以很容易地与项目分享这个结果。

FOSS 主义 #9:保留历史记录

版本控制只是开源社区保留历史记录的一种方式。但是几乎开源开发工具链中的每个组件都保留记录。因此,学生可以使用一个项目的记录来更快地融入社区。Ellis 补充说,当学期结束,他们准备交接他们所做的工作时,他们也可以使用这些相同的记录工具。

FOSS 主义 #10:从收尾工作开始

Ellis 说,学生应该始终从最小、最看似无关紧要的错误开始——那些低垂的果实,使他们能够在学期早期对项目做出富有成效的贡献。他们可能会更新文档或验证一个错误,这些重要的贡献不需要对项目有太多了解。Ellis 告诫说,要求他们的学生从项目定义贡献开始的教授可能会发现自己不堪重负。

她说,“不要承担全世界。”

FOSS 主义 #11:重要的不是你知道什么;而是你想学什么

Ellis 说,由于他们身处课堂——一个倾向于求知欲的环境——学生们已经处于为开源项目做出贡献的有利位置,因为这些社区重视那些想学习如何提供帮助的成员。Ellis 提醒她的同事们,每个开源社区的成员都曾经是新手;开源项目通常欢迎准备好并愿意学习必要技能的新成员,以便为项目做出贡献。

FOSS 主义 #12:尽早发布,经常发布

Ellis 说,开源应用程序受益于开发者和用户之间简短而紧密的反馈循环。项目经常迭代,学生应该习惯于持续的变化。但是“尽早发布,经常发布”的心态也确保了学生能从他们的错误中快速学习——通常比他们等待数周让一位导师或助教评估和评分他们的工作要快。

FOSS 主义 #13:推送到上游

学生应该始终——始终、始终——将他们的工作推送到他们从中受益的上游开发者和社区。这只是开源社区中适当的礼仪。但是通过这样做,学生们也意识到了一种成就感,因为社区认可了他们为项目提供的功能和改进。简而言之,学生们了解了互惠的重要性——回馈的重要性。

FOSS 主义 #14:给我看代码

Ellis 说,开源社区是非常务实的:程序员的水平只取决于他们展示的技能。正如 Linus Torvalds 所说:“空谈无益,给我看代码。” 参与开源项目的学生必须准备好立即开始编码,如果他们想被接受为各自社区的一份子。

FOSS 主义 #15:记住浅层错误

Ellis 提醒她的同事们 Eric Raymond 称之为 “Linus 定律” 的内容:“如果有足够的眼球,所有的错误都是浅层的。” 她说,学生必须学会接受他们所属社区的帮助;当他们需要帮助时,他们必须准备好寻求帮助,而不是在孤立无援中苦苦挣扎,变得越来越沮丧。当他们遇到麻烦时,他们应该立即说出来,以便社区可以介入并作为一个小组讨论问题。

FOSS 主义 #16:避免未沟通的工作

Ellis 说,学生必须学会在学期结束时优雅地移交他们的工作;他们应该知道,在他们确保他们的社区能够安全地照顾(理解、维护和构建在之上)他们所贡献的东西之前,他们的努力还没有完成。他们应该始终识别项目维护者并适当地沟通他们的意图——即使他们没有达到他们的目标。

Ellis 说,“沟通未完成的工作总比做未沟通的工作要好。”

标签
Bryan Behrenshausen
Bryan 曾管理 Opensource.com 的开源组织版块,该版块的特色故事是关于开放价值观和原则如何改变我们对组织文化和设计的看法。自 2011 年以来,他一直在 Opensource.com 工作。在网上找到他的账号 semioticrobotic。

4 条评论

一个很棒的列表。绝对是任何对 FOSS 感兴趣的人,而不仅仅是教育工作者,都应该了解的东西。

这是一个很棒的演示文稿。感谢您的转发!

我喜欢这个 Bryan!你让我思考这如何帮助改变教育范式。我也喜欢 FOSS 主义原则。

哇,谢谢你,Don!来自过去的惊喜!Heidi 太棒了,我真的很喜欢这次演讲。2014 年 6 月?!哎呀,时光飞逝......

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.