Community Over Code(欧洲)2024

作者: Paul King

发布日期:2024-06-17 下午 05:00


今年的 ASF 欧洲会议 Community Over Code EU 于 6 月 3 日至 5 日在斯洛伐克布拉迪斯拉发举行了三天面对面会议,其中包括最后一天的 Groovy 专题。

注意
演示文稿幻灯片和音频/视频(如果可用)仍在添加到会议网站。如果提供更多材料,此帖子将更新链接到附加内容。

这篇帖子简要介绍了会议,主要关注 Groovy 专题。

会议、地点和主办城市

会议在斯洛伐克布拉迪斯拉发的 Radisson Blu Carlton 酒店举行。设施一流,这是一个值得游览的城市。

images bratislava1 20240605134031 d3953d86 xx 20240610202025 1ac29b1e xx 20240605081228 926eecf0 xx coceu2024 tac dinner stickers

感谢所有参与人员,使本次活动富有成效和回报!

Groovy BoF 和 Groovy 专题的亮点

我们与 Groovy 编程语言的各种用户进行了一场非常引人入胜的自由讨论(BoF)会议,其中包括来自 Apache OFBiz 项目的大批代表。我们还讨论了为什么 Groovy 在 2024 年仍然是一个引人注目的语言选择的一些原因。

为什么在 2024 年使用 Groovy?

本次演讲探讨了今天使用 Groovy 的一些令人信服的原因。

一些亮点

  • Groovy 的 80+ AST 转换允许您编写简洁的声明式代码。举例来说,这是一个深度不可变的 `Book` 类的示例,其中包含用于比较器(排序)、自定义序列化和反序列化以及一些特殊的 JavaBean 索引处理代码的附加生成代码

    AST transform example

  • Groovy 的 2000+ 扩展方法通过附加功能丰富了 Java 类库。举例来说,原始数组扩展加速了某些操作,否则您可能会使用流

    performance of primitive int array extension methods

  • Groovy 的运算符重载和可扩展工具大大简化了 Java 程序员熟悉的库和 API 的使用。这是一个使用 Apache Commons Math 的示例

    matrix example

  • Groovy 具有出色的脚本和领域特定语言 (DSL) 支持。例如,在大约 10 行代码中,您可以编写一个用于处理罗马数字的静态类型 DSL。一旦定义了 DSL,您就可以像这样在脚本中使用它

    assert [LVII + LVII, V * III, V ** II, IV..(V+I), [X, V, I].sort()]
        == [       cxiv,      xv,     xxv,    iv..vi, [i, v, x]       ]

    无效的罗马数字在编译时检测到

    error

查看幻灯片了解更多信息。

使用 Groovy、深度学习和 GraalVM 对鸢尾花进行分类

本次演讲使用经典的鸢尾花数据集探讨了分类的机器语言问题。

亮点

  • 分类使用根据已知类别测量特征训练的模型来预测事物的类别

    classifiation

  • 本案例研究使用著名的鸢尾花数据集。测量特征是萼片宽度和长度,以及花瓣宽度和长度

    classifiation

  • 首先,研究了一些用于分类的经典算法,包括朴素贝叶斯算法,这里使用的是 Weka 数据科学库

    classifiation

  • 然后解释神经网络。此处显示了本案例研究的潜在网络

    classifiation

  • 每个节点都像人脑中的神经元一样工作:分类

  • 讨论了几个深度学习库,包括 Deep Netts

    classifiation

  • 使用 Groovy 编译器并带有 `--compile-static` 开关编译脚本,然后使用 GraalVM 构建原生镜像,速度提升了 10 倍以上

    classifiation

查看幻灯片了解更多信息。

Micronaut 框架入门

Sergio del Amo 做了题为Micronaut 框架入门的演讲,特别是它在构建微服务时对 Groovy 的支持。幻灯片组的第一张幻灯片

亮点

  • Micronaut 应用程序的速度源于其提前编译的方法

    Using Micronaut Launch

  • Micronaut 支持一系列运行时

    Using Micronaut Launch

  • Micronaut 支持一系列消息技术

    Using Micronaut Launch

  • Micronaut 支持一系列持久化技术

    Using Micronaut Launch

  • Micronaut 支持一系列视图技术

    Using Micronaut Launch

  • 您可以使用 Micronaut launch 创建微服务应用程序

    Using Micronaut Launch

查看幻灯片了解更多信息。

本次演讲探讨了使用著名的威士忌风味特征数据集的聚类机器语言问题。

亮点

  • 本案例研究探讨了如何根据 12 种风味类别的排名对 86 种单一麦芽苏格兰威士忌进行聚类

    Whiskey flavour profiles

  • 可以使用不同的算法进行聚类。K-Means 聚类是主要涉及的算法

    The k-means algorithm

  • 该演讲涵盖了使用包括 Apache Commons Math 在内的普通数据科学库来解决这个问题,然后探讨了如何使用一系列 Apache 技术来扩展问题。首先考虑的技术是 Apache Ignite。首先我们读取数据

    Whiskey flavour profiles

  • 然后我们使用 Ignite 的分布式聚类库来查找质心

    Whiskey flavour profiles

  • 研究了调整算法的各种选项以及可视化结果的各种方法

    Whiskey flavour profiles with Ignite

  • 同样的案例研究也使用 Spark 完成

    Whiskey flavour profiles with Apache Spark

  • 同样的案例研究也使用 Apache Wayang 完成

    Whiskey flavour profiles with Wayang

  • 同样的案例研究也使用 Apache Beam 完成(此处显示 Python 风格的版本)

    Whiskey flavour profiles with Beam

  • 同样的案例研究也使用 Apache Flink 完成

    Whiskey flavour profiles with Flink

讲者:讲者

海报

Community over Code EU 还设有一个专门的海报会议区。走廊对话是任何 ASF 会议的关键部分。海报提供了一种补充方式,可以触发对话,也可以了解各种主题,如果那些可能了解所有这些主题的人与您不在同一时间在走廊里的话。

Posters Why use Groovy in 2024? Poster

查看 Groovy 海报

其他信息

另请参阅

  • 附加照片(可能会随着时间推移添加)。

  • 官方日程包括所有专题,并将包含讲座幻灯片的链接(如果/当可用)。

其他出行报告

即将举行的 Community Over Code 会议