Daniel Berrange

75 积分
User profile image.

Daniel 在 Red Hat 编写开源软件已有 16 年,担任 libvirt 项目的首席架构师,并参与虚拟化管理堆栈的各个层面。Daniel 还开发了 Entangle 应用程序,用于从 Linux 桌面控制 DSLR 相机。在长期对摄影产生兴趣之后,注意力已转向掌握历史和替代摄影捕捉和打印技术。这促成了许多针孔相机的设计和创造,以及对流明和化学成像工艺的实验。偶然发现伦敦市中心存在一个天文俱乐部,也促使他从事天体摄影和射电天文学方面的工作。

创作内容

创作评论

我的第一个上游贡献是在 2001 年我获得学位后的第一份工作中。我们公司 Bibliotech 为学校建立了一个社区网站,该网站被翻译成多种语言。它是用 Perl 编写的,因为它开始获得可用的 UTF-8 支持,但我们在测试期间遇到了一些错误。一个函数会报告字符串长度(以字节为单位而不是字符为单位),并且在正则表达式引擎中,“.”会匹配字节而不是字符。我为第一个问题发送了一个补丁,该补丁在一天后被合并,并为第二个问题发送了一个重现器和部分补丁,然后维护人员在几个小时后正确地修复了该问题。

https://grokbase.com/t/perl/perl5-porters/0183apbbsp/utf-8-bugs-in-stri…

我了解到 Perl 维护人员反应非常迅速,并且 Perl 正则表达式引擎的内部结构非常可怕。

我发现的另一个重要的事情是,积极努力让新的贡献者参与到项目的日常运作中,以便他们对项目的未来成功抱有期望。如果有一组项目维护人员拥有提交权限,并且必须批准所有贡献,请尝试定期将常规的外部贡献者提升到这个角色。尽量避免陷入这样的陷阱:认为你必须等到他们对代码的了解程度与现有维护人员相同。相反,要尽早提拔人员,期望他们能更快地适应这个角色。这对于最初由单个供应商主导的项目尤为重要,因为建立多样性是项目长期健康的关键——如果原始供应商失去兴趣,它会给项目提供更好的生存机会,使其在没有他们的情况下也能生存下去。

© . All rights reserved.