本周工作思考
本周开始逐渐熟悉AI组的开发流程和开发节奏,对整个AI工程化和产品化也有了新的认知,作为使用者AI是简洁和智能,对于实现来说,背后既有深厚的理论研究,也有积极探索的工程实践,还有大量繁重的业务逻辑开发。作为前端专业人员,基于对技术的理解和对行业观察,我也认识到丰富多的模态的的交互形式即将到来,从Echo开始,人与硬件的交互开始发生变化,我认为这是一种范式的转变,AI会加速这种转变的速度,最早我们通过屏幕,鼠标,键盘和算计做交互,主要体现在视觉和触觉,我们用方向盘、按钮、把手等机械装置和汽车交互,也主要体现在视觉和触觉,随着技术的发展,利用发声和听觉的交互越来越普及。人类在进化中,也比较倾向利用声音和同类或者其他动物交互,随着语音技术的进步,听觉系统和语音系统中利用会让整个交互更自然,更高效。
大概在20年左右,曾经学过一阵子Go语言后来随着工作节奏和工作内容的调整,慢慢的就忘的差不多的。这阵子重新拾起来深入学习和理解,现在学习一种新语言会比几年前的视角更开阔,除了语言本身的语法,最佳实践,我也会直接看经典源码,有时间会整个文件的抄经典代码,这种方法比较笨,其实很有效,1是让自己琢磨透语言本身的设计哲学,这个东西有时候只可意会不可言传,比如Go语言的少即是多的设计哲学,不抄十几个经典源码,可能只是知其然不知其所以然。我记得本杰明富兰林起初学习写文章时,也是采用这种方式,第一遍先抄,第二遍默认,第三遍改写,就能完成用原作者的思维模式写文章了。2 是从多个语言的比较分析讨论中学习,横向比较,写了多年的JavaScript和Typescrip,思维方式已然固化了,必须打破这种惯性思维,比如js是单线程语言,要用ajax,raf,webwork,webassembly这种浏览器机制做并发,但是Go中天然直接并发,关于并行,两者在实现中有非常不同,在18年19年学习Dart时,我觉得是比葫芦画瓢,瓢可以画的很漂亮,但是行家读起来还是缺少点灵气,就是这个意思,语言学的多,思维模式容易串,有的思维模式是能够迁移的,比如在理解的Typescrip的类型化系统,在学习Dart的类型化时就很轻松,掌握了JavaScript的闭包的概念,学习Go时就很容易理解函数闭包。但是当你研究透了React 的Fiber的并行机制时间片时,对理解Go的Goroutine并无太多的助益,所以每种语言都有其独特的设计哲学,这些哲学很多体现在细节上,所以要学原汁原味的经典代码。其实在我们日常面试中,经常遇见一些简历很”优秀“的候选人,这里所谓”优秀“,就是简历很丰富,洋洋洒洒,这也会,那也会,东也做,西也做,但是你问下来就发发现,用一种思维方式和研发哲学解决所有的遇到的问题,效果也就不一而足了。所以学习语言我觉得还是要原汁原味,用它解决引发它被设计出来的那些问题的本源。