2018 JetBrains 开发者大会见闻

难得取了这么正经的一个题目,根本不是我的风格啊︿( ̄︶ ̄)︿。

话说昨天去参加了一下 JetBrains 的开发者大会,因为我把钱都充点券买皮肤了,买不起门票( ̄. ̄),所以就选择在下午分会场做了一个 Kotlin 的分享来混入其中 (~ ̄▽ ̄)~

大会从 7点半开始调试设备,我 8点半左右到达,进去接了一下设备看着没啥大毛病,就跟中文站的贾哥去休息室摆龙门阵去了。当时也遇到了 Hadi , 他因为当天要分享好几场,在紧张的调试 PPT 效果当中,JetBrains 布道师一哥那可不是玩的,整个一天下来,基本上最让人期待的就是他的分享了。

开始之前 Lenyo 过来跟我和贾哥说你们对 Kotlin 新特性有什么想问的吗?我说有啊,萌雀雀一直都比较关心 Kotlin 接口的 SAM 的事儿。结果在 Hadi 介绍完 Kotlin 新特性的时候提问,我真的问了,折腾了半天他终于明白了我的意思ヽ(;´Д`)ノ,一句“介个不在我们的规划当中”,瞬间把萌雀雀击伤,并当即表示要卸载 Kotlin(假惺惺,有本事你卸载 IntelliJ 啊(╬ ̄皿 ̄)=○)

JetBrains 公司是一家有趣的公司,开场来自 JetBrains 的大佬们先后从不同的角度分享了这家公司的发展历程,管理文化。

印象比较深的是 Hadi 提到的,”如果你睁开眼,感觉脑子不在线,那就不要来工作了“,”如果定了 KPI,那么所有的努力都只是为了 KPI“,这确实是一件很难把握的事儿,毕竟如果不加任何限制,可能确实会让人放任自流,不过换个角度来看看,如果招来的程序员还需要管,那么说明这些程序员之所以成为程序员,估计就是看到码农赚钱多吧;他还提到他们是没有上班时间的概念的,这个嘛,我们也没有的,国内互联网公司的弹性工作时间也许出发点是好的,但结果却往往成了加班演给老板看。

还有就是关于 Leadership,其中提到一点就是 Delegate,带人其实没有那么轻松吧,团队做出成果自然有你的一份努力,而这一份努力需要花在对团队成员的了解,任务的合理安排,提供必要的帮助和指导上面,这里面 Hadi 有一句话让我特别受益,你安排了任务给其他人,在产出摆在面前的时候千万不要想着你自己完成了之后会比他完成的好 —— 这不公平,你应该考虑提供必要的指导和支持,一方面让事情开展的更加顺利,另一方面也让大家得到成长。

干程序员这一行,还是需要点儿热爱的。最近大家都说移动客户端没落了,其实不然,大家对待这个领域的态度只是趋于理性和客观了,仍然有公司在招人,比如我们团队 Android 客户端校招就没有招够= =、(有兴趣可以发简历到 bennyhuo@kotliner.cn)。

Hadi 在上午接着介绍了 Kotlin 1.3 的新特性,这当中涉及了包括我们公众号前不久提到的 NewInference 和 SAMForKotlinFuction,以及注解支持内部成员,协程转正,无符号类型等等这些大家已经熟知的内容,我就不细说啦。

中午吃饭,伙食还不错,想了想(那个我买不起Σ(゚д゚lll)的)票价,其实也很划算了,65块钱这顿饭就吃回来了(๑•̀ㅂ•́)و✧。

因为下午第一场就要分享,中午吃饭的时候时间比较紧张,怕影响效果没敢多吃,我就吃了一个餐包,三块这个,两块那个,火腿若干,羊肉数块。。。好吧,吃得一点儿也不少,以至于我上台开始讲的时候满脑子都是肉。。⊙﹏⊙|||

讲之前 PPT 提前10分钟就开始播放了,我刚讲了个开头低头一看时间赫然写着 24:31,心中暗道:尼玛,时间都去哪儿了,我这还没进入状态呢。。。于是加快语速开始狂喷。。。小伙伴们一定在下面不明就里,当我眼看着时间逼近 40 分钟的时候,我果断开大,我靠早知道不做这么多页ppt 了(o´゚□゚`o),终于 43 分钟的时候ppt就剩最后几页,长舒 一口气,结果下来被告知当时其实才 34 分钟。。no!你们没看出来我讲完马上抱着电脑就要跑吗,我还以为超时了。。T^T

整个活动的时间是非常紧凑的,演讲中间没有时间间隔,节奏不能乱,所以后来贾哥分享完 Ktor 倒是真的超时了,Lenyo 一看时间不够,果断上去提示大家有问题可以线下讨论。

Hadi 下午的演讲主要是讲 Kotlin 可以在多平台上运行,其实我个人对 Hadi 的几个插件都是非常感兴趣,一个是快捷键提示,这个不同于 Key Promoter,后者在你没有使用快捷键的时候提示你快捷键是什么,前者则是在你用了快捷键的时候告诉观众这是什么快捷键,以及其他平台上对应的是什么:

还有一个是 Nyan 进度条的插件,很有趣:

来自 Google 的钟辉老师也给我们介绍了协程在 Android 当中的使用,Retrofit 即将支持 suspend 函数,这一点我感觉还是很让人开心的:

1
2
3
4
interface Api{
@GET("https://api.github.com/users/jetbrains")
suspend fun getJetBrains(): GitUser
}

当然,现在我们也可以用 Deferred 来接入:

1
2
3
4
interface Api{
@GET("https://api.github.com/users/jetbrains")
fun getJetBrains(): Deferred<GitUser>
}

之后来自蚂蚁的木磊老师分享的内容与 Kotlin 没有太大关系,我就不说啦。

听完这个分享之后因为我晚上还有其他事情就提前撤了,但听说 Hadi 的第四个分享刷新了很多人对 IntelliJ 的认识:我难道从来没有真正会用过 IntelliJ !天呐,我错过了几个亿!(ಥ_ಥ)

不过不要担心啦,已经跟 JetBrains 的工作人员确认过啦,大会的 PPT 以及视频资料都会在后面统一放出来,届时咱们的公众号也会第一时间跟进,所以错过的小伙伴也不用担心!

下午茶歇的时候,也与群里的小伙伴们一起合影,后来才知道还有其他小伙伴也在现场,所以下回咱们大群应该走一波节奏搞搞气氛~

这次活动也还遇到了去年在 DroidConf 遇到的小伙伴,凑巧的是那一天正好是 17年的 11月 17日,时隔恰好一年,想来也是有趣,很幸运能结识这么多朋友~

PS:茶歇的小饼干也很好吃啊!


下午第一场 “如何优雅地使用数据类” 的 PPT 可以先分享给大家,有问题欢迎到论坛讨论~

链接:https://share.weiyun.com/5YMPoL4 密码:sz4vyw


Kotlin 中文站:https://www.kotlincn.net
Kotlin 中文博客:https://www.kotliner.cn
Kotlin 中文论坛:https://discuss.kotliner.cn
Ktor 中文站:https://ktor.kotlincn.net


欢迎关注:微信公众号 Kotlin