
Luis Ibáñez 在 Google Inc. 芝加哥办事处担任高级软件工程师。本网站表达的观点仅代表他个人。您可以在 Github 上找到他: http://www.github.com/luisibanezand,在 Twitter 上:http://www.twitter.com/luisibanezHe。他曾任 Kitware Inc. 的技术主管和开源 EHR 代理 (OSEHRA) 的开源社区发展主管。在 Kitware,他密切参与了医疗成像应用开源软件的开发,特别是与 Insight Toolkit (ITK) 的合作。Luis 是开放获取的坚定支持者,也是 Insight Journal 的编辑之一,Insight Journal 是一份强制执行可重复性验证的 OA 期刊。在与其他讲师的合作下,Luis 在 2007 年至 2013 年期间在伦斯勒理工学院 (RPI) 教授了开源软件实践课程,并在 2011 年至 2014 年期间在纽约州立大学奥尔巴尼分校教授了该课程。Luis Ibáñez 于 1989 年获得哥伦比亚桑坦德工业大学 (布卡拉曼加) 物理学学士学位,并于 1994 年获得同一所大学的光学硕士学位。他分别于 1995 年和 2000 年获得法国雷恩第一大学 (雷恩) 的 D.E.A 和博士学位。1999 年,Luis Ibáñez 加入了北卡罗来纳大学教堂山分校神经外科部门,并作为 MIDAG 和 CADDLab 团队的成员参与其中。他在 UNC 的工作与应用于图像引导手术的 2D 和 3D 配准算法的开发有关。他还作为 INSIGHT 配准和分割工具包的开发人员参与其中,该工具包由美国国家医学图书馆赞助。Luis Ibáñez 于 2002 年 2 月加入 Kitware, Inc.,在那里他是 Insight Toolkit (ITK) 的主要开发人员之一,与其他开发人员和用户社区协调其维护;他也是图像引导手术工具包 (IGSTK) 的主要开发人员之一,并参与制定了 Insight Journal 的操作原则。Luis Ibáñez 是开放获取和科学出版物可重复性验证的坚定支持者,并且是 ITK 培训课程和传播开源原则的活动中的常客。2014 年 8 月,Luis 加入 Google Inc. 担任软件工程师,在纽约市的公司工程团队工作。
撰写评论
我充分理解您的观点,并且赞同您的看法。
我们经常在本论坛中讨论掌握软技能的必要性,这是促进开源社区发展和繁荣的关键要求。
这当然是我们所有人在我们参与的社区中可以做得更好的事情。实际上,需要培训和纪律才能关注社区中的人类敏感性。
话虽如此,内核社区严厉的普遍看法,主要是由 Linux 内核邮件列表 (LKML: https://lkml.org/) 中少数引发网络风波的激烈言论滋养的。
Linux 内核社区的日常现实是更加友好和冷静的。人们必须意识到 LKML 每月承载超过 17,000 封电子邮件。(例如,请参阅去年 10 月的流量:https://lkml.org/lkml/2013/10)。这大约是每天 550 封电子邮件(例如,请参阅今天 11 月 12 日:https://lkml.org/lkml/2013/11/12)。这些消息中的绝大多数都是礼貌和文明的,并且谈论...嗯...编程。在数千条消息的集合中,少数消息时不时地传播开来并成为新闻,而超过 1,200 名开发人员的大量工作以 11,000 个补丁的形式悄然流入,每 70 天发布一个新版本。
为了将年轻一代带入内核社区(或任何其他开源社区),必须专注于创建一个安全、友好和*有趣*的环境,让新手受到欢迎,并且他们可以在其中逐步学习技巧并磨练技能。此类举措的一个伟大而成功的例子是女性外展计划 [OPW: https://open-source.net.cn/business/13/11/linux-kernel-interns-outreach-women ]。其中一个由七名实习生组成的团队从培训经验中脱颖而出,并作为一个整体,成为 Linux 内核 3.12 版本的第 11 大贡献者。
另一个需要掌握的重点是,内核中需要大量简单的补丁,并且这些补丁正在等待新手和初学者来处理。这些补丁可以用作培训练习,只需相对较小的努力。
我们将在后续文章中撰写关于类似努力的文章,我们将在其中讨论我们在两所大学为 Linux 内核贡献所做的培训练习。
诚然,用户空间中发生了很多有趣的活动,并且那里将欢迎人才。
也就是说,这不应阻止新手窥探深层内核。有很多关于简单补丁的资料可以全面完成,其中许多补丁是初级开发人员可以触及的。此类补丁是培训新开发人员的绝佳材料。
开源项目的工作负载分配遵循幂律的长尾分布。这就是 80/20 规则,其中 80% 的工作由 20% 的人完成 (http://en.wikipedia.org/wiki/Pareto_principle)。这并没有减少 80% 的人将完成的 20% 工作的重要性,特别是因为这将是他们接受培训的方式,以便他们中的一些人成为进行 80% 更改的 20% 的一部分。换句话说,分布中长尾的形状也是对社区跨时间人口统计的预测。
因此,有空间让成千上万的贡献者做出微小的更改,这些更改可能只是一些代码行。这些更改是更有经验的开发人员可以进行的,但会分散他们处理更复杂问题的注意力。因此,存在持续的机会将开发人员的技能与特定级别的挑战相匹配,并创造每个人都受益的条件。初学者提高了他们的技能,并且代码库同时变得更好。这是使用真实的内核补丁作为任何编程课程(特别是操作系统或大型软件系统课程)培训材料的理想情况。