大咖直播-鸿蒙原生开发与智能提效实战!>>> 了解详情
写点什么

GitHub 开源项目负责人谈开源

  • 2015-10-14
  • 本文字数:1510 字

    阅读完需:约 5 分钟

All Things Open 2015 上, GitHub 的开源项目负责人 Brandon Keepers 给出题目为“ open source principles for better engineering teams ”的报告。在此之前, OpenSource.com Robin Muilwijk 对其进行了采访。 Brandon 就其与开源的缘分、当前工作的职责、GitHub 及员工与开源的关系等方面的问题一一进行了回答。

Brandon 简介及其与开源的缘分

在 2011 年加入 GitHub 之前,Brandon 曾是设计 speakerdeck.com gaug.es harmonyapp.com 的五人团队之一。之后,他曾经在 GitHub 参与过 GitHub Flavoured Markdown 、通知、wiki 等内部工具的开发。目前,Brandon 主要负责 GitHub 开源相关的工作。其具体职责包括帮助公司和社团克服开源方面的难题、寻找凸显其他社团成果的方法以及为 GitHub 建造更好的角色模型等。

Brandon 表示,开源对其作为软件工程师的成长非常关键。他学习了如何利用开源语言进行编程,尝试了利用开源库和框架来设计应用程序,并知道了如何利用开源的思想来编写软件。可以说,Brandon 的一路蜕变与开源密不可分。

GitHub 开源项目负责人的职责

谈及该问题,Brandon 首先提到了 GitHub 在开源方面的影响。作为一个影响力很大的网站,GitHub 聚集了全球的工程师来进行开源方面的努力。该公司一直在努力维护一个稳定、健康发展的开源生态圈,包括降低参与门槛来提高开源的吸引力、为初始社团提供帮助以及增加开源的多样性等。因此,作为 GitHub 的开源项目负责人,Brandon 需要为很多项目提供贡献、编写流程自动化的代码、与来自不同社区的成员进行沟通以提供更好的帮助以及准备 / 参与各种会议等等。

GitHub 自举行为的意义

Brandon 认为,利用 GitHub 来构建 GitHub 的行为意义非凡。它让团队可以充分了解 GitHub 的优势和不足,让研发人员更加了解客户使用产品的方法和感受、更愿意倾听客户的反馈以及不断把积累的经验应用到产品中。

GitHub 工程师与开源

Brandon 表示,作为一个诞生于开源社区的网站,GitHub 及其工程师与开源形影不离。他们不仅仅了解开源的概念,更是经常以开源方式进行工作。在公司内部,工程师参与的所有环节都是透明的。无论是代码审查、系统更新还是产品问题诊断,任何工程师都可以看到他所关心的内容。以公司的定制化聊天室 Hubot 为例,它帮助工程师部署代码、确定参与人员位置、诊断位置等等。公司的所有员工都可以编写并部署脚本来让 Hubot 拥有新的技能。

良好工程师团队的秘诀

开源项目所面临的一个很大局限就是参与人员的地域分布广和工作时间不统一。在这种情况下,成员之间很难进行面对面或者及时的消息沟通。但是,GitHub 中的很多项目依然取得了成功。Brandon 认为,这其中的最大秘诀就在于独特的沟通方式——透明、参与和合作。透明保证了代码及其中间流程的可见,而参与使得参与人员能够明确项目的进展和目标。最后,参与人员的合作有利推进了项目的进展。

对 GitHub 贡献者和维护者的建议

谈到对 GitHub 贡献者和维护者的建议,Brandon 表示,大家需要加强对开源重要性的认识。现在,基本上所有的软件都和开源软件相关。从使用的编程语言或者库、运行的服务器、传输数据的网络到访问数据的浏览器或终端,它们都可能与开源有关。可以说,开源已经成为当代软件开发的基石。Brandon 套用 Steve Weber 谈及改革的名言说道,软件或许就是推动当今技术革命的蒸汽机,而开源社区的想法比起所产生的代码更具有深远意义。开源已经改变,并将继续改变软件开发的方式。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-10-14 19:003502
用户头像

发布了 268 篇内容, 共 136.8 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

火山引擎在行为分析场景下的ClickHouse JOIN优化

字节跳动数据平台

数据库 数据分析 OLAP Clickhouse 数据研发

实现企业内部知识流通?搭建企业内部Wiki

Baklib

软件测试 | 测试开发 | Jenkins中,如何管理用户及其相对应权限?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Jenkins通过什么方式报警?

测吧(北京)科技有限公司

测试

Log4j2远程执行代码漏洞如何攻击? 又如何修复

琦彦

log4j2 Log4j2 漏洞 10月月更

微服务的设计模式,你用了几个

琦彦

微服务架构 设计模式 10月月更

9个 方法预防租赁LED显示屏舞台隐患

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

软件测试 | 测试开发 | 做到这几点,你也能成为 BAT 的抢手人!

测吧(北京)科技有限公司

测试

新零售SaaS架构:中央库存系统架构设计

AI架构师汤师爷

SaaS 架构设计 新零售 库存系统

软件测试 | 测试开发 | 接口抓包分析与Mock实战

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Frida 实现 Hook 功能的强大能力

测吧(北京)科技有限公司

测试

持续测试成熟度模型

陈磊@Criss

从启动到关闭 | SeaTunnel2.1.1源码解析

Apache SeaTunnel

软件测试 | 测试开发 | 测试平台开发-前端开发之数据展示与分析

测吧(北京)科技有限公司

测试

挑选文档协作工具的技巧

Baklib

软件测试 | 测试开发 | 搞清楚这六个能力模型,轻松应对互联网裁员潮

测吧(北京)科技有限公司

测试

技术分享 | 实战演练

测吧(北京)科技有限公司

测试

企业知识分享|如何设计产品手册/产品说明书?

Baklib

软件测试 | 测试开发 | 如何安装Jenkins 插件?

测吧(北京)科技有限公司

测试

喜报!霍格沃兹第二届火焰杯软件测试高校选拔赛荣获大奖

测吧(北京)科技有限公司

测试

易宝正式加入openGauss社区

Java 8的新特性

琦彦

java8 10月月更

软件测试 | 测试开发 | 学做测试平台开发-Vuetify 框架

测吧(北京)科技有限公司

测试

秋招收到10几个offer 说说我的想法吧

Geek_0c76c3

Java 数据库 开源 程序员 开发

JVM——内存泄漏与内存溢出

琦彦

JVM 内存泄漏 内存溢出 10月月更

毕业后什么都不会,找了个培训班学软件测试学了4个月,拿到offer,坐等入职

测吧(北京)科技有限公司

测试

openGauss企业级开源数据库获第十届中国电子信息博览会金奖

软件测试 | 测试开发 | 一步一步学测试平台开发-Vue restful请求

测吧(北京)科技有限公司

测试

Qualcomm Atheros wallys QCA9880 Dual Band 2.4GHz 5GHz 2x2 MIMO 802.11ac Mini PCIE WiFi Module//QCA9882 3x3 FCC/CE/IC

wallys-wifi6

QCA9880 QCA9882

软件测试 | 测试开发 | 静态扫描体系集成

测吧(北京)科技有限公司

测试

ElasticSearch 不停服升级实践

移动云大数据

elasticsearch

GitHub开源项目负责人谈开源_语言 & 开发_张天雷_InfoQ精选文章