python开源项目贡献

一个常见的误解是,为开源做出贡献是困难的。 您可能会想:“有时候我什至不了解自己的代码;我应该如何理解别人的代码?”

放松。 直到去年,我还是这么想。 阅读和理解别人的代码,并在此之上编写自己的代码可能是一项艰巨的任务,但是有了适当的资源,它并不像您想的那样难。

第一步是选择一个项目。 这一决定可能有助于将新手程序员变成经验丰富的开源人员。

建议许多对开源感兴趣的业余程序员签出Git ,但这不是最好的入门方法。 Git由uber-geeks维护,具有多年的软件开发经验。 在这里可以找到一个开源项目来贡献自己的好地方,但是它对初学者并不友好。 大多数为Git做出贡献的开发人员都有足够的经验,他们不需要资源或详细的文档。 在本文中,我将提供一个适合初学者使用的功能的清单,并提供一些技巧,以简化您的第一个开源贡献。

了解产品

在为项目做贡献之前,您应该了解它是如何工作的。 要了解它,您需要自己尝试一下。 如果您发现该产品有趣且有用,那就值得贡献。

初学者经常会在不首先使用软件的情况下尝试为项目做出贡献。 然后他们会沮丧并放弃。 如果不使用该软件,则无法理解其工作方式。 如果您不知道它是如何工作的,那么如何解决错误或编写新功能?

记住:尝试一下,然后再破解。

检查项目状态

该项目有多活跃?

如果您向未维护或处于Hibernate状态的项目发送拉取请求,则您的拉取请求(或PR)可能永远不会被审核或合并。 寻找活动频繁的项目; 这样,您将立即获得有关代码的反馈,并且您的贡献不会浪费。

这是确定项目是否处于活动状态的方法:

  • 贡献者数量:越来越多的贡献者表明开发人员社区感兴趣并愿意接受新的贡献者。
  • 提交频率:检查最近的提交日期。 如果是在最后一周,甚至一个月或两个月内,则该项目正在维护中。
  • 维护者数量:维护者数量更多,意味着更多潜在的指导者来指导您。
  • 聊天室/ IRC中的活动级别:繁忙的聊天室意味着可以快速回复您的查询。

初学者资源

Coala是一个开放式项目的示例,该项目具有自己的教程和文档资源,您还可以在其中访问其API(每个类和方法)。 该网站还具有吸引人的UI,使您想了解更多信息。

文档:所有级别的开发人员都需要可靠且维护良好的文档来了解项目的详细信息。 在GitHub (或托管的任何地方)以及诸如Read the Docs之类的单独站点上寻找提供可靠文档的项目,其中包含许多示例,可帮助您深入研究代码。

教程:解释如何向项目中添加功能的教程对初学者很有帮助(但是,可能无法在所有项目中找到它们)。 例如,coalya提供了编写熊的教程 (Python包装器,用于整理工具以执行代码分析)。

带有标签的问题:对于刚开始想知道如何选择第一个项目的初学者来说,选择一个问题可能会更加艰巨。 标有“难度/低”,“难度/新手”,“良好的第一期”和“低落的果实”的问题对于新手来说可能是完美的。

杂项因素

  • 维护者对新贡献者的态度:根据我的经验,大多数开源者都渴望帮助新移民加入他们的项目。 但是,当您寻求帮助时,您可能还会遇到一些不太受欢迎的人(甚至有些粗鲁)。 不要让他们灰心。 仅仅因为某人有更多的经验并不能赋予他们无礼的权利。 有很多其他人想要帮助。

  • 审查流程/结构:您的PR将由经验丰富的开发人员和您的同行进行许多审查和更改,这就是您最多了解软件开发的方式。 具有严格审核流程的项目使您能够通过编写生产级代码来成长为开发人员。

  • 强大的CI渠道:开源项目向初学者介绍了持续集成和部署服务。 强大的CI管道将帮助您学习如何读取和理解CI日志。 它还将为您提供处理失败的测试用例和代码覆盖问题的经验。

  • 参与代码计划(例如Google Summer Of Code ):参与组织表明愿意致力于项目的长期开发。 它们还为新来者提供了获得现实世界发展经验并获得报酬的机会。 参加此类计划的大多数组织都欢迎新手。

7个适合初学者的组织

  • Coala(Python)
  • oppia(Python,Django)
  • DuckDuckGo(Perl,JavaScript)
  • OpenGenus(JavaScript)
  • Kinto(Python,JavaScript)
  • FOSSASIA(Python,JavaScript)
  • Kubernetes(开始)

翻译自: https://opensource.com/article/18/4/get-started-open-source-project

python开源项目贡献

python开源项目贡献_为开源项目做出第一笔贡献相关推荐

  1. node.js是开源的吗_为开源做贡献并不难:我为Node.js项目做贡献的旅程

    node.js是开源的吗 As a developer, you should consider contributing to open source software. Many of your ...

  2. 致谢 开源开发者的贡献_对开源做出的贡献如何使我成为更好的开发人员,以及如何做到这一点...

    致谢 开源开发者的贡献 by Luciano Strika 通过卢西亚诺·斯特里卡(Luciano Strika) 对开源做出的贡献如何使我成为更好的开发人员,以及如何做到这一点 (How contr ...

  3. 开源供应链金融_成为开源供应链

    开源供应链金融 我敢打赌,最擅长管理和影响开源供应链的人将最有资格创造最具创新性的产品. 在本文中,我将解释为什么您应该成为供应链影响者,以及您的组织如何成为供应链中的积极参与者. 在我以前的文章&l ...

  4. 开源管理项目管理_避免开源项目管理中的不良做法

    开源管理项目管理 在奥斯汀的OpenStack峰会期间,我有机会与一些人谈论了我在运行开源项目方面的经验. 事实证明,在社区中闲逛并为许多项目做出了多年贡献之后,我也许可以为许多新手提供一些后见之明和 ...

  5. 开源软件使用_消费开源软件:如何使用和购买

    开源软件使用 供应商和原始设备制造商 (OEM)以及他们的IT客户,政府和学者都在使用,购买和制作开源软件,并且常常同时进行这三项活动. 这是考虑一个人与开源软件项目的关系的好方法. 关于开源软件项目 ...

  6. javax maven项目缺少_教育平台项目后台管理系统:介绍与搭建

    项目架构 项目介绍 教育后台管理系统是提供给相关业务人员使用的一个后台管理系统,业务人员可以在这个后台管理系统中,对课程信息.讲师信息. 学员信息等数据进行维护. 课程管理模块 课程管理 新建课程 条 ...

  7. 开源 计划管理_公司开源计划的三大好处

    开源 计划管理 从Red Hat到互联网规模的巨头(例如Google和Facebook),许多组织已经建立了开源程序 (OSPO). 开源程序管理者网络TODO Group最近对公司的开源程序进行了首 ...

  8. 开源硬件 专利_与开源思想领袖的专利巨魔和开放文档格式

    开源硬件 专利 在高登·哈夫(Gordon Haff)的博客上,红帽的高级云推广员Connections与开放源代码计划总裁西蒙·菲普斯 ( Simon Phipps)谈及了美国软件专利案以及英国决定 ...

  9. 项目结构_组织结构对项目影响系列课程---项目式组织结构

    在前面的几篇文章中我们分别介绍了,系统型(简单型),职能型,弱矩阵,平衡矩阵,强矩阵结构的优点和缺点及它们带给项目的影响.今天我们介绍项目式组织结构的优点和缺点及其可能产生的影响. 从结构图不难发现, ...

最新文章

  1. 【PyTorch学习笔记】4:在Tensor上的索引和切片
  2. JAVA操作properties文件
  3. alipay html5 app,H5App支付宝开发详解
  4. 天池读书会六月场来啦,零基础也能听的懂的编程分享!
  5. 开启简单的laravel5 MVC模式
  6. xshell 上下左右键乱码和退格键失效
  7. Riot工程师:三步让你的游戏更新更快更小
  8. 基于ssh框架mysql的jsp系统远吗_JSP+SSH+Mysql实现的学生管理系统
  9. oracle 修改sga参数,oracle 参数文件的修改,sga pga参数的修改
  10. PBRT——零基础到完全吃透系列
  11. 微信小程序php后台实现
  12. 安装SqlServer 2016 2017 时,提示需要安装oracle JRE7 更新 51(64位)或更高版本
  13. 《插件积累》页面音乐下载,付费音乐下载.
  14. 计算机指数函数符号,数学公式及符号大全
  15. Codeforces 1013 A. Piles With Stones
  16. PCI GXL学习之再造篇
  17. faster rcn固定输入图片尺寸(一)
  18. python随机森林变量重要性_python机器学习之随机森林(七)
  19. 2019年Java程序员的学习路线
  20. skmetrics输出acc、precision、recall、f1值相同的问题

热门文章

  1. jdbc连接mysql数据库,设置字符集编码
  2. 简易图片打像素标签工具
  3. R语言矩阵操作:根据值找到行号和列号
  4. Ceph Calamari监控配置
  5. oracle图书操作、sql语句查询+授权、视图、索引、表操作
  6. java中怎么使用json数据_java中使用Json数据
  7. 逆向,真是一件苦差事
  8. 超细!在浏览器输入xxxhub 回车之后发生了什么?
  9. 2022-2028年全球与中国婴儿食品包装行业产销需求与投资预测分析
  10. 基于TSUNG对MQTT进行压力测试-测试结果