在 2016 年 6 月的 Scala Days 柏林大会上,研究员 Heather Miller 在主题演讲中详细介绍了新成立的的 Scala 中心。这是一个非盈利性的组织,将重点关注教育和开源社区。
InfoQ 在最近发表的一篇文章中介绍过Scala 中心,这里我们将介绍更多的细节。
为什么成立Scala 中心?
根据一篇发表于2016 年3 月14 日的博文,之所以创建Scala 中心,一是因为 Scala 的职位日益增加,二是因为通过谷歌搜索“ scala tutorial ”可以看出,Scala 的应用稳步增长。Miller 解释说,Scala 不只是由 Lightbend 维护的 Scala 2.x 编译器,Scala 中心主要关注:
- 库
- Scala 社区
- Scala 生态系统
- Dotty
- 可选后端
Scala 中心位于瑞士洛桑联邦高等理工学院(EPFL),由 Miller 负责,她是该机构的执行理事。Scala 中心的顾问委员会成员如下:
- Scala 中心代表
- 社区代表
- 公司代表
Lightbend Scala 技术负责人 Adriaan Moors 在接受 InfoQ 采访时介绍了他们参与 Scala 中心的情况。当我们问他是否会参与 Scala 中心的活动时,他答复说:
是的,由于 Scala 团队由 Lightbend 领导,所以我是 Scala 中心顾问委员会的成员,同时我也是 SIP/SLIP 委员会的成员。
当问及他从事那些活动的经历时,Moors 告诉 InfoQ:
我们有了一个非常好的开端!我很高兴,有一群敬业的人负责引导社区工作,并代表社区的利益。在 Lightbend,我们会继续兑现承诺,开发一个稳定且健壮的 Scala 发行版,并为此权衡我们的创新欲求。我们很高兴同时参与这两个方面的工作。
Lightbend 的角色依旧
Miller 宣布,今后,Scala 中心的工作与 Lightbend 互不影响。Lightbend 将继续维护 Scala 稳定版,而 Scala 中心将开始关注库和 Scala 生态系统,为了保持独立性,最终可能会关注 Dotty 、 Scala.js 和 Scala Native 。当问及 Lightbend 如何与 Scala 中心合作时,Moors 表示:
Lightbend 继续关注企业级 Scala 发行版,而 Scala 中心从事更多前瞻性、试验性的项目,比如 Dotty。他们还会领导更偏向于社区的项目,比如改进 Scala 2.13 标准库。
Scala 教育机会
Coursera 网上的 Scala 慕课(大规模开放式网络课程)提供了可以学习 Scala 的教育机会。个别未经认证的课程是免费的,而 Scala 认证证书和“迷你学位(mini degrees)”是收费的。
Miller 宣布,多周课程现在可以按需提供了,不需要像以前一样等待一年两次的预定。Miller 还列举了 Coursera 上的 4 门多周课程:
开源社区
Scala 中心致力于与 Scala 社区合作。据一篇发表于 2016 年 3 月 14 日的博文介绍:
Scala 中心的第一项使命是和社区用户协商,定义共同的目标,组织他人贡献的资源和自己的资源达成这些目标……该中心旨在帮助 Scala 生态系统中已有的实体机构,并作为一种补充。
尤其是,Lightbend(以前的 Typesafe)将继续维护和改进 Scala 的稳定发行版。Lightbend 是该中心的创始成员,其工程师有望参与该中心的项目。
现有的开源项目和平台可以和以前一样正常使用。该中心将通过一个包索引来提高开源库的可发现性。它还将接管那些符合共同利益的项目,利用可用的资源,推动它们的发展。
Miller 告诉 InfoQ,在下列情况下应该咨询 Scala 社区:
确定如何引导 Scala 中心的开发工作。那更多的是倾听社区开发人员的声音,为他们做一些一家公司无法单独贡献 / 做的事情。
当问到自 Scala 中心成立以来社区参与度是否增加了时,Moors 告诉 InfoQ:
我确实感觉到,我们的贡献呈上升态势,但遗憾的是,关于这一点,我们没有可靠的数据。Scala 中心无疑为此做出了贡献,但我还想强调下我们在这个领域的工作,包括技术方面(投入很大的精力减少技术债务,让新手可以访问我们的代码,迁移到一个标准 sbt 构建,提供快速完整的开源 CI)和社会方面:Lightbend 的整个团队花了大量的时间反馈 pull 请求,通过 gitter 和其他论坛提供有关编译器和库开发的建议。
Scaladex——新的 Scala 包索引
在主题演讲的过程中,Miller 提出了一个问题:“Node、Haskell 和 Rust 都有而 Scala 没有的东西是什么?”答案是:“包索引!”
Miller 解释说:
我们非常相信,如果你开发一个开源库,并通过 Maven 或其他的东西发布,那么你就不必为了让人们使用你的库而成为一名好销售。
据介绍,新的包索引名为 Scaladex ,是一幅 Scala 生态系统地图。它基于已发布的 Scala 库,资源来自 POMs、GitHub 和 StackOverflow。开发人员有一个地方可以发布并和社区共享他们自己的 Scala 库,而且可以在 GitHub README 文件中添加配置信息和“Scala 社区”标志。如 Miller 所述,“我们希望为优秀的项目发声,让他们不必进行市场营销和宣传。”
Miller 讨论了 Scaladex 可能带来的一些好处:
- 展示已发布的、应用广泛的库;
- 分析和展示开源构建文件中的重要信息;
- 展示许可信息;
- 将整个 Scala 生态系统添加到 Lightbend 社区;
- 链接文档和模块。
2016 年 8 月 9 日,一篇博文宣布Scaladex Beta 版发布。
SIP/SLIP——社区参与
Scala 改进流程(SIP)和 Scala 库改进流程(SLIP)是 Scala 社区提交 Scala 编程语言和库变更的两个途径。在一篇发表于 2016 年 7 月 12 日的博文中,Miller 向开发人员概要地介绍了改进后的 SIP:
一项由委员会成员提出,并一致投票决定应该由 Scala 中心立即开展的计划是,理清 Scala 治理,尤其要致力于确保有一个开放协作的过程,用于语言和标准库的发展。为了实现这一目标,今天,我们发布了改进后的 Scala 改进规范和提交流程。
流程改进的一个主要目标是确保所有提交的 SIP 及时得到检查,以便 SIP 作者能够定期收到反馈,知道如何改善他们的建议。
Miller 还指出,以前一直有一种“倾向,就是提交的 SIP 不能及时得到反馈。”InfoQ 问 Moors,自新的 SIP 提交流程实现以后,他是否看到了这个方面的改善:
是的,我们刚刚使用新流程举行了第一次会议,反响不错!
InfoQ 问 Moors,Lightbend 是否也有类似的流程向导。他回答说:
我们密切参与,但我们不引导社区流程。在 Lightbend,我们一直觉得,由一个类似 Scala 中心这样的实体机构来代表社区,符合每个人的最佳利益,我们很高兴这已经成为现实。积极参与,帮助创建 Scala 的未来!
总之,根据 Miller 提供的消息,Scala 中心“为所有人谋利益”,而“社区 = 我们所有人。”Scala 中心和 Lightbend欢迎开发人员为Scala 生态系统做贡献。
查看英文原文: The New Scala Center Focuses on Education and the Scala Community
评论