【开源访谈】腾讯贺嘉:从小程序谈起,开发者该如何跟进新技术?( 三 )


6、有些人会跟风去学习某项技术,结果发现到市场上并没有想象中的受欢迎,这种现象怎么看?
很多时候你做的事情没人做,但这也不一定是个坏事 。也有另一个可能就是,你学的东西太冷门了,没有太大的市场需求 。还有一种好的可能性,你学的技术比较新,去跟风学的时候,基本上只有一种可能就是说它可能还会火一段时间 。
以前端为例,前端现在很火,一堆人学,市场需求也很大 。然而,市场上充斥着大量低水平的前端,可能有些是从设计师转过来的,有些是从培训机构出来的 。在任何一个技术社区里面,经常会看到有一种帖子是说“我是从培训机构出来的,我该怎么办” 。
你会发现培训机构有助于找工作,但它教给你的只是一些基础的应用技术 。如果你去跟风学习了某项技术,发现没有想象中受欢迎 。此时,更重要的是你能不能用这个技术做一些东西,解决一些问题 。
比如电商行业会经常做一些促销活动,你是否通过技术做出一些产品出来,比如促销页面 。用最简单的前端技术将促销页面写出来,如何应对运营对于促销活动的各种需求呢?这时就该思考是否可以做一个可配置的,灵活性更高,高并发的场景 。当考虑的情况越多,页面可用性,健壮性,可迁移性越强的时候,你的技术水平也将随着提升,也就越容易说找到好的工作 。
说到这一点,你要去看自己技术掌握的是否够深,有没有实践做出来一些项目 。
我们现在面试的时候,对于有和技术博客的童鞋,一般会有一些加分(印象分) 。做了一些项目的和自己在简历上说什么都懂,从前端到后端到底层都会的童鞋相比,我会更希望看到做了什么项目,解决了什么问题,运用到了哪些算法 。算法是自己写的还是用的别人的(这个并不是那么重要),换句话说就是有没有自己去解决问题 。是跟着别人去解决问题还是自己去解决问题,被动的解决问题还是主动的解决问题 。
7、都说技术人要善于学习,那到底该以怎样的眼光和态度看待新技术?
我技术的眼光很一般,我是用比较笨的办法 。要解决问题,就先去搜寻相关的技术,看一下相关技术的社区支持度怎么样 。
比如之前我要学爬虫的时候,先学了 node.js,但发现它的爬虫库比较少,教程也不是很多 。一个朋友写的教程,看了半天也没太明白,所以就放弃了 。后面就用,方便很多,直接调用一些库等等,原理不复杂 。我挺实用主义的,就是说解决问题为导向,能不自己造轮子就不自己造轮子(尽量避免自己去写一些底层的代码) 。能尽量地“偷懒”就尽量地“偷懒” 。
新技术要去学,要去想新技术能不能提高工作效率 。偷懒的真正意思是这个 。就是说你是不是真的要从底层去开始写,创造一个新的东西 。当然对于中等或者更高水平的程序员而言,是要这样的 。但对于我而言,我会偏应用和解决问题,我会去思考新技术能不能更快的帮我去解决已有的问题 。
一个是满足我需求,一个是在我之前有没有人用 。三就是社区里面支持的人怎么样,有没有一些教程,现有的库 。在技术领域,我对自己的定位不是那种开拓者性质的 。我是一个应用者和布道师的角色 。我去学会新的技术传播给更多的人,去把它的价值体现出来 。所以定位不同 。
对于开拓性质或者想要在底层走的更深的童鞋,可能要去学更新的技术,甚至说自己去躺一些坑 。比如说去给 Unix 贡献一些自己的源码,其实这些应该是在技术上有更高追求的开发者该干的事 。
8、您认为技术新人要如何规划自己的职业生涯?