Victor S. Wang
user

Victor S. Wang

startup, freelancer, developer, technology enthusiasts, innovation, passion


Featured

WWDC

WWDC 2018 的流水账分享

Posted by Victor S. Wang on .

又是一年的 WWDC,上次去还是在2016年,主场地在SF而不是San Jose。总体感觉这次的体验好了不少。其中一个原因是天气,很难想象就一个小时车程的两个地方天气怎么能差这么多,SF 的温度要低 5-10 度不说,还老是阴雨。San Jose 则感觉永远是大太阳,温度也很合适,简直完美。

早有耳闻说今年的很多新功能都被砍了或者推后了,要给性能和稳定性让路,发布会前的两周和一个 Cupertino 的工程师聊天,对方也说今年的 pre keynote 格外的「安静」。 现在大家也都知道了,新功能尽管不是太多,但我个人是非常满意的。别的不说,稳定性和性能的提升是感受的到的。我向来心大,都是 beta 版一出就直接给主力 iPhone 和 mbp 装的,尽管从来也没出过什么要命的问题,但没有一次这么稳定过,几乎感觉不出是大版本更新了,一切照常运行,搞的我只好特意开一下新功能(比如黑色主题)来确认我确实升级了…

发布会的前一天要先去领 Badge。外套每年都会不太一样,今年是 Levis 的夹克衫,和去年似乎是同款(不太是我的风格,这可能是我人生中的第一件牛仔夹克吧)。除此之外,给 Badge 的时候会给些小礼品,比如徽章,许多特别的徽章需要在会场参加活动得到,估计这激起了许多人收集癖,有点玩游戏的感觉。

发布会当天的临晨三点就起床了,四点赶到会场开始排队等 keynote。怎么说呢,一般来说四点之前到基本可以保证比较靠前的位置。当然这也不是必要的,大可以晚些时候来看大屏幕。我个人是觉得既然都千里迢迢来到了现场,不直接看舞台总觉得亏了。另一个原因是排队的几个小时可以和周围的人聊天,通常都会碰到来自不同国家团队的人,可以了解很多有意思的东西。这次排队就遇上了阿里和腾讯的小伙伴,聊的也是很开心的。

Keynote 发布的更新估计大家都已经很了解了,网上都有很多详细的介绍,我也就不重复多说内容细节了。以后有机会单独说一下其中我个人比较感兴趣的更新,比如 Siri,AR 和 ML。

这里只私心多说一句,今年的 keynote 的一份额外的惊喜,是能在大屏幕上看到自家产品的名字。尽管只给了几十秒,外加 Kevin Lynch 的只提到一句的台词,也还是很满足的。至少自己之前两周的努力没有白费。

Session 和 Lab

直播的 keynote 之后的第一个 session 就是 state of the union,基本可以看作是给开发人员的 keynote,从技术的角度把新功能重新介绍一遍,基本是开发必看的 session 之一,也是第一天的重点内容。一般这个 session 之后你就可以更清楚的知道哪些更新会对自家产品的功能产生影响(正面的或者负面的),然后在之后的几天里重点关照。

大部分 session 在现场看和直接看视频其实区别的不大,视频的体验可能还更好,因为可以暂停而且不受座位位置影响。现场看(也包括看 live 视频)的唯一优势其实是时效性,视频基本会有一天的延迟。对于有些重点内容,会想要第一时间看 session 了解技术细节,然后就可以想象使用场景,并列出尽可能多的潜在技术问题,争取在 Lab 解决。

对,Lab 才是重点。从第二天开始,每天都会有很多各种主题的 Lab,技术的非技术的都有,有新功能相关的,也有已有产品的。这是最好的让 Apple 的工程师免费(门票真的不能算啦)给你服务的机会,千万不要错过。所以具体问些什么呢?只要和这个 Lab 的主题挂钩,几乎可以问任何东西。比如问具体的技术问题,或者某个 API 背后的具体技术实现,请求帮忙排查某个奇怪bug,问某个需求的技术解决方案,问某个想法的最佳实践,问如何就某个功能使用适当的 API 去设计架构,一起探讨对某个技术或功能的见解和看法等等。如果带着 demo 或者 radar 自然更好,当然也不是必须的。

大部分的工程师都是很 nice 的,会很耐心的听你讲,然后回答解释,甚至动手做给你看,所以不用太担心自己的英语不够好,而且毕竟大部分是技术问题,稍微有点表达障碍也还是不妨碍理解。值得一提的是,对方的业务水平也是有参差不齐的,有时会遇上对方根本不熟你说的(非语言障碍)或者给一些非常模棱两可的回复,这个时候就不要犹豫,礼貌的结束话题说谢谢走人。晚些时候再来换一个人问,效果可能会差非常多。我在 Swift Lab 的时候遇上过对方不熟 Generic 的,也不知道说什么好。第二次去问 ObjC 和 Swift 共存协调 Feature Flag 的问题,遇上 Jordan Rose,不但业务能力强,直接给了个可能可行的解决方案,还主动要求当场一起做个 demo 试一下,真的非常 nice 了(毕竟开Xcode编译项目还是很花时间的)。有时候你问的问题可能牵扯到某个方面对方不是很熟悉,一般这时对方会找别的相关工程师来帮忙。比如今年我个人花时间最多的 Siri Shortcuts Lab,因为和我们自身的 App 功能比较契合,所以问了不少问题,分别牵扯到了 Siri,Shortcut 和 Watch Siri Face 三个团队的人,甚至还有设计师,又因为和其中的一些人之前或多或少的在别的场合就认识或者打过照面,所以到最后一天没人排队的时候几乎是四五个人围着我和大白板,这样效率就很高了,一轮下来解决我不少疑惑。(碍于篇幅原因,就不细说技术细节了,之后有机会单独写)

和同行交流

除开 Apple 自家的会场内的活动,最重要的其实就是和别的团队交流了。每天围绕着 WWDC 都会有各式各样的 Party 和 Meetup。主办方,赞助商和主题尽管都不太一样,但是形式一般差不多,就是一个场地加上一些简单的吃的喝的和音乐,然后主要就是聊天了。理论上你能找到任何你平时喜爱的那些产品背后的人,当然一般也不会真的找,随缘就好,撞见了就聊聊,无论聊技术或产品都是很爽的事。关于语言,还是这个态度,不用太担心,毕竟团队来自全世界,非英语国家多了去了,大部分人的英语未必有多好。另外,酒精真的有助于交流…

除此之外,这次还有幸遇见了不少国内的各个领域的一流产品背后的团队,还有一些 Apple 的国人工程师。对于我这个长期在欧洲工作的人来说,平时和国内互联网圈子的交流机会不多,所以这成了一个我接触了解国内团队的机会,学了不少东西。毕竟对于欧洲来说,国内的互联网的许多方面完全就是将来式啊。

其他

  1. WWDC 相关 App。 — Apple 自家的官方 App 自然是必备的,查看安排 Session 和 Lab 很重要。 — Parties 几乎包括了所有 WWDC 期间的非官方活动,也是必备。 — ConfFriends 实时的共享各自的地理位置,以前是用 Line 旗下的一个 App,不过今年似乎有人单独做了个 App 来做这个事情,不过说实话感觉没有很实用。
  2. 会场活动。会场会时不时有些小活动,比如今年会场有 AR 游戏比赛,基于 ARKit2 的更新,用户可以实时共享同一个 AR 场景。还有 5k 的跑步活动和主打 Watch 上的「活动」应用比赛。
  3. Company Store。官方商店会卖很多限量的小礼品,价钱并不便宜,更要命的是长达两个小时的队伍。我反正是放弃了,没有什么人排队时候去逛了一下,果然啥都卖完了。也罢,之前在1 Infitine Loop 买了不少T恤了。
  4. 食物。一如即往的无趣。只要时间允许,肯定出去吃。好几天的中午都去了不远处的 Pho 69,味道还不错,还是喜欢吃热的。
  5. Bash。比 2016 年的时候在室内场馆好太多了,气氛很不错,大家都玩的很嗨,Craig 现身说了一堆冷笑话然后请出了今年的表演嘉宾 Panic At The Disco!
  6. 勇士。正好是 NBA 总决赛期间,正好是勇士,周五飞回来的时候正好是最后一场,气氛很不错。

user

Victor S. Wang

www.allblue.me

startup, freelancer, developer, technology enthusiasts, innovation, passion