Dr. 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 项目的联合创始人,目前是一家初创公司的 CEO,

11 条评论

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

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

回复 作者 Zeeshan Hasan (未验证)

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

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

这绝对值得获得有史以来脚注最多的奖项。
无论如何,我认为成功的开源项目之所以具有稳健性,至少部分原因在于它吸引了一个社区。 项目始于某些人或一小群人有一些好的想法,将它们抛向公众,然后,以持续的方式吸引新的想法、改进旧的想法、文档编写者,当然还有热情的用户。 人们明白他们可以随时切换角色或满足多种需求。

Greg -

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

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

-Mike。

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

Zeeshan -

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

-Mike。

回复 作者 Zeeshan Hasan

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

“我的一般工作风格是先用铅笔和纸写下所有内容,‭ ‬坐在一个大废纸篓旁边。‭ ‬然后我使用 Emacs 将文本输入到我的机器中。”——Donald Knuth

“我不需要浪费时间在电脑上,仅仅因为我是一名计算机科学家。”——Edsger Djikstra

“计算机科学与计算机的关系,就像天文学与望远镜的关系一样。”——Edsger Djikstra

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

回复 作者 robertservice (未验证)

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