分类 观点 下的文章

今天看到一篇文章《开源项目在闲鱼、b 站上被倒卖?这是什么骚操作?》,我突然想起了之前两个类似的案例,发现群众的开源知识普及依然不足,借这个机会再聊聊开源,从开源著作权人的角度做一次讨论。

案例 1:倒卖开源代码

本案例中,作者十三发现自己开源的代码被贩卖,一脸郁闷。先不讨论这些倒卖者的行为,笔者从作者提供的代码托管官网上看到其开源许可证是 MIT。

MIT 作为一个宽松型开源许可证,授予使用者几乎无限制的权限。也就是说倒卖者的行为固然让人讨厌,但其确实是可以这么做的。当然,作者十三除了困惑于开源的东西为何还有人拿去卖钱以及竟然还有人买之外,整体上是淡定、大度的。而倒卖者利用的正是大众的这种专业知识的缺失和信息的不对称性,严格意义上这是存在经济正当性的。

案例 2:王垠闭源

这个案例是 2017 年的旧闻,但很具代表性。BSD 许可证开源的软件被商业公司商业使用,还聘请了原开发者,最后闹的鸡飞狗跳。

注:原博文《为什么我的代码进入闭源状态》地址已经 404 无法访问,大家可以搜索相关转载。

王垠此人我不甚了解,据说曾经国内人气非常高,知乎、v2ex、csdn 博客上到处都有对他的评价和争论。但至少从这篇帖子可以看出,其对开源的理解很浅、也很狭隘(在 2017 年时,不代表现在)。其对开源抱有不该有的幻想,期待过高。

案例3:swoole 修改开源协议

这个案例也是 2017 年的,以 Apache 许可证开源的软件 swoole(撰文时经核实 swoole 依然是 Apache 许可证),与其复刻分支版本之间纷争。

这个案例更像各种 Android 发布版与 Google Android OS 之间的关系,以宽松型许可协议开源的软件被各种修改版骚扰、蹭热度的现象很普遍。

开源知识普及之路漫长

以上三个案例都可以称之为开发者的控诉,暂不评论其控诉是否合理。仅以这些事件本身以及在网上引起的纷争,都说明距离开源在国内普及,还有很长的路要走。但值得欣慰的是,从 2017 年到 2020 年我们看到了这种进步,案例 1 中的作者对开源的理解上虽有偏颇,但并没有出现知识或法律方面的硬伤。

从开源软件概念引入中国,到近几年开源运动如火如荼的开展,已有几个年头。但据笔者与企业及业内人士的接触发现,公众对开源的认知和理解程度依旧参差不齐。究其原因有以下几点:

  1. 大部分关注开源的人,更多的是关注技术,不会关注其背后的许可证问题;
  2. 开源许可证更偏向法律,真正做技术的不关注、也不懂;
  3. 开源许可证法律条文晦涩难懂,不容易理解;
  4. 懂技术、会看代码的专利、著作权、商标等领域的律师甚少,没有技术背景的律师纵使法律水平再高,在理解涉及开源软件相关问题时也力不从心;
  5. 开源领域国内诉讼不多,没有充分引起大部分企业、学界等人员的重视;
  6. 也因为诉讼少,经济驱动力有限,很难吸引律师深入研究这一领域。重赏之下必有勇夫,若有足够的利益驱动,修个计算机学位又何妨,或者报个代码速成班也不是不可能吧。

笔者有缘在多年前接触开源治理、合规问题,时不时看到网上爆出浅层次开源“事故”,说明大众的开源知识有限。今天蹭个热乎劲,再探讨一下开源基础知识(开源科普的知识网上并不少,没人关注归根结底还是这个领域内生动力不足所致)。既然内生动力不足,就靠外部热点的外部动力吧。

开源“事故”,你是否理解开源?

开源是什么?

开源就是奉献,无私或有私的奉献。此处不接受反驳。

开源运动起源于自由软件运动,自由软件运动的发起人 理查德·马修·斯托曼 Richard Matthew Stallman 是自由软件运动精神领袖。自由软件运动所要反对的就是后来以比尔盖茨(曾经)为代表的软件私有化运动。所以说,自由软件是旗帜鲜明的追求奉献、共享和软件自由的。

开源运动的兴起是自由软件运动向商业化的妥协(可以这么说,毕竟经济基础决定上层建筑),所以说开源软件运动虽然有别于曾经的自由软件运动,奉献和协作依然深深的烙在其血液里。如果你无法理解这一点,就再看 10 遍开源软件的定义(直到看懂为止)。

开源运动淡化了自由软件运动乌托邦式的理想主义,穿上了实用主义的外衣,毕竟空洞的理想是填不饱肚子的。

开源“事故”,背后的起因

网上时不时爆出的开源“事故”大都归于两类:

类型一:批判拿来主义者坐收渔利、不劳而获、贩卖别人劳动成果……。这一类主角,多是软件开发者自己,站在自己的立场上看待开源软件的使用者(合法使用者、不合法使用者)。

该类“事故”的原因有:

  1. 软件的开发者没有充分理解开源的要义;
  2. 对开源许可证不理解,开源自己软件时没能正确选择许可证,导致自己有被白piao的感觉;
  3. 想借助大众或社区的力量优化自己的软件,获得免费劳动力;
  4. 想借助开源扩大自己影响力(自我营销),却没考虑为此要付出的代价;
  5. 看到其他人利用自己的开源软件获利,心理上有些许不平衡。

类型二:批判开源软件收费、许可证不人性,批判严格型许可证的传染性像病毒、吸血鬼、耍流氓,对别人行使著作权或协议约定的行为愤愤不平。这一类人,基本是拿来主义者,同样站在自己的立场上看待开源软件的开发者(仁慈的开发者、邪恶的开发者)。

该类“事故”的原因有:就是想白 piao 而已,因为你完全有选择用与不用的权力。

这两类“事故”的产生都源于没能深入理解开源运动的精髓和要义,纯粹的从利己主义出发思考问题,没有做到换位思考。忽略了开源的初衷:奉献和共享。

现实中,经常发生这样的事情:对同一个人,作为开源的使用者时他们常常讨厌 GPL 许可证,因为限制太多;作为开源软件开发者时又喜欢 GPL 的安全感,讨厌 MIT、BSD 等许可证让自己被白 piao 了却投诉无门。

开发者和使用者的权利义务

开源软件首先是开发者的劳动成果,是拥有著作权的。开源一定意义上就是奉献,每一个开源软件使用者都是开源的受益者。面对这种奉献,你需要做的就是尊重。但开源的使用者并不必然要求是高尚的、无私的,这种尊重基于开发者选择的开源许可证在合规的前提下行使权利,在尊重权利人的同时实现共赢和自身利益最大化。

而作为开源软件的开发者,也不必然要求是高尚的、无私的,开发者可以基于自己的目的来选择适当的开源协议。选择开源,就要审视自己内心深处的想法,开源的动机和目的是什么?后果是什么?……慎重的思考了这些问题后,还需要清楚的知道选择宽松型的许可证可能要面对的各种问题。

开源使用者是纯粹的受益者,即便是抱怨无非是对严格型许可证发发牢骚而已。而开源的开发者往往显得更值得同情,一般是从道义上(如案例 3)以及经济利益上(如案例 1、2)体现。但这就是开源运动运行的机制,它肯定不完美,但被证明是行之有效的。针对开源开发者,你需要做的就是当别人违法的时候拿起法律的武器捍卫自己的权利,当别人没有违法的时候,你心里再不爽也要保持淡定。

当然,诸如前述案例让人糟心的事情肯定很多,开发者也不是束手无策:

比如案例 1 中新蜂商城的作者,选择了 MIT 这个非常宽松的许可证。就意味着,其他人几乎可以拿来做任何事情,包括卖钱。但你依然有以下权利:

  1. 不准拿你的大名做推广,或者类似名字这种具有身份意义、独特标识作用的符号;
  2. 如果作品真的好且有市场,作者完全可以自己经营,将自己的品牌做大;
  3. 别人卖的了你的源码卖不了你的实力,你可以不断迭代升级,源码和服务提供一站式解决方案。其实,现实中我们熟悉的开源软件大都如此,比如 Android、Linux 等;
  4. 乐见其成,毕竟开源就是奉献自己的劳动成果让人使用,二手贩子们所做的事与开源者的目标是一致的。当然如果贩子们声称是自主源码云云(国内拿开源的东西声称自主开发的太多了),那必然是违法的,开源者可以大胆的拿起法律的武器。

主动开源,你真的准备好了吗?

基于国内的现实状况,笔者以往更多的是将精力放在帮助企业和开发者合规的使用和利用开源。因为我们曾经都是开源的受益者,需要基于合法、合规的前提汲取营养、学习知识。

目前,国内越来越多企业或个人开始思考反哺开源社区,这是非常好的开始,说明我们从受益者开始变为奉献者。但现实中这些才华横溢的开发者在开源中难免遇到案例中的问题,一旦遇到将严重挫伤其开源的积极性。

因此,开源开发者在主动开源之前,更需要深刻理解开源,明确自己开源的目的以及可能面对的潜在问题等。在慎重思考自己开源的目的和对开源后各种问题的考量后,选择适合自己的许可证。

以下是几个典型的开源动机面临的潜在风险:

  1. 想借助大众或社区的力量优化自己的软件,获得免费劳动力
    开源软件千千万,真正取得成功或大众认可的软件凤毛麟角,不能说这种目的动机不纯,至少实现的可能性甚微。更多的可能是根本没有人看得上你的项目。
  2. 想借助开源扩大自己影响力(自我营销)
    这可能是开源开发者,包括大企业做开源的一个非常重要的目的。具体能否实现,就看你的水平有多高,实力是否匹配自己的梦想。
  3. 基于自己牛逼的软件,打造生态。
    这也是大部分企业的终极梦想,就像第一条所述,大部分的开源软件都归于路人甲,能否实现自己的生态梦取决于你的软件到底如何,能否支撑一个生态、够吸引外围群落。
    即便这些都满足了,还要思考一点,你自己的实力能否持续主导这个生态的发展。因为,开源社区的主导力是由实力说话的,如果你无法保持持续的创造力,别人fork一下就可能成为新的盟主而把你晾在一边坐冷板凳。Google 的 Android 生态就是道理,Google 对 Android 生态的领导力是建立在其持续的创造力之上的。
  4. Just for fun
    最纯粹的开源。如果你开源软件的目的很单纯,就是因为喜欢而开源。那单纯的你需要知道不同开源许可证开源的后果。若别人拿你的开源软件去卖钱你也不要太上头,因为这是允许的,当然更不能看到别人赚了一大笔钱心里就不平衡了。就像大把的企业靠着 林纳斯·本纳第克特·托瓦兹 Linus Benedict Torvalds Just for fun 的软件 Linux 和 Git 赚了大笔的钱,你能做的就是乐见其成。

开源不仅仅是代码,更是人品和实力,也是策略和格局。希望每一个奉献和使用开源的你,都能感受到这个世界的善意。以上是基于本次热点,针对使用开源以及主动开源分享的点滴思考和建议。有兴趣可以找我讨论沟通。


付钦伟,集慧智佳高级咨询师、专利代理人,擅长专利分析布局、FTO调查与风险应对、专利信息应用、开源软件风险与合规指导。

在冠状病毒爆发期间,我们中的许多人都在室内自我隔离。ZDNet 特此与 Linus Torvalds 进行了专题采访,讨论了他对冠状病毒禁足期间在家工作的看法或想法。

如果你还不知道(怎么可能不知道),Linus Torvalds 是 Linux 的创建者,也是 Git 的创建者,而所有这一切都是他在家里工作时做的。这是 2016 年的视频,Torvalds 展示了他的家庭办公室:

因此,在本文中,我将分享我关注的一些主要要点,以及来自 Linus Torvalds 接受 ZDNet Steven J. Vaughan-Nichols 采访互动时的回应。

消除对人际交往缺失的恐惧

Linus 提到,几年前刚开始在家工作时,他担心过缺少人与人之间的互动,包括去办公室、与人互动或哪怕只是出去吃个午餐。

有趣的是,他似乎并没有错过任何东西,他更喜欢在家中没有人际交往的时间。

当然,将自己与人际互动隔离开并不是最好的事情 ,但在目前看来,这是一件好事。

利用在家工作的优势

就像我们是完全远程操作一样,你可以做很多事情,而无需实际在办公室。

不要忘记,你可以随心所欲地养猫,我有 6 只猫,我知道这很困难(哈哈)。

而且,正如 Linus 所提到的,远程工作的真正优势在于“灵活性”。你不一定需要朝九晚五甚至更长的时间坐在办公桌前。从技术上讲,你可以在工作中自由休息,并在家中做你想做的任何事情。

换句话说,Linus 建议不要在你的家中重新搞一个办公室,这比去办公室还差。

高效沟通是关键

虽然你可以在一天之中召开几次会议(视频会议或音频呼叫),但这真的有必要吗?

对于某些人来说,这可能很重要,但是你应该通过简化和整理内容来尽量减少会议花费的时间。

或者,按照 Linus 的建议,最好有个电子邮件列表来记录事情,以确保一切各司其职,这就是 Linux 内核 的运行方式。

James Bottomley 是 IBM 研究院的杰出工程师,也是资深 Linux 内核开发人员,他也建议你重新阅读你的文字以确保发送的准确信息不会被人不小心跳过。

就个人而言,出于同样的原因,我更喜欢文本而不是语音。实际上,它可以节省你的时间。

但是,请记住,你需要只以适当的方式传达必要的信息,而不要使通过文本/电子邮件发送的信息过载。

追踪你的时间

灵活性并不一定意味着你可以减少工作量并泡在社交媒体平台上,除非那就是你的工作。

因此,你需要确保充分利用自己的时间。为此,你可以使用多种工具来跟踪你的时间用在什么地方,以及在计算机上花费的时间。

你甚至可以将其记录在便签上,以确保你可以将时间高效地分配于工作上。你可以选择使用 RescueTimeActivityWatch 来跟踪你在计算机或智能手机上花费的时间。

和猫(宠物)一起玩

不歧视其他宠物,但这就是 Linus Torvalds 提到的。

正因为你在家中,你在安排工作或尝试有效利用时间时要做的事情有很多。

Linus 坚持认为,每当你感到无聊时,可以在必要时出门获取必需品,也可以与猫(或你的其它宠物)一起玩。

结语

虽然 Linus 还提到了当你在家时没人会评判你,但他的建议似乎是正确的,对于那些在家工作的人来说可能很有用。

不仅是因为冠状病毒的爆发,而且如果你打算一直在家工作,应该牢记这些。

你如何看待 Linus 的看法呢?你同意他的观点吗?


via: https://itsfoss.com/torvalds-remote-work-advice/

作者:Ankush Das 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

当一个妻子教丈夫一些新技能的时候,他们都学到了比期待更多的东西。

2019 年是我们 Cherry 家学习的一年。我是一个喜欢学习新技术的高级软件工程师,并把学到的内容一起教给了我的丈夫 Chris。通过教给他一些我学到的东西,并让他全程经历我的技术演练文章,我帮助 Chris 学习到了新技术,使他能够将自己的职业生涯更深入地转向技术领域。而我学习到了新的方法,使我的演练和培训材料更易于让读者理解。

在这篇文章中,我们来讨论一下我们各自和彼此学习到了什么东西,然后探讨这对于我们的未来有何影响。

向学生的提问

Jess: Chris,是什么导致你想深入学习我的领域的技能呢?

Chris: 主要目的是为了让我事业更进一步。作为一个网络工程师的经历告诉我,现在的网络专家已经不像以前一样有价值了,我必须掌握更多的知识。由于网络经常被认为是造成这些天程序中断或出错的原因,我想从开发人员的角度了解更多关于编写应用程序的知识,以便于了解它们如何依赖网络资源。

Jess: 我首先教你什么内容?你从中学到什么?

Chris: 首先是从学习除此安装 Linux 系统开始的,之后又安装了 Ansible。只要硬件兼容,我用过的每一个 Linux 发行版都很容易安装,但可能会出现个别不兼容的情况。这就意味着我有时候第一手学习到的是如何解决系统安装过程的最初 5 分钟出现的问题了(这个我最喜欢了)。Ansible 给了一个我学习使用软件管理器来安装程序的理由。当程序安装完成后,通过查看 yum 安装的程序,我快速了解了程序管理器是如何处理程序的依赖项的,因此,用 Python 编写的 Ansible 能够在我的系统运行。自此之后,我开始使用 Ansible 来安装各种各样的程序。

Jessica: 你喜欢我这种教学方式不?

Chris: 我们一开始有过争吵,直到我们弄清楚了我喜欢的学习方式,你也知道了应该怎样为我提供最好的学习方式。在一开始的时候,我很难跟上你讲的内容。例如,当你说“一个码头工人集装箱”的时候,我完全不知道你在讲什么。比较早的时候,我的回答就是“这是一个集装箱”,然而当时这对我来说,完全没有意义。当你对这些内容进行一些更深入的讲解后,才让学习更有趣。

Jess: 老实说,这对我来说也是一个重要的教训。在你之前,我从来没有教过在这个技术领域知识比我少的人,所以你帮助我认识到我需要解释更多细节。我也得说声谢谢。

当你通过这几个学习步骤的时候,你觉得我的这篇测试文章怎样呢?

Chris: 就我个人而言,我认为这很容易,但我错了。在我主要学习的内容中,比如你介绍的Vagrant,它在不同的 Linux 发行版间的变化比我想像的要多。操作系统的变化会影响设置的方式、运行都要求和特定的命令。这看起来比我用的网络设备变化更大。这让我花费更多的精力去查看这些说明是对应我的系统还是其它的系统(有时候很难知道)。在这学习路上,我似乎碰到很多问题。

Jess: 我每天都会遇到各种各样的问题,所以对我来说日常就是用各种方法解决各种问题。

向老师的提问

Chris: Jess,你将来教我的方式会有所改变吗?

Jess: 我想让你像我一样读多一些书。通过翻阅书籍来学习新技术。每天起床后一小时和睡觉前一小时我都会看书,花费一个星期左右我就能看一到两本书。我也会创建为期两周的任务计划来实践我从书本中学习到的技能。这是除了我一天中第一个小时在喝大量咖啡时读到的科技文章之外的。当我考虑到你的职业发展目标的时候,我认为除了我们谈到的优秀博客文章和文章之外,书籍是一个重要的元素。我觉得我的阅读量使我保持进步,如果你也这么做了,你也会很快赶上我的。

Chris: 那么学生有没有教过老师呢?

Jess: 我在你那里学习到耐心。举个例子,当你完成了安装 Ansible 的时候,我问你下一步要怎样操作的时候。你直接回复我,“不知道”,这不是我想让你学习到的内容。所以我改变了策略,现在在逐步安装任何组件之前,我们将详细讨论你想要实现的目标。当我们在写 Vagrant 文章的时候,我们一起进行相应的演示操作,我以创建它时就牢记目标,因此我们就有一些需要马上实现的目标。

这实际上对我在工作中的培训方式产生了巨大的改变。现在我在大家学习的过程中会问更多问题,并更多地进行手把手讲解。我更愿意坐下来仔细检查,确保有人明白我在说什么和我们在做什么。这是我之前从来没有做过的。

我们一起学到了什么

做为一对夫妇,在这一年的技术合作中我们的技术都有所增长。

Chris: 我对自己学到的东西感到震惊。通过一年课程学习,我认识了新操作系统、如何使用 API、使用 Ansible 部署 Web 应用和使用 Vagrant 启动虚拟机器。我还学习到了文档可以让生活变得更好,所以我也会尝试去写一写。然而,在这个工作领域,操作并不总是被记录在案,所以我学会了准备好处理棘手的问题,并记录如何解决它们。

Jess: 除了我在教你中学到的知识外,我还专注于学习 Kubernetes 在云环境中的应用知识。这包括部署策略、Kubernetes API 的复杂度、创建我自己的容器,并对环境进行加密处理。我还节省了探索的时间:研究了 serverless 的代码、AI 模型、Python 和以图形方式显示热图。对于我来说,这一年也很充足。

我们下一个目标是什么?现在还不知道,但我可以向你保证,我们将会继续进行分享它。


via: https://opensource.com/article/20/2/linux-love-language

作者:Christopher Cherry 选题:lujun9972 译者:sndnvaps 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

遵循以下这些要点,把自己最好的一面呈现给潜在雇主。

如果你是一名软件工程师或技术领域的经理,那么创建或更新简历可能是一项艰巨的任务。要考虑的重点是什么?应该怎么把控格式、内容以及求职目标或摘要?哪些工作经验相关?如何确保自动化招聘工具不会过滤掉你的简历?

在过去的七年中,作为一名招聘经理,我看到了各种各样的简历;尽管有些令人印象深刻,但还有很多人写的很糟糕。

在编写或更新简历时,请遵循以下七个简单原则。

1、概述

简历顶部的简短段落应简洁明了、目的明确,避免过度使用形容词和副词。诸如“令人印象深刻”、“广泛”和“卓越”之类的词,这些词不会增加你的招聘机会;相反,它们看起来和感觉上像是过度使用的填充词。 关于你的求职目标,问自己一个重要的问题:它是否告诉招聘经理我正在寻找什么样的工作以及如何为他们提供价值? 如果不是,请加强并简化它以回答该问题,或者将其完全排除在外。

2、工作经验

数字、数字、数字——重要的事情说三遍。用确凿的事实传达观点远比一般的陈述,例如“帮助构建、管理、交付许多对客户利润有贡献的项目”更能对你有帮助。你的表达中应包括统计数据,例如“直接影响了 5 个顶级银行的项目,这些项目将其上市时间缩短了 40%”,你提交了多少行代码或管理了几个团队。数据比修饰语更能有效地展示你的能力和价值。

如果你经验不足,没有什么工作经验可展示,那些无关的经验,如暑期兼职工作,就不要写了。相反,将相关经验的细节以及你所学到的知识的详细信息写进简历,这些可以使你成为一个更好的候选人。

3、搜索术语和行话

随着技术在招聘过程中发挥如此巨大的作用,确保简历被标记为正确的职位非常重要,但不要在简历上过分吹嘘自己。如果你提到敏捷技能但不知道看板是什么,请三思。如果你提到自己精通 Java,但是已经有五年都没有使用过 Java 了,请小心。如果存在你熟悉但不一定是当前在用的语言和框架,请创建其他类别或将你的经验分为“精通”和“熟悉”。

4、教育

如果你不是应届大学毕业生,那就没必要再写你的 GPA 或你参加过的俱乐部或兄弟会,除非你计划将它们用作谈话要点以在面试中赢得信任。确保将你发表的或获取过专利的东西包括在内,即使它与该工作无关。如果你没有大学学位,请添加一个证书部分代替教育背景部分。如果你是军人,请包括现役和预备役时间。

5、资质证书

除非你想重新进入之前离开的领域,否则不要写过期的证书,例如,如果你曾经是一名人事经理,而现在正寻求动手编程的工作。如果你拥有与该领域不再相关的认证,就不要写这些认证,因为这些可能会分散招聘者的注意力,使你的简历失去吸引力。利用你的 LinkedIn 个人资料为简历添加更多色彩,因为大多数人在面试之前都会阅读你的简历和 LinkedIn 个人资料。

6、拼写和语法

让其他人帮忙对你的简历校对一下。很多时候,我在简历中看到过拼写错误的单词,或者错误用词,如“他们的”、“他们是”、“那些”。这些可以避免和修复的错误会产生负面影响。理想情况下,你的简历应用主动语态,但是如果这样会使你感到不舒服,那么就用过去时书写 —— 最重要的是要始终保持一致。不正确的拼写和语法会传递你要么不是很在乎所申请的工作,要么没有足够注意细节。

7、格式

确保你的简历是最新的并且富有吸引力,这是留下良好第一印象的简便方法。确保格式一致,例如相同的页边距,相同的间距、大写字母和颜色(将调色板保持在最低限度,不要花花绿绿)是简历写作中最基本的部分,但有必要表明你对工作感到自豪,并重视自己的价值和未来的雇主。在适当的地方使用表格,以视觉吸引人的方式分配信息。如果支持的话,以 .pdf 和 .docx 格式上传简历,然后用 Google Docs 导出为 .odt 格式,这样可以在 LibreOffice 中轻松打开。这里有一个我推荐的简单的 Google 文档简历模板。 你还可以支付少量费用(不到 10 美元)从一些设计公司购买模板。

定期更新

如果你需要(或希望)申请一份工作,定期更新简历可以最大程度地减少压力,也可以帮助你创建和维护更准确的简历版本。撰写简历时,要有远见,确保至少让另外三个人对你的简历内容、拼写和语法进行检查。即使你是由公司招募或其他人推荐给公司的,面试官也可能只能通过简历来认识你,因此请确保它为你带来良好的第一印象。

你还有其他提示要添加吗?


via: https://opensource.com/article/20/2/technical-resume-writing

作者:Emily Brand 选题:lujun9972 译者:Morisun029 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

本文是最近一周开源社区的新闻和行业进展。

 title=

我在一家采用开源软件开发模型的企业软件公司任高级产品营销经理,我的一部分职责是为产品营销人员,经理和其他相关人定期发布有关开源社区,市场和业界发展趋势的更新。以下是该更新中我和他们最喜欢的五篇文章。

云原生应用采用的技术:容器等

  • 在生产环境中采用容器的比例从 2018 年的 73% 上升到 2019 年的 84%。其中,运行了至少 250 个容器的比例从 2018 年的 46% 上升到 2019 年的 58%。2017 到 2019 年间, 环境中拥有 50 台以上计算机(物理或虚拟)的受访者人数从 2017 年的 77% 上升到 2019 年的 81%。
  • 表明: 容器的引入似乎缓解了需要管理的 VM 的快速增长。但是,请警惕要管理的原始机器数量会减少的说法。

分析:从直觉上看,随着容器使用的增长,虚拟机的增长将放缓;有许多容器被部署在虚拟机内部,从而充分利用了两者的优势特性,而且许多应用不会很快被容器化(留意下你所在企业的传统单体式应用)。

在生产环境中运行Istio的经验

在 HelloFresh,我们将团队分为小队和团伙。每个团伙都有自己的 Kubernetes 命名空间。如上所述,我们先按命名空间启用 sidecar 注入,然后再逐个对应用启用。在将应用添加到 Istio 之前,我们举办了研讨会,以使小队了解其应用发生的变化。由于我们采用“您构建,您维护”的模型,团队可以在故障定位时了解应用的进出流量。不仅如此,它还提升了公司内部的知识量。我们还创建了 Istio 相关的 OKR ,来跟踪我们的进度并达成我们引入Istio的目的。

分析:引入或是不引入技术,要由自己决定,同时要自行承担相应的后果。

Aether: 首个开源的边缘云平台

ONF 的营销副主席 Sloane 这样解释 Aether: 它将多个正在自己的沙箱中开发和运行的项目聚集到一起,ONF 试图在该框架下将多种边缘服务在一个融合平台上支持起来。ONF 的各个项目将保持独立并可继续单独使用,但是 Aether 试图将多个能力绑定到一起来简化企业的私有边缘云运营。

他说:“我们认为我们正在创造一个新的合作空间,工业界和社区可以携手帮助推动通用平台背后的整合和关键工作,然后可以帮助这些边缘云中的通用功能不断发展”。

分析:当今,使用技术解决的问题过于复杂,无法通过单一技术解决。比技术更重要的是要解决的业务问题需要聚焦于真正增值的部分。将两者结合起来,就是企业之间需要在他们共同的需求上找到合作的方法,并在它们特有的方面进行竞争。除了开源,你找不到比这更好的方法了。

与云相关职业的女性正在改变现状

Yordanova 说:“由于云是一种相对较新的技术,我的成为一名“科技女性”的经验可能并不典型,因为云行业极为多样化”。“实际上,我的团队中性别比例相当,成员由随着云技术而成长的不同个性、文化和优势的具体人员组成。“

分析:我想考虑的一件事就是跨越式的演进思路。你可能可以跳过演进过程中的某个步骤或阶段,因为原先导致其存在的条件已不再适用。云技术时代没有形成“谁发明的以及它是为谁而生”的固有说法,所以也许它所承载的某些前代的技术负担更少?

StarlingX 如何在中国开源项目的星空中闪耀

我们的团队在中国,因此我们的任务之一是帮助中国的社区开发软件、贡献代码、文档等。大多数 StarlingX 项目会议是在中国的深夜举行,因此华人社区成员的出席和参与颇具挑战。为了克服这些障碍,我们与中国的其他社区成员(例如 99cloud 的朋友)一起采取了一些措施,例如和其他社区成员一起聚会,一起参加动手实践研讨会和中文的特设技术会议,将一些文档翻译成中文,并在微信小组中不断进行互动(就像每个人都可以享受的 24/7 通话服务一样)

分析:随着中国对开源项目的贡献不断增长,这种情况似乎有可能逆转或至少相当。“学习英语”根本不是参与开源项目开发的先决条件。

希望你喜欢这个列表,下周再见。


via: https://opensource.com/article/20/3/survey-istio-industry-news

作者:Tim Hildred 选题:lujun9972 译者:messon007 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你认为开源软件是共享软件、免费软件和公有领域软件的代名词,那么你并不是唯一有这种看法的人。

当你听到“ 开源软件 open source ”一词时,你是否认为它与诸如 共享软件 shareware 免费软件 freeware 公有领域软件 public domain 之类的术语同义? 如果是这样的话,你并不是唯一有这种看法的人。在软件行业内外的许多人都认为这些术语是一样的。本文说明了这些术语的不同之处,认为开源是一种变革性的许可和开发模式。分享我与以上几种软件打交道的经验,可能是探究差异的最佳方法。

共享软件和免费软件

早在 1982 年,当我在 Apple II Plus 上用 BASIC 编写代码时,我就开始从事计算机程序员的工作。我回想起去家乡当地的计算机商店,并在塑料袋中找到看起来价格高昂的装有游戏和实用程序软件的软盘。请记住,这是从一个中学生的角度来看的。

但是,有一些软件可以免费或以最低价格获得。依据具体许可模式,它被称为共享软件或免费软件。在共享软件模式下,你只能在一定时间内使用该软件,如果你发现它有用,则要求你将支票寄给该软件的作者。

但是,某些共享软件实际上也鼓励你复制并提供给你的朋友。这种模式通常称为免费软件。也就是说,共享软件和免费软件确切定义之间的差异十分微小,因此很容易将两者简单地统称为“共享软件”。我虽不能肯定,但是我不记得我是否向任何软件作者提供过使用共享软件的费用,主要是因为我在十几岁的时候就没有钱,但是我肯定喜欢使用这些软件程序,并且从中学到了很多有关计算机的知识。

回顾过去,我现在意识到,如果该软件是根据开源许可条款而非共享软件条款提供的,那么作为一名新兴的程序员,我本可以在成长中学到很多东西,并且可以取得更多成就。这是因为几乎没有共享软件会提供源代码(即,人类可读的软件形式)。共享软件还包含许可限制,禁止接收者试图泄露其源代码。如果无法访问源代码,则很难了解该软件的实际工作方式,从而很难扩展或更改其功能。这使得最终用户完全依赖共享软件原始作者进行任何更改或改进。

使用共享软件模式,任何开发人员社区几乎都不可能对代码施加影响,并进一步围绕代码进行创新。再分发和商业使用也可能受到进一步的限制。尽管共享软件可能在价格方面是免费的(至少在最初是免费的),但它在自由权利方面并不是免费的,并且不允许你通过探索代码的内部原理来学习和创新。

这就引出了一个大问题:它与开源软件有何不同?

开源许可的基础

首先,我们需要了解“开源”是指许可模式和软件开发模式,两者与共享软件都有很大不同。在一种称为非 “左版” copyleft 开源许可的开源形式下,向用户提供了关键的自由权利,例如对访问源代码没有限制;可以出于任何目的出售、使用或赠送该软件;可以修改软件。

这种形式的许可也不需要支付任何使用费或许可费。因为许可是高度宽松的,不需要谈判就可以使用,这种许可模式的一个惊人结果是它具有独特的能力,可以使无数软件开发人员协作起来对代码进行新的、有用的更改和创新。尽管从技术上讲,在这种许可模式下不需要提供源代码,但是几乎所有人都可以使用它来查看、学习、修改和分发给他人。

非“左版”开源许可的另一个方面是,此类软件的任何接收者都可以添加其他许可限制。这意味着以这种许可形式对代码进行许可的初始作者,无法阻止接收者可能依据限制性更强的条款不再进一步许可给其他人。例如:

假设作者 Noah 编写了一些软件,并根据非“左版”开源许可将其分发给了接收者 Aviva。然后,Aviva 修改并改进了 Noah 的软件,她有权根据非“左版”开源许可条款使用该软件。然后,Aviva 可以决定对可能限制该软件使用的任何接收者施加进一步的限制,例如在何处或如何使用它(例如,Aviva 可以增加一项限制,规定该软件只能在以下地区使用:加利福尼亚,并且不允许在任何核电厂中使用)。 即使 Aviva 可以访问源代码,也可以选择永远不将修改后的源代码发布给他人。

不幸的是,有无数的专有软件公司以上述方式使用非“左版”开源许可软件。实际上,共享软件程序可以通过添加共享软件类型限制(例如,无法访问源代码或排除商业用途)来使用非“左版”开源许可软件,从而将非“左版”开源许可代码转换为共享软件许可模式。

幸运的是,许多使用非“左版”开源许可软件的专有软件公司都看到了发布源代码的好处。这些组织一般通过诸如 GitHub 之类的软件存储平台向其接收者或更广泛的开源社区提供修改后的源代码,从而继续保持开源模式的持久性,实现创新的良性循环。这并不是完全出于慈善目的(或者至少通常不是这样):这些公司希望鼓励社区创新和进一步改进,从而使他们也一并受益。

同时,许多专有软件公司不选择这样做,这也完全符合非“左版”开源许可证条款的规定。

“左版”许可的开源软件

1989 年,一种新的被称为 GNU 通用公共许可证(也称为 GPL 许可证)的开源许可证被开发出来,其目的是确保软件“生来自由”(如同言论自由),并且能始终保持这种自由,这与非“左版”开源许可软件有时会发生的情况不同。作为版权法的独特适用,只要遵守这些规则(稍后会再介绍),GPL 许可证能够确保持续的软件自由。版权的这种独特适用称为 “左版” copyleft

与非“左版”开源软件一样,“左版”许可证允许接收者不受限制地使用该软件、检查源代码、修改软件,以及将原始或经修改的软件进一步分发给其他接收者。与非“左版”开源许可证不同,“左版”开源许可证要求所有接收者必须也具有这些相同的自由权利。除非不遵守规则,否则这些自由权利决不能被收回。

使“左版”开源许可证能够强制执行,并促使人们遵守法规的原因是版权法的适用。如果“左版”代码的接收者不遵守许可条款(例如,对软件使用添加任何其他限制或不提供源代码),则其许可将被终止,并且由于他不再享有使用该软件的法律许可,他将成为版权侵犯者。因此,该“左版”许可软件任何下游接收者的自由权利得以保障。

超越基础:其他软件许可模式

我在前面提到了公有领域软件,尽管它通常与开源软件混为一谈,但是这种模式有所不同。公有领域软件是指已采取步骤查看后获知没有与该软件相对应的版权存在,最常见的情况是软件版权到期或被作者放弃。(在许多国家/地区,版权保护机制尚不明确,这就是为什么某些公有领域软件可能选择开源许可模式作为备选方案的原因。)使用公有领域软件无需许可证。尽管如果源代码可获取的话,许多人会认为公有领域软件是开源软件的一种形式,但无需许可证是否让公有领域软件成为“开源软件”,是存在很多争论的主题。

有趣的是,有许多开源项目利用公有领域软件的小模块来实现某些功能。甚至还有声称整个程序属于公有领域的软件,例如实现了 SQL 数据库引擎并在许多应用程序和设备中使用的 SQLite。没有许可条款的软件也是很常见的。

许多人错误地认为这种未经许可的软件是开源软件,属于公有领域,或者不受限制地免费使用。在大多数国家(包括美国),软件的版权在其创建时就已存在。这意味着不以许可证的形式许可就不能使用它,除非它以某种方式放弃版权,并将其放置在公有领域。此通用规则存在一些例外情况,例如法律层面的默示许可或合理使用。但是在如何将它们应用于特定状况方面,情况非常复杂。在意图让其遵守开源许可条款的情况下,我不建议提供没有许可条款的软件,因为这会导致混乱和潜在的滥用。

开源软件的好处

就像我之前说的那样,开源是高效的软件开发模式,并具有推动创新的巨大能力。但这到底意味着什么?

开源许可模式的好处之一是大大减少了创新方面的摩擦,尤其是原始作者以外的其他用户所进行的创新。这种摩擦是有限的,因为使用开源软件通常不需要协商许可条款,从而大大简化并降低了使用成本。反过来,这创建了一种开源生态系统,它鼓励快速修改和组合现有技术以形成新的事物。这些修改通常能回馈到开源生态系统中,从而构造了一个创新循环。

驱动大量事物(从你的烤面包机到火星飞行器)运转的无数种软件,正是这种轻松地将各种程序组合在一起的能力的直接结果——开源开发模式让所有这些软件得以成为现实。


作者简介:Jeffrey R. Kaufman 是全球领先的开源软件解决方案供应商 红帽公司 Red Hat 开源法务团队的资深商务法律顾问,还担任 北卡罗来纳大学 University of North Carolina 的兼职法律教授。在任职红帽公司之前,Jeffrey曾担任 高通公司 Qualcomm 的专利和开源法律顾问。

译者简介:薛亮,集慧智佳知识产权咨询公司互联网事业部总监,擅长专利检索、专利分析、竞争对手跟踪、FTO 分析、开源软件知识产权风险分析,致力于为互联网企业、高科技公司提供知识产权咨询服务。