CPU Load  • • •  需要被「管教」的是父母       all posts in Archive

Rust、Golang 还是 Swift ?

what to Learn

「该学点儿什么」? 首先,这儿的前提是,我是以工作事业需要为目地的学习。

「学」这个字很严肃的样子,说着说着压力就来了。难道真是非要学点什么不可么?就不能甩手玩、吃吃喝喝、欣赏风景么 … 比如电影『Little Forest』里那样?可其实人家也是积累了20年农家生活知识才可行的,那巨大的知识网络,也不是一朝一夕的事儿。回到城市,毫无疑问,对未来的不确定性会要求你不断地学,何况现在知识五六年就可能变迁一次。所以只能培养兴趣,希望更加如鱼得水了。

知识这玩意儿就像一棵逐渐在长大的树,随着科技快速进步,「分叉」越来越多,「叶子」也越来越茂密。悲哀的是,知识在变多,可我们的时间并没有呀!于是我们的学科越分越细,大家只能专注一个分叉了。而编程这种「工程」类型的工作,还更加「势利」,因为更讲求效率,必须速成。犹如把厚厚小说改编成2个小时的剧本,细节几乎都被省略了,只有选择的信息留了下来。当然怎么用是懂了,可却如同只拿着一个枝桠上的叶子,误以为就是全部。更让人沮丧的是,即使浓缩成这样,我们仍有无数的选择要去做。

譬如,我究竟该学 Rust、Golang 还是 Swift ?三个语言我都挺感兴趣的,其实也都多少看了一些。可要严肃地用起来,时间就不够了。本来是个芝麻小问题,但哲学地来看还挺有意思的,所以还真想了好些日子。

工作相关的知识更新当然重要,可人文知识需要花更大力气。没有工作,当然不能活着了,可活着就必定要面临那几个「终极问题」。为了回答人生的这些问题,人文知识是唯一的出路,至少目前来看吧。随着时间的推移,回答这些问题还会比活着本身越来越重要。所以,

  • 别把自己的私人时间都花在工作相关的学习上

当然如果你本身爱好的就是各种技术,那随便折腾就好。不过即使如此,还是不妨能同时做到以下:

  • 充足睡眠
  • 运动健身
  • 兴趣爱好
  • 读「闲书」

读「闲书」可能在这里是最重要的啦!书籍这东西看起来犹如大海无边无际,广袤得让人害怕,无从下口。不过也是有技巧的,记得道长谈到过「书读完了」这个话题。其实方法倒也很简单,就是不要从细节末节出发,而要学会根基,让脉络自己浮现出来。所以不论人文抑或科技都一样,我们需要:

  • 读经典
  • 学底层

那么当我们必须关注到细节、枝叶的时候,又如何做选择呢?是学 Rust、Golang 还是 Swift 呢?回想一下,我想用技术的目的是什么,当然是为了完成现实的需要呀,虽然它们并不是眼下立刻就要用的。所以,抛开了个人兴趣,工具本身的实用性、易用性、可持续性就是做出选择的关键。

  • 选择更更完备、更多支持、更易使用的技术

没有必要用买股票的方法去预测技术的演化,技术演进过程中的小涟漪,可能就能带来天翻地覆。总的来说,现在使用的 Java 已经足够好了,有完善的支撑和发展前景,所以对我来说答案其实是显而易见的, Swift 应该是优先级更高的。虽然 Golang 或许是云技术的未来,不过只要 Java 本身能持续改进,取长补短,依托它巨大的根基和生态系统,未见得有任何类似的语言能翻过这座大山。与其押宝,不如把时间用在更底层的学习上。反观 Swift 能打开一道新的门,可以做出苹果平台独有的原生应用来。再看 Rust,除了兴趣,对我来说缺乏应用场景,等用到的时候,再关注也不迟。

仔细想想,这似乎又不再是简单是做个选择而已,背后涌动的显然是「焦虑」。费心考虑的无非是希望用所谓「宝贵」的时间做一些「更有用」的事情。而现在知识分叉的越来越快,技术演进地也越来越快,要是兴趣广泛一点,那就看起来更「糟糕」了。往往一回看时,却总是迷茫和虚度的。「八分」节目里说过,说每天新出版4000种书,如果你能每天看完一本,还是让自己的无知变得更多了一些。还更不要说带节奏的人也越来越多,我们太容易就跟着别人的步伐,走上岔道啦。

茂盛的「森林」当然好看,奈何生命有尽头,走不完大山大海,也不能一片一片叶子掰开来欣赏。不愿乱花迷眼,又不甘被一叶障目,我们需要一双聪明会观看的眼睛,还是只能抛开烦杂的资讯,自己静下来走自己的路。焦虑滋生的土壤是参照系,有比较它就能生存。如果能抛开对比,就迎刃而解了。不过身在职场和社会中,这谈何容易,因为即使你做到了,这众多公司的 HR 们可不吃这一套。可以推论,焦虑是不可完全清理的啦。

我们能做什么呢?如果能做好心理建设,那是最好,多花时间再人文知识里去寻找答案。如果不能做到,那我们可以选择躲躲风头。只要简单的埋头向前,我们可以用努力来掩盖对未知的迷茫。虽然有点一厢情愿的傻,但有效。