Lovesource 博士:或者我如何学会不再担忧并爱上开源

开源不仅仅是贡献代码。
347 位读者喜欢这篇文章。
Marketing openness: Does sharing have a stigma?

Opensource.com

我以前写代码。 现在不写了。 原因有很多,包括我不太擅长写代码。 为了澄清一下,我认为我擅长写代码,1 但我不非常擅长写代码。2 事实证明,我非常擅长其他各种事情,所以我的职业生涯3 朝着不同的方向发展——或者,实际上,是朝着各种不同的方向发展。 在担任过从“电子信息控制器”到“产品和项目4 经理”等多个职位,并经历了软件工程和售前工作之后,我最终安定下来从事名为“架构”的工作。 这意味着我主要在白板上画框框和线条,并期望那些非常擅长编写代码的人将这些框框“实现”。

在这段时间里,我一直参与、使用并默默地倡导开源。 我绝对不是社区——或多个社区——中的重要声音,但这长期以来一直是我深信不疑并珍视的东西。

但我一直担心我不是一个真正的开源人士。 我没有权利发声、站出来, 成为真正的开源布道者。 这是因为我从未为任何开源项目编写过太多代码。 我从来都不是一个重要的贡献者,而且我当然从来都不是任何项目的维护者。

开源当然是由代码驱动的——由源代码驱动。5 如果你不为源代码做贡献,就很容易感到自己是二等公民。 这在某种程度上是事实:许多开源项目在其生命周期中都由一小群编写和维护代码的人员指导。 在其中一些项目中,如果你不编写代码,你的声音就不会得到太多关注。6

然而,总的来说,我认为这种情况正在改变,而且这通常是一件好事。 许多项目现在意识到社区组织者、测试人员、文档人员、营销人员、用户体验设计师、平面艺术家、声音艺术家、翻译人员以及所有其他不积极为项目贡献源代码的人员(甚至架构师)的价值——巨大的价值。 因为如果没有这些类型的人,无论项目多么出色,都永远不会成功。 我开始想出这条规则的例外情况,然后意识到——尽管我可能能够从某些项目中删除列表中的某些元素——但没有哪个项目能够仅仅依靠程序员就能真正成功。

这意味着我们都可以参与其中,即使只是作为提交错误的用户——伙计们,这就是测试——或者指出标题屏幕中的措辞感觉有点奇怪——那是文档 或者可能是翻译。8

过去几年发生的另一件事,也是 Opensource.com 热情推广的事情是,开源不再仅仅是关于代码了。 它还关于硬件规格、啤酒配方、数据、决策制定,甚至组织如何看待自身及其文化。 因此,归根结底,我(终于)更自在地将自己视为一个“真正的”开源人士。 事实上,这就是我开始为 Opensource.com 写作的原因之一。 我意识到也许我——而且,重点是,我们所有人——都拥有可以为开源带来的技能、经验和才能。

我鼓励你——无论你有什么技能,无论你有什么兴趣,10 无论你有什么经验——都探出头去看看你能在开放社区中做些什么。 是的,如果你能并且想写代码,那就写代码,但也要测试、编写文档、设计,或者只是使用和宣传:这一切都是为了运动的利益,这一切都为我们共享、发展和庆祝的知识和专业知识的共同财富增砖添瓦。


1. 我以前的一些同事可能不同意这一点。

2. 但我怀疑他们中会有人不同意这一点。

3. 考虑到我的学位是英国文学和神学,很难想象这是一个计划更少的职业生涯。

4. 是的,这就是这个词的正确拼写方式(参见 8)——除非你谈论的是你在计算机上运行的东西; 那个词缺少最后两个字母。

5. 线索就在名字里。

6. 除非是音频编辑项目。7

7. 配合我,配合我。

8. 我个人认为,我们需要更多带有 en-gb 翻译的项目。9

9. 以我并不谦虚的观点来看。

10. 除非你对保持事物封闭和专有感兴趣。

User profile image.
自 1997 年左右以来,我一直身处开源领域,并且从那时起一直将 (GNU) Linux 作为我在家和工作时的主要桌面操作系统:并非总是那么容易……  我是一名安全专家和架构师,Enarx 项目的联合创始人,目前是一家初创公司的首席执行官,该公司从事...

11 条评论

你的文章引起了我的共鸣,因为我也拥有神学研究学位,但逐渐发现自己参与了开源软件,特别是在实施开源 ERP 解决方案方面。 =)

拥有神学学位的人比某些人意识到的要多。 嘘! 我们可以通过潜行来接管(以及对历史神学争论、文学批评技巧、异端和晦涩语言的奇怪而广泛的知识……)。

回复 作者 Zeeshan Hasan (未验证)

开源世界有一个方面人们不常谈论,那就是哲学。 我经常将开源与安全和隐私相关的问题联系起来。 你可以看到代码,并确信它在运行之前会尊重你作为人的权利。

在当今时代,这是一个令人信服的论点。

这绝对应该获得有史以来脚注最多的奖项。
无论如何,我认为成功的开源项目的稳健性来自于吸引社区。 项目开始于某个人或一小群人,他们有一些好主意,将它们抛给公众,然后,持续不断地吸引新的想法、对旧想法的改进、文档编写者,当然还有热情的用户。 人们理解他们可以随时切换角色或满足多个需求。

Greg -

对我来说,脚注的数量仅仅略高于平均水平!

你是对的:稳健性来自于社区,并充当积极的反馈。 我并不是说你不需要(至少在大多数情况下)从良好的开发核心开始——我同意你的观点。

-Mike。

我有一个问题想问你。 既然红帽是最大的 Linux 公司,我很好奇你们使用哪些专有应用程序? 我假设红帽的大多数人已经在使用 Fedora/Redhat 桌面、LibreOffice 和 Thunderbird/Lightning 电子邮件/日历。 那么其他通常默认为专有品牌的企业软件呢? 你们的市场营销部门使用 Gimp/Inkscape 还是 Adobe? 红帽员工使用什么进行项目管理、CRM 和 ERP?

Zeeshan -

嗯, 使用 Fedora! 关于桌面的使用存在一些差异,但就我们的后端系统或营销等部门使用的工具而言,我知道有许多非常热情的人花费他们的一些时间来鼓励和帮助人们尽可能地使用开源软件。

-Mike。

回复 作者 Zeeshan Hasan

我认识的最优秀的程序员之一主要不是编写程序; 她编写了出色的算法,解决了手头的问题。 她后来成为一所大学计算机科学学院的院长。

“我一般的工作方式是先用铅笔和纸写下所有内容,‭ ‬坐在一个大废纸篓旁边。‭ ‬然后我使用 Emacs 将文本输入到我的机器中。”——唐纳德·克努特

“我不需要仅仅因为我是计算机科学家就浪费时间在计算机上。”——艾兹赫尔·戴克斯特拉

“计算机科学与计算机的关系,就像天文学与望远镜的关系一样。”——艾兹赫尔·戴克斯特拉

我认为你所说的至少是我难以掌握 C 和 C++ 的部分原因——它们非常注重结构,所以你必须创建所有这些类、变量和面向对象的东西,才能开始接触到你想做的算法逻辑。 相比之下,Perl 和 Python 更接近我脑海中的想法。

回复 作者 robertservice (未验证)

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