Daniel Bachhuber 在 Roots Radio Podcast 上讨论 WP-CLI、WP REST API 以及为开源做出贡献的挑战
已发表: 2016-05-16
WP-CLI 项目的维护者和 WP REST API 的贡献开发人员 Daniel Bachhuber 在最近一集的 Roots Radio 播客中加入了 Chris Carr 和 Austin Pray。 Bachhuber 讨论了他最近在“A More RESTful WP-CLI”上众筹的经历,以及他多年来作为各种开源项目的贡献者所遇到的挑战。
在本集的第一部分,Bachhuber 分享了他如何利用 WordPress 社区资助的 283 小时来推进 WP-CLI 和 WP REST API 项目。 这笔资金使他有机会在两个项目之间分配时间。 Bachhuber 在 1 月和 2 月为 REST API 投入了大约 95 小时,但大部分时间都用于使 WP-CLI 对使用 REST API 的开发人员更加友好。
“WordPress 开发人员现在将花费大量时间来编写 REST 端点,将其功能公开给世界,如果 WP-CLI 能很好地与之互操作并允许您在命令行中使用该功能,那就太好了无需单独编写自己的 WP-CLI 命令,”Bachhuber 说。
他讨论了确定这一广泛目标的挑战以及他在此过程中对众筹的了解。
“RESTful WP-CLI kickstarter 项目是故意雄心勃勃的,因为我是一个有大创意并且喜欢做大事的人,”Bachhuber 说。 “到目前为止,我能够交付和制作一些东西让我感到非常高兴,还有一些其他功能,由于某种原因,我还没有完全能够执行,这有点令人沮丧.
“这是一场完全不同的球赛,试图管理你的 Kickstarter 支持者的期望,而不是一个单一的客户。 我有 107 个客户,我必须让他们开心,”他说。
尽管如此,Bachhuber 表示他能够将 WP-CLI 的问题积压减少到不到 60 个问题,并且专门的时间使他能够解决“从一开始就萎靡不振”的旧问题。
作为为众筹活动的贡献者提供的奖励的一部分,Bachhuber 提供了与个人和组织进行咨询的时间,他发现这比传统的实物奖品奖励更容易。
“我真的很高兴我选择 [咨询] 而不是必须提供实物赃物,因为很难采购和运送给每个人,特别是当你有国际支持者时,”他说。 “尽管我花了很多时间来兑现奖励、与人交谈、与他们通话并亲自与他们会面,但这比在世界各地发送 100 个咖啡杯要容易得多。”
当被问及他是否会再做一次时,Bachhuber 说是的,但强调只有在与生活的其他方面保持健康平衡的情况下,花这么多时间在开源项目上才有效。
“我认为,如果你定期为开源项目做出贡献,甚至维护它们,那么在这和其他事情之间平衡你的时间是非常重要的,”他说。 “如果你把 100% 的时间花在它上面整整一个月或六个月,你真的很容易对开源项目感到筋疲力尽。

“我非常有意地说,我筹集的资金将用于支付我参与该项目的六个月,一定数量的时间,而且这将是一个兼职的事情。 这是一种非常健康的方法。 我想如果我只是试图潜入其中,把它搞定,然后继续做下一件事,我会筋疲力尽,”巴赫胡伯说。
从事开源项目的情感挑战
在采访过程中,Bachhuber 被要求分享他对 2 月份发生的他所说的“REST API 混乱”的感受。 REST API 团队在 2015 年 9 月编写了一份合并提案,建议将 API 合并为两部分——4.4 中的基础设施以及 4.5 或 4.6 中的帖子、评论、术语和用户端点。 在部分执行该提案后,团队举行了一次状态聊天,讨论了下一步的计划。
Bachhuber 表示,在 Matt Mullenweg 表示该项目需要与 WordPress 管理员的功能对等之前,可以考虑合并任何端点之后,讨论变成了“一个非常情绪化的事件”。 在与少数已经分散的专门贡献者一起投入了数百小时的项目后,他发现这个新要求是一颗难以下咽的药丸。
“无论好坏,作为一个开源项目的维护者甚至参与者,你必须厚脸皮,并意识到所做的决定始终与你无关——它们与项目有关,”巴赫胡贝尔说。 “即使你个人被这个决定冒犯了,也没关系,因为这与你无关。 情绪上真的很难处理。”
Bachhuber 多年来对开源项目的贡献和维护让他学到了一些关于管理压力和冲突的知识,他计划在 WordCamp Europe 的一场题为“我的哀悼,你现在是一个流行的操作系统项目的维护者”的演讲中分享这些知识。 ”
“我在维护开源项目中找到了很多乐趣,”Bachhuber 说。 “我还必须积极努力解决等式的情感方面,以确保我处于健康的空间以继续维护该项目,并且该项目不会影响我个人。 我花了好几年才达到我对此感到满意的地步。”
就 WP REST API 而言,Bachhuber 已经到了一个可以区分他的情绪反应和对不同意见的反应的地方。
“我现在已经到了我关心但我不在乎的地步,”他说。 “从某种意义上说,我关心的是我仍然希望看到这些端点进入核心并看到我们的劳动成果得以实现。 我不在乎,因为我对在任何特定时间范围内发生的事情都没有感情上的依恋。 老实说,我宁愿它在它准备好过早地发生的时候发生,我意识到我可能不是最有资格做出这个决定的人。”
在本集的其余部分,Bachhuber 和 Carr 讨论了 React、Redux、Karma、Enzyme 以及其他使用 REST API 进行测试和开发的工具。 查看 Roots Radio 上的这一集录音,了解有关 Bachhuber 在 WP-CLI 上的工作和他的众筹经验的更多详细信息。
