在本文中,我将解释什么是开源软件,并讨论它与其他类型软件的区别。我还将讨论开源软件的优点以及如何开始贡献项目。
概述
开源是一种术语,最初指的是开源软件(OSS)。开源软件是code,旨在公开可访问——任何人都可以看到、修改和分发code,按照他们的意愿。
源code is the part of software that most computer users don’t ever see; it’s the code computer programmers can manipulate to change how a piece of software—a “program” or “application”—works. Programmers who have access to a computer program’s source code can improve that program by adding features to it or fixing parts that don’t always work correctly.
每个活跃的开源软件项目都有一个或多个维护者。这些人是项目的守护者,他们确保项目保持自由并且没有错误或其他问题。换句话说,他们“维护”项目!虽然他们可能花时间编写code用于项目,但他们的主要优先事项是审查和组织来自其他人的贡献。那些贡献的人被称为贡献者。这些人提交了新的code、文档或甚至是bug报告到开源项目中。
那么我们所知的开源运动是如何产生的?
‘开源’一词的来源
二十多年前,Foresight Institute的联合创始人Christine Peterson创造了“开源软件”一词。她希望用这个词来吸引新人进入这个领域。
最初的名字是‘免费软件’,但人们对‘免费’的含义产生了很多混淆。为了澄清这个问题,Peterson提议将名字改为‘开源软件’。
开源软件的好处是什么?
使用开源软件有很多好处。其中一个好处是你对使用的code有多大的控制权。
程序员可以查看code并决定哪些code需要修改。普通用户可以自由使用软件,而不受他人指示的限制。
使用开源项目的code也可以让你学到很多东西。开发者可以从开源项目中学习code并与其他人分享自己的工作。
开源软件也被认为比专有软件更安全。由于code是免费开放的,开发者可以更快地发现问题、更新和修复bug。
开源软件还拥有一个庞大的社区。因此,对于想加入开源社区并开始贡献的初学者来说,有很多有用的资源可供选择。
你为什么要贡献开源项目?
开源社区的协作性质也为开发者带来了重要的机会。以下是最重要的理由。
改进项目
开源社区最美好的地方在于,它的成员主要是出于对项目的真诚兴趣而行动。因此,很多人贡献开源项目是出于利他主义的原因——他们想改进它!
让开源软件运行得更快、更聪明,或者更安全,这些都会提高其质量。
获取宝贵的知识
通过参与某个开源项目,你会获得有关该软件的宝贵知识。换句话说,你不仅仅是在通过实践来学习——你还在与其他开发者的code进行交互。
利用你的职业前景
通过贡献开源项目,你正在向潜在雇主发送信号,表明你的才华。他们可以轻松检查你的实际工作,并评估你是否适合他们的空缺职位。正如 Frank Scheffler所说,'积极的开源贡献突出了你的专业知识和技能,超过了单凭证书所能做到的'。
此外,通过贡献多个项目,你正在建立联系网络,这对你的职业前景来说绝对不会有害!
如何开始贡献开源项目?
贡献开源项目可以是一种有价值的方式来获取经验、与其他人合作并为社区做出贡献。以下是帮助你开始的逐步指南:
- 选择一个项目:
- 首先,选择一个与你的兴趣和技能水平相符的开源项目。你可以使用平台如GitHub、GitLab或Bitbucket来发现项目。
- 了解项目:
- 阅读项目的文档、README文件和任何贡献指南,以了解其目的、目标和编码标准。
-
设置开发环境:
- 安装必要的工具和依赖项,以便在项目中工作。这可能包括编程语言、库和版本控制系统,如Git。
-
从小处开始:
- 对于初学者来说,开始简单明了的任务,如修复拼写错误、文档改进或小bug修复是一个好主意。这将有助于您熟悉项目的工作流程和社区。
-
熟悉版本控制:
- 学习如何使用Git进行版本控制。将项目的仓库分叉,克隆到本地机器,并为您的更改创建一个新分支。
-
贡献 Code:
- 按照项目的编码指南,按照您的 code 进行更改。确保您的更改清晰、详细,并解决了现有的问题或需求。
-
测试:
- 在提交你的code之前,务必对其进行彻底的测试,以确保它按照预期工作。项目通常要求你编写测试来验证你的code修改。
-
创建 Pull Request (PR):
- 将你的修改推送到你的分支仓库,然后创建一个 PR 来向主项目提出你的修改。确保提供一个清晰和简洁的修改描述。
-
参与社区:
- 参与项目相关的讨论、论坛或邮件列表。保持开放的心态,愿意接受反馈,并根据反馈进行改进。
-
保持耐心和坚持:
- 你的 PR 可能需要一些时间才能被审查和接受。保持耐心,如果必要的话,礼貌地跟进你的 PR。
-
学习和成长:
- 利用经验来学习他人,并提高你的编码技能。你也可以随着对项目的熟悉度增加,贡献更具实质性的功能或改进。
-
遵守开源礼仪:
- 尊重项目的维护者和社区成员。保持礼貌,遵循他们的指南,并成为一个有益和建设性的贡献者。
-
保持一致性:
- 如果您想继续贡献,请尝试定期贡献。这有助于您在项目社区中建立存在感。
-
识别许可和所有权:
- 尊重项目的许可证和版权。了解您贡献的条款。
-
记录您的工作:
- 跟踪您的贡献以便您自己参考。这也可以在构建开发者简历时很有用。
记住,开源贡献不仅仅是code。您还可以帮助文档、设计、测试和项目管理。关键是找到与您的技能和兴趣相符的贡献方式。
利用Capgo背后的开源技术
您知道,开源技术有多种优势。它们的价格比专有软件低。它们也更灵活和安全,因为开源社区频繁地code更新。
These are all principles we adhere to in Capgo! We’re an open source live update system for Capacitor apps whose mission is to live update the Capacitor apps. We allows you to deploy updates to your users without the need to re-install the app. We’re a cloud-based service, but you can also self-host it.
为什么不试试自己? 试试我们的免费版本 __CAPGO_KEEP_0__ 我们欢迎您参与我们的不断演进的开源项目 - 我们很高兴您加入我们!
结论
开源软件是 code,供人们浏览、修改和分享。该术语“开源软件”是Foresight Institute联合创始人Christine Peterson所创造的。
开源软件有许多优点,包括大型社区支持、有助于开始贡献的指南、通过学习他人的 code 来学习,以及与其他开发者一起工作的经验。