KotlinConf 2025小记

256 阅读9分钟

这篇文章应该和技术没什么关系,主要记录一下参加KotlinConf 2025的经历。

起因

有一天看到Kotlin slack里面在说KotlinConf 2025开卖早鸟票,想想就买了一张票,奢侈一下参加个地球另一半的大会,自己本身也是喜欢Kotlin的。

事前

酒店、机票

KotlinConf 2025是5月22-23号,于是打算定5月20-26号的日程。看到KotlinConf官方推荐在旁边的哥本哈根贝拉天空万豪AC酒店,于是就直接定了这家,地图上看非常近,后来到现场一看,这酒店就在会场对面,走一步路就到了。但是虽然是KotlinConf官方有推荐,但我个人不是很推荐这家酒店,这家酒店除了近之外没有别的优点了。
因为常驻在日本,所以我要买从日本出发的机票,国航有一趟北京中转的,SAS有一趟直达的,想了一下不想中转就直接买了SAS直达,13个小时的飞机说实话还是挺久的。

签证

作为中国人去哥本哈根首要问题就是要办签证,这一步根据VFS官方给的checklist一个个准备就行了,下签还是挺快的,中间没有电调搞得我还挺担心的。

出行前准备

提前准备好一张VISA卡会比较好,出门基本上都可以刷卡,不需要现金,我办了paypay的VISA,可以直接加到Google Pay里面,出门直接刷手机,还挺方便的。
然后5月份北欧日照时间也比较长,提前准备一个眼罩也是很好的。虽然日照时间长但是早晚还是挺冷的,不过中午稍微暖一些,准备好一些可以穿脱的衣服也比较好。
酒店需要自己准备牙刷、牙膏、拖鞋(对拖鞋),以及最好自己带一些纸,房间内除了厕纸就只有几张手纸。
最好提前下好DOT Tickets,这个买各种地铁票和公交票都挺方便的。
最后准备多一些的钱,哥本哈根的物价比上海还要高,1瓶可乐16DKK,吓人。

经过

20号21号没什么好说的,就是稍微转了一下各种博物馆。然后21号晚上被酒店重复扣款,因为我是预付款不应该再扣钱,找前台对线之后才取消了,这点还请想要去哥本哈根贝拉天空万豪AC酒店的朋友要注意。 重点讲一下22号和23号的KotlinConf

22号

PXL_20250522_054639674.RAW-01.COVER.jpg

入场送水瓶

第一天大清早就起来了,7点30准时入场,结果入场太早了没什么人,就到处转转。到8点多开始人开始陆续入场了。 Keynote演讲AI和Multiplatform占的内容挺多,让我比较意外的是Jetbrains居然做了Kotlin LSP,这可是在拆自家intellij/Fleet的台,这要是能够做稳定之后怕不是大家都用vscode了没人用intellij/Fleet了。这Jetbrains自家招牌可就没了。
之后去听了Google workspace的Kotlin Multiplatform演讲,之前就听说Google Workspace在上KMP,没想到这次带来了比较有意思的演讲。相比于Google Workspace之前用的J2OBJC或者J2CL,KMP在短耗时的任务上有比较明显的性能提升,但是在长耗时任务上没有什么区别。内存占用上KMP要大一些,不过是可以接受的tradeoff。然后还讲了String的性能优化。总体来说Google Workspace的KMP实践比较成功,但是带来的提升比较有限。
这场演讲结束之后意外碰到了之前采访过我的Jetbrains老哥,嘘寒问暖了一下,感觉挺神奇的。
然后就是Rich Errors的演讲。说实话之前完全没有听过这个,在KotlinConf第一次听到,感觉概念还是挺好的,虽然有点像Java的checked exception,但是这个Errors和Exception还是有区别的,具体的还请自己查询文档比较好,这里就不赘述了。之后感觉有很多API可以改成这个写法。
接着中午吃饭,虽然有很多人(官方说2100多人),但是感觉也没有那种特别挤的感觉,挺好的。就是白人饭比较一般,面包实在是太硬。
下午先看了Kotlin/Native的内存管理,演讲者说这个内容可能一年就过时了,现在讲的内容只是讲Kotlin/Native现在这个时间点是如何管理内存的。听了一下感觉国内内卷学一个JVM GC基本上就可以cover到这个演讲的内容了。
接着看了一下场内还有Compose的10分钟编码挑战,就是两个人,给一个UI,让两人在不运行没预览的前提下在10分钟内用Compose写出这个UI,最后比较看谁的UI更加像,看了一下都是挺简单的题目,但是估计上去的人都不太熟悉Compose所以出来的效果都不太好,本着我上我也行的想法报了个名。
在我上之前还有个小插曲,Compose compiler和Compose library的人还对打了一个,结果compiler的人赢了,没想到library的人每天接触这些API反而没用好。

PXL_20250522_143227847.RAW-01.MP.COVER-EDIT.jpg

Compose compiler和Compose library的人在对打

后来到我的时候这个UI完全就没有这么简单了,10分钟完全不够,只能勉强画一个大概,虽然最后还是赢了,拿了3只袜子。赢了之后Jetbrains的老哥夸我你这Compose用的真6,我们做Compose的人看你玩这么6挺高兴的,我说我每天都在用当然6,给你们欧美人一点东亚内卷的小震撼。

PXL_20250522_151358247.RAW-01.MP.COVER.jpg

10分钟只能画个大概

中间还有参加Compose Hot Reload是如何实现的演讲,听完之后发现这完全就是JVM+Jetbrains Runtime的hack,不是很适用Android/iOS,不知道之后Android/iOS的Hot Reload要怎么办了。
后来看有个老哥写了一个NES模拟器,还挺有意思的,人都坐满了。最后这老哥还现场表演了一个玩超级马里奥,还拿了个NES说我的ROM是自己Dump的不想因为在KotlinConf演讲就收到任天堂律师函,这老哥挺好玩的。
之后是party night,总之又是吃白人饭,吸取中午的教训这次只拿了肉,只吃肉的话还是可以的。不过这搞得挺像酒吧的,可能欧美人喜欢这样吧。
然后第一天就基本上这样结束了。

PXL_20250522_172143139.RAW-01.MP.COVER.jpg

Party night

23号

第二天也是大清早就起来了,8点入场,碰到了shengyou,稍微聊了一下之后就去主会场了,一开始讲的有点像系统体系设计?总之是和Kotlin相关性不是很大的,倒是和工作生活关系比较大。
接着去听了Kotlin/Native的,主要讲了Kotlin/Native的静态/动态库各种依赖问题,比如动态库链接静态库、主程序和动态库链接同一个静态库,Kotlin Native库要引用系统库之类的,里面讲的一些问题之前有些也遇到过,后来都是直接静态库一把梭。
然后去主会场听了Kotlin的新的类型推断算法,感觉挺高深的,听着有些一知半解,就不班门弄斧了,让更加专业的人来讲解吧。
午餐时间还是白人饭,感觉真没啥可以吃的,还是尽量挑了些肉。
吃完又碰到shengyou和其他中文同行,就稍微闲聊了一会,感觉第二天的质量相比于第一天来说就没有这么高了。
后来看下一场感觉没什么看头,于是就顺便修了个PR。
之后去听了Swift Export,主要还是讲了Swift Export具体是怎么实现的,大概是先编译一个Kotlin Native的库,然后有一个.h的header文件,最后再生成Swift代码来通过这个header调用Kotlin Native的库。听完感觉这就完全是个体力活,而且主要难点在于怎么样把各种Kotlin的特性合理的翻译到Swift之中,让调用者用起来也觉得合理符合预期。开始有点心疼Swift Export团队了,这完完全全就是体力活,而且收获的效果还不知道如何。
接着去主会场听了Compose Multiplatform的演讲,感觉就是讲了一堆入门的内容,本身对于新手的话还是有很多帮助的,主要演讲内容基本上都是之前经常摸的东西,所以对于我来说帮助不是很大。
然后就4点和shengyou以及中文同行一起录了一段podcast,聊了一下这一次KotlinConf的一些感想,感兴趣的同学可以去B站观看(在shengyou剪辑完成之后)。
最后就是Closing Panel,主要还是Kotlin团队回答各种问题,有些还提的挺好的,然后还宣布了下一届KotlinConf的举办地点:慕尼黑,好吧反正如果要再来的话机票和去哥本哈根也差不了多少。
感觉23号的内容就不是很丰富了,第一天的内容还是很满的。

PXL_20250523_160134638.RAW-01.MP.COVER.jpg

Closing Panel

之后

在哥本哈根稍微到处玩了两天之后就坐飞机返回了,这部分就不多说了,总之风景还是挺美的。

结尾

总之,参加KotlinConf的体验还是挺好的,听到了不少干货,也有不少交流。让我印象比较深的就是10分钟Compose挑战赛,希望其他活动也能够有类似的内容,这个参与感还是蛮强的,而且可以看看其他开发者对于同一个需求是有什么不一样的实现方式,有时候不同的思路还是会有不少启发的。还有这一次KotlinConf也有不少Kotlin Multiplatform内容,感觉Jetbrains还是继续希望在KMP方向发力,而且这一次也有不少团队带来了内部KMP实践分享,说实话这个还是很重要的,不同的团队有不同的实践方式,可以学习到不少内容,希望国内厂商也能多分享一下自己内部的实践经验,多多交流。
最后希望明年慕尼黑的KotlinConf也能有机会参加。

PXL_20250522_060022173.RAW-01.COVER.jpg