Google Summer of Code
在与 Crystal 合作的同时享受 Google Summer of Code 2018
Google Summer of Code 是一项全球性计划,旨在将更多学生开发者带入开源软件开发。学生在学校放假期间与开源组织合作,进行为期 3 个月的编程项目。 了解更多
选择你自己的冒险
这是一个我们认为可能会有趣且受到社区欢迎的想法列表,但我们鼓励你提出与你自己的兴趣相关的其他项目(只要它们仍然与 Crystal 生态系统相关^_^)。
- 基准测试框架
- 随着编译器和标准库的不断发展,了解由于最近的更改是否产生了性能改进(或退化)非常重要。目标是构建一个基准测试框架、测量代码样本套件以及报告输出,以便描绘 Crystal 版本之间的相关更改。 了解更多
- Crystal 自举血统
- 最初,Crystal 编译器是用 Ruby 编写的。在某个时刻,它发展到足以自举,从那时起,每个版本都使用了前一个版本。能够从源代码重建 Crystal 版本将非常棒。大多数(或全部)信息都可以在存储库中找到。这不仅因为这很不错,而且因为它将有助于 Crystal 到达其他平台。
- 在 Crystal 中放一些 Windows
- 目前正在努力让 Crystal 以本机方式在 Windows 上运行。从整理平台无关的抽象,到处理特定操作系统 API、表示以及为 CI 设置基础,你可以帮助 Crystal 进入一个新的领域。
- 文档和指南
- Crystal 可以用于许多目的。CLI、游戏、Web 应用程序、UI 等等。对于每种情况,有时需要绑定到 C 库,有时需要指南和文档(以及解决一些问题)。选择你喜欢的利基市场并改善它周围的现状。
- 学院和科学
- 我们也希望看到 Crystal 在学术界和科学界蓬勃发展。从改进底层数值处理,到改进或创建该领域使用的最先进算法,有很多事情可以做。
- 形式主义为了美好
- 没有关于语言语义的正式文档。虽然编译器规范中有很多测试可以确保事物按预期工作,但拥有一个关于语言工作方式(或应该如何工作)的适当规范将非常棒。这不是一项简单的文档任务。检查编译器是否符合规范是此旅程中隐藏挑战之一。
- 认识 shards 依赖项管理器
- Shards 允许任何人使用其他人制作的 Crystal 库。我们的方法是避免使用集中式存储库。虽然它对于今天的用途已经足够好,但还有很多想法可以改进依赖项的解决、获取和发布方式,以便在不久的将来支持更多场景。
- 深入编译器
- 跳入内部并解决一些 待处理的问题,使编译器更健壮、更一致。注意:编译器主要(~98%)是用 Crystal 编写的。
- 整理标准库
- 编译器和标准库多年来一直在发展。帮助我们 整理、改进和修复标准库的 错误。
- 数据库访问
-
crystal-db 是关系数据库的抽象层,如 sqlite、mysql 和 postgresql。可以为其他数据库添加驱动程序。每个特定的驱动程序都可以改进。并且存在可以在
crystal-db
本身中解决的跨领域问题。 - Web 框架
- Kemal、Amber 和 Lucky 是开发 Web 应用程序、微服务和各种 http 支持服务的最佳选择。还有很多事情要做。拥有出色的框架有助于提高生产力和编程时的乐趣。加入并帮助他们发展。
- 新的 shards
- 想不到任何东西?查看此社区维护的 生态系统中缺少的 shards 的想法列表。
下一步
如果你有兴趣,请通过你喜欢的渠道加入 社区。无论你是否参与 Google Summer of Code,你都受欢迎。
查看 Google Summer of Code 页面,注册为学生。
快乐 Crystal!