亚马逊AWS官方博客

OpenSource | 亚马逊人与开放源软件庆祝月活动

在本博客推出之前,“开放源软件庆祝月活动”Hacktoberfest 已于去年 10 月举行。Amazon 的多位员工参与其中,借此机会为工作相关项目、激情项目或两者兼而有之的项目贡献一份力量。他们的开放源经验起点高低不同,有新兵也有老手。得益于 Hacktoberfest 的举行,所有人现在都发挥了自己的作用 (并赢得 T 恤衫!)。以下是他们的一些故事。

Alex Weibel

GitHub/Twitter 我是 Amazon s2n 项目的维护人员,这是一个传输层安全性 (TLS) 协议开放源实现项目,用于通过互联网安全连接到网站。去年 10 月我第一次听说 Hacktoberfest,我想要是让 s2n 项目能参加一定非常棒。在 10 月前几天,我提交了一份变更以清理我们“入门”文档,确保新开发人员可以方便地在本地下载、构建和测试 s2n。在完善我们的“入门”文档后,我检查了还未解决的 GitHub 问题,为一切看似适合新开发人员入手内容上增加了 hacktoberfestgood first issue 标签。在所有的标签都添加完成后,我在 Twitter 上发帖宣布 s2n 参加 Hacktoberfest,我的推文意外增加了 4,000 多次查看和少数转推。在记下来的几周,s2n 获得了来自 Amazon 之外的贡献。 这些贡献更新了 s2n 的版本,从而扫描我们的 Bash 脚本以寻找违反代码规范之处,并增加了新的脚本来寻找缺失版权信息的文件。我们很少获得来自外部的贡献,因此 s2n 拥有两个新的贡献者具有极其重要的意义,这也许是我们通过其他途径无法获得的。总体上,我要说 Hacktoberfest 非常成功,我已经在想明年如何完善它,让新开发人员可以更方便地加入并贡献力量。

Kwun-Hok Chan

我是在推文上第一次看到 Hacktoberfest 的,我想这种想法太酷了——当然不仅仅在于那好看的 T 恤衫☺。我从 1999 年开始就成为一名开放源用户,当时我正上高中,从 Windows 转向了 Linux。后来我忙碌往返于各大论坛,帮助人们解决有关 Linux 的问题。我总是想贡献点什么。虽然我不是代码专家,也不是黑客,但确实也在 GitHub 有几个小的个人项目。因此,当我猛然看到声称可以如此简单地贡献四个 PR 的博文时,我决定也来试试水。对于 Hacktoberfest,我为 freeCodeCamp 做了一些贡献,这是一个类似于维基的软件开发社区。此外我还处理 Prometheus Alertmanager 的 personal fork,与我以前公司搭建的消息收发平台集成在一起。另外还有一个在 AWS 平台上搭建的聊天机器人演示和几个其他小的项目。在以前的工作中,我总是开放源项目的消费者。作为 AWS 的解决方案架构师,我需要了解一些开放源项目/结束,因为我们的客户需要。从我开始加入 AWS 以来,我始终在思考如何可以回馈开放源或开发人员社区。它可能是某种形式的工具、文档、漏洞补丁等等。我很兴奋 AWS 也开始更多参与开放源!

Luis de Bethencourt

加入 Amazon 以前我就一直参与开放源项目,到现在已经超过十年。羁绊最久的是 GStreamer 和 Linux 内核。最初是涉及一个实时食品混合应用程序,供个人使用,这很自然地用到了 GStreamer,因为它是一个非常强大的开放源多媒体框架。我希望此应用程序广为流传,因此对该领域进行了研究,获得了一些有关 debian 封装的经验,最后牵头了一个 Canonical 赞助的 Ubuntu 衍生工具,被称为 Ubuntu Studio。慢慢我开始在 GStreamer 中添加我希望的东西,参加趣味社区,最后成为一个核心贡献者,并取得开放源顾问的工作。我仍然继续参与 Linux 内核,维护 BeFS (BeOS 文件系统),研究我感兴趣的其他东西。另外我还继续积极参与 GStreamer 社区。如果时间允许,我对 Servo 等 Rust 项目也很感兴趣。我 10 月份参加 GStreamer 大会和欧洲嵌入式 Linux 大会期间听说了 Hacktoberfest;我们几个人决定参加,希望赢得 T 恤衫。我非常看重鼓励人们参加开放源社区的活动,认识到它很容易也很有趣,一切贡献都是欢迎的。对于业界老手而言,看到新加入者的活力和兴奋真是太棒了。在 Hacktoberfest 期间,我参加了一些外部 Rust 项目、一个由 Piston 游戏引擎人开发的 PNG 编码器,以及 Sebastian Droege 在处理的 GStreamer 绑定,以使其能够编写 GStreamer 应用程序和 Rust 插件。

Marcin Kolny

GitHub/LinkedIn/个人网站 我从 2013 年开始参与开放源项目。也正是在那一年,我成为 GNOME 基金会的成员,负责维护/支持几个项目 (gstreamermmglibmmsigc++banshee)。 另外我还是会员和选举委员会的成员,我的主要职责是处理和批准或驳回 GNOME 基金会的入会申请。我利用空余时间参与了几个开放源项目,因此参加 Hacktoberfest 是再自然不过的了——此外也帮助我实现了为四个不同的 GitHub 项目做贡献的个人目标。我贡献最多的是我的个人项目 gst-debugger,这是一个用于远程检查 GStreamer 管道的实用工具。 但我对其他项目也作了一些小的更改,例如 rust-chip8。在我的自由时间,我将继续开发 gst-debugger,为几个其他的 GNOME 项目做贡献。

Sanders Lauture

GitHub 我很喜欢在自由时间编写代码。我有一个超过五年的 GitHub 帐户,但我的第一个 PR 是在去年的一个开放源项目中完成的 (在加入 Amazon 前)。Hacktoberfest 是除我自己的外,为其他开放源项目工作的一个好理由。修改我以前从未见过的代码库,始终充满挑战,但看到新的功能成为现实或看到新的漏洞被消除,也总是感觉回报满满的。对于 Hacktoberfest,我的工作涉及 Visual Studio Code 的多个方面——我每天都使用 VSCode,因此如果能让它完善那么一点点将是很不错的。

  • golf1052/base16-generator 是一种 Visual Studio Code 扩展,可以自动让您的 Visual Studio Code 环境使用 base16 主题。Base16 主题非常流行于句法突出显示方面,我希望能够将 base16 主题用于句法突出显示以及 Visual Studio Code 中的 UI 主题。
  • 我修复了一个小漏洞,也就是 base16 主题的名称没有浅色或深色之分,可能导致 Visual Studio Code 中的 UI 主题不正确。 在这次修改前,浅色 base16 主题在 Visual Studio Code 中可能意外变深色 UI 主题。解决办法是检查生成的主题文件,使用算法来确定该主题是浅色还是深色。以前我是直接检查文件名,但这并不总是奏效。
  • 我的第二个 PR 针对 Visual Studio Code 库本身。问题 是扩展名网站上作为预览列举的 Visual Studio Code 扩展并未在 Visual Studio Code 中作为预览列出。我的 PR 解决了这一问题,用户可以查看扩展是否在 Visual Studio Code 中的预览里。

我还对 Signal-Windows 开展了一些重新设计工作,这是一种非官方的 Signal 客户端,适用于 Windows 10 设备,现在我仍在为 Signal for Windows 项目开展一些其他工作。此外我也预计将在未来再次为 VSCode 做点贡献。

Sebastian Rodriguez

我强烈相信开放源,在 2010 年就开始回馈贡献 (针对 ActiveMQ),并与我们对团队一起开发了一个开放源插件,从而可以轻松的向 CloudWatch 发布监控数据。作为 Amazon 的软件开发经理,编写代码并非我的核心日常工作职责,因此我总是尝试寻找一些个人时间,小补一下代码和新的语言。今年我听说了 Hacktoberfest,立即决定报名参加,以迫使我自己以更加专心的方式回馈社区。我分析了使用 Hacktoberfest 标记的 GitHub 中的未决问题,为多个项目/领域做了一些贡献:

找时间回馈开放源社区是一件困难重重的事情,但也正是让社区如此具有启发性的原因所在:大部分贡献者都是利用自己的自由时间,牺牲了他们对家人等的其他个人承诺。

Trivikram Kamat

Github/Twitter 我的团队在一个新项目中试验 TypeScript,我在使用 ts-jest (一种第三方工具) 进行调试时面临一些问题。当问题在 Github 转贴中提出后,拥有者和协作者都给予了很大帮助,2017 年 8 月下旬我提出了自己的第一个开放源 PR。这鼓励我为开放源做出更多贡献,我开始在 Twitter/Github 上关注其他贡献者。Hacktoberfest (预计免费 T 恤衫) 为我提供了一些进一步的启发,最终我为下列项目做了一些工作:

在 NodeJS 项目中,我帮助将 http2 测试覆盖率从 78% 提高到 95% 以上,并解决了一些漏洞。2018 年 4 月发布 Node v10 后,Http2 将走出试验阶段。参与开放源的困难之处并不在代码,而是要计算如何切实地做出贡献。但在第一次贡献后,事情就变得十分清晰、容易。在贡献的同时,还可以学到世界各地开发软件的不同方式,促进开发人员的成长。另外,通过回馈社区还可以让人获得一种满足感。这就好比志愿者工作,或是为非政府组织工作——但是在软件方面。在有时间学习新技术或我团队的交付项目遇到一些阻碍的时候,我将继续做出一些贡献。

Yash Kulshrestha

Github/个人网站 我想参加是因为我是开放源以及它给像我这样初入职场的人与任何领域的专家高手交流合作的机会的粉丝。到现在我已经持续贡献了三年,每次都获得了宝贵经验。在加入 AWS 前,我是一个开放源项目的负责人,尝试在我原来的公司启动创新。对于这次 Hacktoberfest,我的工作涉及我所属的一个 Slack 社区的聊天机器人。具体内容是编写 JavaScript,使用 node.js 和 Docker,以及在 Amazon ECS 上运行 (我来自 ECS 团队)。脚本得到了协调人的高度赞扬 (我也获得了乐趣)!我继续与 Michael Stephens 一起维护该项目,他也是来自同一 Slack 社区的协调人。 最近我们开始了另一个项目,为 Slack 社区提供更精细化的邀请系统。得益于我的贡献,从那以后我也成为该社区的一位协调人。;-) 开放源社区基本就是我大部分计算机科学知识的来源。我最初的职业是一位电气工程师,对软件知之甚少。后来机缘巧合我成为了一名移动开发人员。我沉浸在 Javascript 的世界,那里涉及许多开放源库,我开始学习与合作。我继续每天为我的 GitHub 做一点贡献 (我已经在此道路上飞奔了大约两年!);我使用它来学习新事物,扩大我的知识面。


请关注 @AWSOpen 或访问我们的网站:opensource.amazon.com,了解 AWS 在开源方面的最新动态。