什么是开源?许可、历史及更多

尚无读者喜欢这个。
Beginners to Open Source, code background

Opensource.com

最近,我有幸参加了红帽公司的吉娜·利金斯在 2015 年学院计算科学联盟 (CCSC):中南部会议上关于开源教学的演讲。

开源是...

吉娜首先问听众,有多少人教开源?没有人举手!这意味着吉娜必须从开源的背景开始讲起——她说开源就像一块饼干(美味)。当你烤饼干时,你可以与你的朋友和家人分享饼干和食谱。如果你分享食谱的人对坚果过敏,而食谱中需要坚果,那么这个人可以修改食谱。人们也有可能拿走食谱并加以改进。当然,现在你可以去商店饼干而不是饼干,但你不会确切地知道这些商店购买的饼干的所有成分。而且,也很难复制它们。如果你尝试了,你将面临因分享专有饼干而被起诉的风险。

开源的另一个例子:你不会买一辆引擎盖被焊死的汽车,那么我们为什么要购买专有软件呢?如果你看不到发生了什么以及引擎盖下发生了什么,那么你就只能接受汽车现在的样子,这可能不是很好。虽然有些人对此感到满意,但计算机极客不应该如此。我们应该想进去修修补补。

许可

了解版权很重要。吉娜分享了一张漂亮的鲜花图画,该图画自动受到版权许可的保护,因此她将其更改为知识共享许可。开源自由和开源软件之间有什么区别?区别在于,自由许可始终要求你根据自由许可分享你所做的事情。因此,如果你是在开源许可下,并且你进行了修改,你可以更改许可。如果你是在自由许可下,你没有该选项——许可必须保持不变。

开源的历史

了解开源魔力的来源非常重要。在 50 年代,软件和硬件捆绑在一起。在 60 年代,这种情况发生了变化,因为司法部认为捆绑硬件和软件是垄断行为。1983 年,理查德·斯托曼启动了 GNU 项目,该项目是自由和开源运动的开始。然后,在 1989 年,发布了第一个 GPL(GNU 通用公共许可证)。

每个计算机科学毕业生都应该了解这段历史!尤其是理解开源许可,因为我们需要知道人们使用我们软件的权利。

有趣的统计数据

财富 500 强公司中有 90% 使用开源软件。

美国所有 50 个州的政府都使用开源软件。

如今 76% 的开发人员使用开源工具。

致学生

学生需要了解开源,以便他们在找工作时做好准备。通过学习开源,学生可以通过在虚拟团队中工作和协作来向他人学习编码。通过从事开源项目,学生学习如何学习,因为没有人会牵着你的手,你必须自己学习很多东西。这就是学生学习如何解决问题、提出聪明的问题和阅读文档的方式。通过教授开源,学生可以处理真实的代码,fork 该代码,并讨论为什么这是一个好/坏主意。

作者注:我个人不记得我在计算机科学课程中编写的任何程序;它们对我没有任何好处,也没有保存下来供我回顾。从事开源项目的学生会知道他们正在处理真实的代码,这些代码正在被真实的人们使用。

贡献项目

如果你正在寻找项目,请查看人道主义自由和开源 (HFOSS) 项目,因为这些项目吸引了更多样化的受众。它们也是让更多女性参与进来的好方法。从事项目是教授学生的一项重要技能,因为在现实世界中你永远不会单独工作。此外,你编写自己的代码的可能性非常小。通常,你将添加到已存在的项目中,并学习如何与其他开发人员沟通。

从事开源项目还将使你能够与行业贡献者建立联系;学生们会发现这在找工作时有很大帮助,并且这是他们证明自己的方式!

开源的狂野西部

我们如何区分开源和专有?我们已经讨论过许可,但还有其他需要了解的事情,例如开源原则和开源社区。

原则包括

  • 开放交流:沟通是透明的
  • 参与:当我们可以自由协作时,我们才能创造
  • 快速原型设计:可能会导致快速失败,但这会带来更好的解决方案
  • 精英管理:最佳想法获胜
  • 社区:团结起来,我们可以做得更多

这一切听起来都很棒,对吧?嗯,有一些问题。首先,如果你是一名教师,你习惯于了解你所教内容的一切。开源项目很可怕,因为你不会完全了解它们。这里有一个机会,通过将自己置于这个角色中,你可以教你的孩子不知道一切也没关系,并向他们展示如何提出正确的问题并学习如何学习。这就是我们成长的方式:即使我们的代码没有被接受,我们也会成长。学习到这一点将使学生能够学习任何系统。

接下来,为开源做贡献可能会让你成为陌生土地上的陌生人。很多时候没有经理或负责人,这可能有点像狂野西部。这不是你可以控制的环境。你将成为客人。这不会像走进教室然后说:这就是我们今天要做的。此外,有时开源社区中的某人可能会具有攻击性。随着自由和透明,随之而来的是意见,有时这些意见的表达方式并不礼貌。如果开源中有一个人力资源部门,那么有些事情就不会发生,但开源不是这样运作的。它就像互联网,一切都是开放的,任何人都可以说任何话。好消息是,作为一名教师,你可以在这些情况下帮助你的学生,并告诉他们什么是适当的礼仪,什么是不适当的礼仪。你可以从吉娜的 ApacheCon 主题演讲中了解更多关于开源项目礼仪的信息。

吉娜说:“令人惊叹的是,可怕的事物可以如此美妙。”

教师如何以开源作为合作伙伴向前迈进?查看 POSSE:一个教教育工作者他们需要知道什么才能在课堂上教授开源的会议。此外,查看 TeachingOpenSource.org 并注册邮件列表。最后,请务必探索 OpenHatch,以寻找构建课程的机会和工具。

修订自 这篇文章

标签
User profile image.
妮可·C·巴拉塔 (Engard) 是红帽公司的高级内容策略师。她获得了德雷塞尔大学的 MLIS 学位和朱尼亚塔学院的 BA 学位。妮可是 ChickTech 奥斯汀分部的志愿主管。妮可以其众多出版物而闻名,包括她的著作《图书馆混搭》、《更多图书馆混搭》和《图书馆实用开源软件》。

9 条评论

“许可”段落说:

“开源和自由和开源软件之间有什么区别?区别在于,自由许可始终要求你根据自由许可分享你所做的事情。因此,如果你是在开源许可下,并且你进行了修改,你可以更改许可。如果你是在自由许可下,你没有该选项——许可必须保持不变。”

“自由”和“开源”之间的这种区别是非标准的。开源和自由软件本质上是同义词,“自由软件”是一个更古老且更具政治色彩的术语。此处描述的区别似乎是指 copyleft 和许可型之间的区别,copyleft 和许可型是自由软件/开源许可证的两个主要变体。许可型许可证允许修改后的内容使用其他更严格的许可证,但 copyleft 许可证要求至少在某些情况下,并且在某种程度上过于简化,分发的修改后的内容必须使用相同的许可证。例如,GPL 是一个开源许可证,但是如果你分发 GPL 许可软件的衍生作品,则它们必须在 GPL 下获得许可。

理查德,你是对的,我指的是 copyleft 和许可型之间的区别。我也使用了术语“许可型”和“copyleft”,将来会坚持使用这些(更清晰的)术语,而不是用“自由许可证”来混淆视听。 :-)

回复 ,作者 fontana

是的,“许可”部分完全错了。

相反,*真正*的自由许可证*不*要求衍生作品以相同的许可证共享,例如 BSD 风格的许可证。这些许可证与 GPL 和其他 copyleft 许可证一样,都获得了 OSI 批准。另一个例子是 CC-BY:它在大多数版权法下几乎与任何许可证一样自由,并且它不对衍生作品强制执行许可证。

当你谈论自由时,你必须牢记用户自由的目标。在这种情况下,*真正*的自由许可证*确实*要求衍生作品以相同的许可证共享,否则代码可以被设为专有,用户的自由将被剥夺。
人们必须明白,所谓的“许可型许可证”会损害用户的自由和社会。
就像说一个每个人都可以自由杀害任何人的社会是一个*真正的自由*社会一样,但我认为没有人会喜欢住在那里或认为这是一个自由的社会 :)

回复 ,作者 多米尼克·乔治(未验证)

感谢您的澄清。请记住,我当时正在现场博客报道该活动,可能遗漏了一些内容,但在将任何这些信息付诸实践之前,我会做更多的研究。

回复 ,作者 多米尼克·乔治(未验证)

有趣,我也觉得许可过于简化/不正确。开源许可证(OSI 批准)是一个超集,其中包括所有(我认为)“自由”许可证。这里的自由通常指的是 copyleft,以及任何衍生作品都必须以相同的许可证共享的要求。许可型开源许可证通常没有此类要求,通常在法律上更简单,因为它们不需要关注“衍生作品”是什么,不会遇到兼容性问题,并且当你的主要目标是共享、传播、重用时,它们可能更可取。它们几乎总是需要署名,最简单的例子是 CC-BY 与 CC-BY-SA。

自由和开源之间的争论可能会非常激烈,就我个人而言,我的开源工作最初是作为自由的倡导者开始的,但发现许可型许可证更简单、更务实(恕我直言)。项目不仅仅是许可,但这在你开始一个新项目时是一个关键选择。有趣的是,学术开放获取出版似乎已在很大程度上确定了 CC-BY(至少在 STEM 领域),Figshare 对文章使用 CC-BY,对数据使用 CC0。随着数据共享变得更容易,许多领域正在建立最佳实践。关于许可的最重要信息之一是使用一个许可证,其次是使用现有的许可证,而不是创建你自己的许可证(或添加任意修改)。

这是第一个给出“法庭”解释的说法...我只是想冒险猜测一下,你指的是美国或加利福尼亚州的法庭,这仅仅是出于滑稽的闹剧...“60 年代的信誉,因为对捆绑表示虚假的认可,紧随其后的是 RMS,就好像 RAND 公司的 mil-std 诚实在 50 年代早期(与任何没有在国家/参议院/等等委员会工作的营销部门形成鲜明对比)或早期的 RMS 软件自由都没有花时间反击那些带着装满 XML 式许可证的活页夹的人。这使得空军基地一直奇怪地干净到 03 年(当时密钥卡(装满了 SGML)和反腐败进行了一场大战,最终邀请了美洲国家组织。)

那么,为什么要(有人可能会问吉娜)我们想要教授许可证而不是特定项目(机制、SPA 和 FOSS 选项等等)?我不明白课程的原子性!
妮可·恩加德的 http://www.web2learning.net/2015/04/18/ccsc-sc-opensource/ 文章中删除的链接
RedHat.com/posse/ 教授开源暑期体验;在离你所在大陆不远的地方占用七月下旬的一个周末。
teachingopensource.org 获取其他资产,以及你的学生的语言!
openhatch.org 非营利性 FOSS 媒人和入门平台。
我希望这能使内容更完整一些?

开源是大多数用户或计算机最糟糕的敌人,许多人因此陷入困境,因为开源概念也被伪装成专业副学士学位的罪犯所利用,就像侦探一样,这些人就是利用开源的力量作恶的人,同样的敌人或只是做肮脏的工作来杀人或造成任何损害代码
我作为开源平原 1 号电话的总裁来到这里,删除 ubuntu 或任何其他操作系统黑暗家族在 linux 中吞噬无辜的人,例如自闭症等能力,并且仍然有问题让我 qun 家族不尊重现在 redhat ubuntu touch firefox 并成为对法律的最大威胁,因为像稀有系统 linux 带来恶魔木马恶意市场,他们用它们来骚扰其他用户或造成情感伤害或杀戮是可怕的含义,这不是对这种恶意人的技术概念开放的

人们喜欢你这里的观点。像 <a href="http://www.pureassignments.com/someone-do-my-homework-for-money.php">Pureassignments</a> 这样的组织很有吸引力。当我在一个容器中努力同时完成三项作业时,它的论文作者帮助了我。我提名他脱颖而出,但这是最好的任务,他出色地适应了它。

知识共享许可本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.