2022 年 11 月,陈·扎克伯格倡议 (CZI) 向科学 Python 项目颁发了一项资助,用于改善通信基础设施和可访问性。这项提案涉及几个关键领域,旨在提高科学 Python 生态系统的可持续性、包容性和可访问性。其中一个领域是使软件文档和用户界面以多种语言提供。我们很高兴地宣布,我们已经组织了必要的基础设施和流程,允许志愿者开始翻译多个项目的网站。

在本博文中,我们将讨论如何设置管理科学 Python 项目的翻译,以及如何参与翻译和本地化工作。这里描述的工作是由 Quansight Labs 完成的。

为什么翻译很重要#

可访问性和包容性是构建围绕开源软件开发的健康社区的重要方面。通过以多种语言提供我们网站、文档和用户界面的翻译,我们可以接触到更广泛的全球受众,从而使我们的项目更具包容性,并增加贡献和想法的多样性。这对科学软件项目尤其重要,因为这些项目被来自世界各地、拥有广泛的语言能力和背景的研究人员和科学家使用。

最近,机器翻译工具使将内容翻译成多种语言变得更加容易。虽然这些工具正在不断改进,但在技术文档的背景下,它们往往还存在不足。此外,如果没有人工干预,维护人员永远无法确定翻译的内容对于他们不熟悉的语言是否正确。出于这个原因,我们选择与一群志愿者合作,帮助我们翻译项目网站和文档的选定子集。

设置翻译工作流程#

你可能已经注意到,一些语言的翻译已经可以在 numpy.org 上使用,在右上角有一个版本切换器。

Screenshot of the numpy.org site in Japanese, with a version switcher in the top right corner showing the English and Portuguese language options.

许多核心项目也加入了这项工作,并已设置好开始翻译。目前,我们的目标是 NumPySciPyNetworkXXarraypandas。我们愿意帮助其他核心项目将类似的功能集成到他们的网站中,我们旨在通过使用 Crowdin 来实现这一点,这需要核心项目维护人员付出最少的努力。

目前,我们的范围仅限于翻译项目的网站——当你查看上面的链接时看到的登陆页面——而**不**包括完整的文档。我们有意从小处着手,目标是完成第一阶段,然后在翻译团队建立后,可能扩展到其他领域。

翻译团队#

对于希望参与他们已经使用和依赖的项目的新贡献者来说,加入翻译团队是一个很好的入门方法。由于 Crowdin 中的翻译基础设施的设置方式,此工作流程特别适合那些还不熟悉 GitHub 或其他开发工具的新贡献者——他们可以在 Crowdin 网页平台上完全独立地工作。

在科学 Python 级别而非按项目基础设置此功能的一个优势是,翻译团队可以处理多个项目,并且知识和经验可以共享。这也有助于确保跨项目翻译的一致性。

翻译团队将负责

  • 将内容翻译(并审核)成多种语言;
  • 确保翻译准确且最新;
  • 与社区互动,帮助维护和改进翻译。

翻译完成后并经过审核,每个项目的维护人员可以合并翻译并将其发布到项目网站。在初始设置之后,翻译团队将能够独立管理翻译工作流程,而无需项目维护人员进行太多干预。

有关基础设施和翻译团队的更多信息,以及如何加入翻译团队,请访问 https://scientific-python-translations.github.io/。你也可以加入 科学 Python Discord 服务器 上的 #translation 频道。