python开源项目贡献

我16岁的儿子Prahlad刚走进我们的公寓。 “他说什么???” 我问。 “他说'是'。”

轻描淡写,玩起来很酷,就像许多青少年与父母所做的一样。 但是我知道他很兴奋,也许有点害怕。 他刚刚在我们位于澳大利亚布里斯班的公寓楼旁的大楼的桌面和角色扮演游戏商店中工作。

我指导他如何获得它。 我看到他对他们在那里出售的游戏充满热情。 他和他的朋友们在那里玩魔术:聚会 (MTG),几个星期前,我回到了我们公寓里玩游戏的20个青少年(是的, 二十个 !)的家中。 他浏览了最近的MTG预发行版并整日播放。

“为什么不问肖恩,是否可以在商店做一些兼职工作?” 我建议。 肖恩(Sean)是商店的所有者。

普拉拉德(Prahlad)问西恩(Sean),西恩(Sean)说他在那里不需要做任何工作。

我告诉他:“回去告诉他你想获得工作经验。”   “告诉他,您将免费获得它。这样您就可以向他学习。他经营着成功的企业,您可以学习到这一点。您可以学习如何成为地牢大师,如何举办活动以及如何做。进行客户服务。您可能会找到扩展业务的方法。如果它没有变成付费的演出,那么您可以根据经验在另一家商店找到一份工作。”

所以他进行了交谈,明天开始。

GitHub现在对您的软件事业产生的影响

2017年,我在Medium上撰写了(迄今为止)最受欢迎的文章,“迄今为止, Impact GitHub正在影响您的软件职业,…… ”。 在那篇文章中,我提出了关于如何通过开源贡献来发展事业的愿景。 显然,它令人震惊- 在Hacker News上获得了382分和237条评论 。 许多评论是如此讨厌它-他们不同意我的主要前​​提-但我感到他们错过了重点。 当时我是一名在Red Hat工作的具有10年工程经验的招聘人员。

他们说:

  • 我在工作中的经历很不典型。 没有其他机会。
  • 我不知道我在说什么,因为我是一名招聘人员(他们一定已经跳过了“红帽的10年工程学”部分)。
  • 对于在BitBucket中工作的公司中从事临时工作的开发人员而言,这是不切实际的建议。
  • 对于在法规和安全性高的金融部门公司中工作的开发人员来说,这是不可能的。
  • 如果您不愿意在工作之外牺牲自己的生命,那是不可能的。
  • 只是不可能。

除了挑战,我无所不爱,所以我进行了“深层掩饰”。 我辞掉了招聘工作的工作,而在一家使用BitBucket并具有PCI兼容安全性的纯封闭源公司中获得了软件工程师的工作。 14个月后,我被Camunda聘请为Zeebe (一个协调微服务的工作流引擎)的开发倡导者,纯粹是基于我在工作时的开源贡献。 我刚刚完成了我在中型文章的评论中建议读者做的所有事情。

当我这样做的时候,我没有牺牲自己的爱好和家人。 事实上:

  • 我一直在努力建设Magikcraft.io
  • 我为Minecraft的1型糖尿病做了一个发布活动,该活动是为Mojang的YouTube频道拍摄的。
  • 我与妻子一起参加三项体质比赛的训练并参加了比赛-这是她赢得比基尼造型大赛的机会。 她赢得了比赛的冠军,我最终在州级比赛中获得第二名。
  • 我受过训练,以领导个人发展课程。
  • 我和儿子一起学习了三个月的课程。

我并不是在吹牛,只是为了证明它不是零和游戏,就像有人画的那样:“ 哦,这很容易说出来,但是它赋予那些愿意免费工作并牺牲时间的人的特权。他们的家人。

假。

当然,对于以“不可能”结论为出发点的人,没有足够的证据来证明这一点。对于那个人,我说:“您现在想看到什么?” 不是因为它会改变他们的想法,而是因为它对我来说是丰富的灵感来源。

误解和稻草人的论点

在勾勒出如何做之前,我想明确指出一些共同点,这些要点是:

  • 您无法从GitHub上的贡献图中得知有关开发人员的任何信息。
  • 我雇用了许多开发人员,但从未看过他们的GitHub个人资料。

让我这样说:这些人不会通过您的开源贡献被录用。 这些就是所有这些。 关于这一点,我还有更多要说的,但我将不再进一步解决它们。 我也想澄清一下:我并不是说您必须这样做。 只是你可以

我是怎么做到的

正如我在原始“中型”文章中向评论员指出的那样,在日常工作中,您既可以使用开源库,也可以在新项目中向您的堆栈中引入一些内容。 如果您没有日常工作,则可以轻松地将它们引入堆栈。

在日常工作中为新项目进行研究时,我尝试了许多不同的项目,包括TypeScript gRPC服务器。 我发现了一个错误,并打开了一个问题 。 然后我为它写了一个补丁,将其合并 。 我们没有使用该项目,但这只是成为全球社区成员的一部分,例如在我们公寓楼的走廊或大街上捡纸。 我们最终确实使用了gRPC库,并且我们需要它来支持gRPC流。 所以我为此写了一个补丁, 它被合并了 。 那份贡献足以使我在npm的贡献者中被提及。

我打开问题并将补丁提交给Netflix Conductor。 没有什么惊天动地的事情,只是为我所居住的环境做出了贡献。

我向管理层解释的一件事是,我们应采用的技术的关键决策因素是如何快速解决问题,如果我们为自己的生产用例打补丁,维护人员将如何接受我们的建议。将要求拉到主流。 没有人参与在Camunda雇用我的工作(这些偷窥者回叫他们说他们从来没有看过GitHub上人们的贡献:“ X因子”法官也不看你在镜子前练习,只是说说而已)。 。 但是,我会说,谷歌和Facebook的聪明的招聘人员会基于观看我的活动来打我。 仅仅找到一份工作是不够的,但是确实有人会来找您,尤其是在您建立历史的时候。

大突破

当我们着重使用Zeebe作为新的微服务项目的编排引擎时,发生了一个重大突破。 因为Zeebe拥有正式支持的Go客户,所以我已经不知所措了,这是我获得使用Golang团队代码的机会。 我已经在其中进行了一些概念证明和附带项目证明,但是我们使用JavaScript进行了编码。 六人一组中没有其他人热衷于此,因此,我们需要一个JavaScript客户端。

我设法使TypeScript用于新项目,因此我创建了TypeScript客户端库。 作为公民职责/评估的一部分,我记录了一些问题并为Zeebe贡献了一些小补丁。 现在,我致力于管理使客户端库开源的想法。 我的论点分为两部分:

  1. 这意味着我们的图书馆有机会成为使用最广泛的图书馆,这意味着它会受到更多关注,并有可能获得更广泛社区的补丁。 换句话说,我们不会最终在内部维护某些东西,后来才发现有一个我们必须依靠的更广泛使用/支持的东西。
  2. 这是一个很好的开发人员营销工具,可以提高我们的知名度,建立我们的工程品牌并在招聘时在市场中脱颖而出。

我对准了。 但是,该公司没有GitHub。 我的解释是,我们需要一个GitHub组织才能与Camunda的工程师进行协作。 这是一家没有开源经验的公司。 我的优势是我花了10年的时间在其中工作,因此我既知道它的工作原理,又知道它的工作原理。 回顾过去,如果我有一点疑问的话,如果我“听取评论者的意见”,我可能不会像以前那样坚持。

到位后,我们将库实时发布并发布到npm 。 作为公民成员,随着时间的推移,您可以随着时间的发展而发展,其中之一是机遇。 我可以看到,这是一项激动人心的技术,势必会在不断上升的浪潮中落下,而我们也将顺应潮流。 而且没有JS客户端。

花费了整整一年的时间来调整这些因素,但是如果我坐在办公桌前提交BitBucket(是的,我也将代码提交给私有BitBucket存储库),那么我不会在10中看到这样的机会年份。

我在Medium.com上写了一篇文章,宣布该库 。 我真的为此感到麻烦。 我跳了枪,在发布之前没有得到一致的同意。 学过的知识。 但是,图书馆,文章以及我对问题,补丁和Slack频道的参与使我在Camunda的人们中引起了注意。 这样就足够了,以至于当我在寻找其他职位时,他们Swift采取行动在澳大利亚聘用了第一名员工,这比本地公司搬迁要快,即使在时区和基础设施方面都具有优势。 在与Camunda的联合创始人之一BerdRücker进行的一次电话会议上,我分享了为什么我认为这是一个很好的选择:在Red Hat,我们经常会聘用或收购(将整个项目,人员和技术都带进来–这是“从社区获得”和“雇用”)。

我们会找到一个已经在做的人,然后付钱给他们为我们做。 通常,当您雇用时,您会找到一个人,付钱给他们,并希望他们会喜欢他们所做的事情并且擅长于此。 雇用开源贡献者可以降低风险。 与他们一起工作可能仍然很糟糕,但是您已经对如何一起工作有所了解,并且知道他们的工作是什么样的。

这是普遍原则

所以,对我儿子来说也是一样。 他有机会在游戏商店证明价值,建立信任并获得技能。 当时间合适时,他将开始在当地或其他地方获得报酬。

在2004年Red Hat的职业博览会上,我带来了一篇长达20页的论文,我在其中预测了技术的未来。 设备缩小到手持式; 紧急网络效应。 我是在服务台上工作时偶尔写的,介于在我以20美元的价格购买的旧计算机上安装Linux之间。

在最近的Slack讨论中,有人说:“开源贡献的问题在于,它有特权的人有时间这样做。” 首先,这是开源的机会 ,而不是问题。 其次,每个人都有时间(如果他们使用公民义务,我会说这是公民的义务)来贡献一些东西 。 最后:是的,是的。 就像每个星期五晚上有时间去俱乐部和酒吧并在卧室里练习排骨的人一样,有幸能够被A&R人才发现并发现唱片交易。

甲壳虫乐队在汉堡连续踢了两年以磨练自己的技能。 作为专业的软件开发人员,如果您仍然要磨练自己的手艺,那么您也可以通过这样做来提高市民的品位和拥有自己的可移植的公共声誉。

或不。 随你。 我只是说可能。


本文最初在DEV社区上发布,并经许可进行了修改和重印。

翻译自: https://opensource.com/article/19/5/how-get-job-doing-open-source

python开源项目贡献

python开源项目贡献_如何通过为开源项目做贡献来发展自己的职业相关推荐

  1. 如何从0开始开源项目参与_如何开始一个开源项目

    如何从0开始开源项目参与 by Dmitriy Strukov 德米特里·斯特鲁科夫(Dmitriy Strukov) 如何开始一个开源项目 (How to start an Open Source ...

  2. 开源 协作工具_使用HackMD在开源项目上进行协作

    开源 协作工具 HackMD.io是一个开源的Markdown协作编辑器. 它使人们可以共享,评论和协作文档. 作为开源软件,用户可以选择使用在线平台还是使用上游项目CodiMD将其安装为本地服务. ...

  3. 开源图书管理_图书馆资源探索开源选项

    开源图书管理 在其他领域,所有类型的图书馆对于开源软件都有相同的问题. 开源对我有意义吗? 哪些开源软件包与我组织中已有的技能很好地融合在一起? 我可以从哪里获得针对特定开源软件包的培训,文档,托管和 ...

  4. 开源虚拟示波器-_一个新的开源数据库,TP-Link路由器上的开源固件以及更多新闻

    开源虚拟示波器- 在本周的开源新闻摘要中,我们介绍了Attic Labs的新开源数据库,TP-Link路由器上的开源固件等. 2016年7月31日至8月6日的开源新闻摘要 Attic Labs宣布新的 ...

  5. java后端简历项目经历_从面试官甄别项目经验的角度,说说如何在简历中写项目经验(Java后端方向)...

    在大多的JD(职位介绍)里,会写明该职位需要xx时间的相关经验,换句话说就是需要在简历中看到一定年限的相关商业项目经验,否则估计连面试的机会都没. 在本文里,不讨论这种门槛是否合理,而会以Java相关 ...

  6. python实用性函数分享_分享|3个开源的 Python Shell

    Python是一个高级.通用.结构化且强大的开源编程语言,广泛用于各种编程工作.它拥有一个全动态类型系统和自动内存管理,与Scheme,Ruby,Perl和Tcl的十分相似,避免编译型语言的许多复杂地 ...

  7. python自动源码_谷歌推出Tangent开源库,在Python源代码上做自动微分

    原标题:谷歌推出Tangent开源库,在Python源代码上做自动微分 李林 编译自 Google Research Blog 谷歌今天推出了一个新的开源Python自动微分库:Tangent. 和现 ...

  8. python电商项目介绍_电商大数据项目-推荐系统实战(一)

    本项目是基于Spark MLLib的大数据电商推荐系统项目,使用了scala语言和java语言.基于python语言的推荐系统项目会另外写一篇博客.在阅读本博客以前,需要有以下基础: 1.linux的 ...

  9. python项目构建_通过构建4个项目来学习Python网络

    python项目构建 The Python programming language is very capable when it comes to networking. We've releas ...

最新文章

  1. 过滤输入内容中是否含有特殊字符与表情
  2. linux ssh 下实现免密码登录
  3. python语言用什么来表明每行代码的层次关系_2021年尔雅通识课《切削原理与刀具》课后习题答案...
  4. Django模板语法
  5. How to use price determination in Quotation scenario
  6. infoseccrypto_java下载_關於php接ICBC的支付接口的解決方案
  7. cygwin 远程连接linux,Cygwin解决Windows远程登录linux服务器
  8. 01章.计算机网络概述(1.1~1.6)
  9. VB中的New 与 CreateObject的区别
  10. 基于隐马尔可夫模型的有监督词性标注
  11. CMOS数字集成电路
  12. 用友/U8+V16.0修改单据时,其他入库单其他出库单无保质期信息且置灰无法输入/修改
  13. vs2008中caption属性如何设置为中文
  14. 利用接口实现动态加载类以及 Activator.CreateInstance用法示例
  15. 别人有公众号你也可以有,5分钟申请公众号详细步骤
  16. 白嫖党最爱!撸了郭霖大神写的Framework源码笔记,最强技术实现
  17. 乐视账号服务器关闭,乐视手机重置后无法登录账号 官方给出解决方案
  18. 使用阿里云PCDN降低内容分发成本
  19. Python骇客帝国弹幕1.0
  20. anaconda python3.6版本_Anaconda Python V3.6 官方版

热门文章

  1. nacos服务注册与发现
  2. 【转】ASIHTTPRequest开源类库进行http请求
  3. Linux-insmod/rmmod/lsmod驱动模块相关命令(10)
  4. [MySQL Reference Manual] 24 MySQL sys框架
  5. Web API 设计摘要
  6. 远程桌面超出最大连接数问题
  7. 如何改变标题栏的宽度
  8. 大屏监控系统实战(15)-打包上线及总结
  9. linux卸载mysql和myodbc_linux下卸载mysql rpm安装方式和源码安装方式的两种方法
  10. php 导出excel类,php 导出excel类