程序员要懂得对自己的知识进行投资
“一旦你意识到自己身上有某种明确的热忱,那就在自己身上投资。弄清楚,你需要知道哪些知识、获得什么样的专业技能,才能让你身心愉悦地从事自己喜欢的事业。这样无论在心理上还是经济上,你都会大有所获。”
——专注于自己的幸福。
在《程序员修炼之道》里面提到了知识投资,其实知识投资就是不断学习,提高自己能力的过程。而能力就是知识资产的外在表现形式。
对知识资产的投资和金融资产的投资有很多地方其实很像,对于金融投资来说,基本原则如下:
1,需要持续的投资,周期性的投资
2,需要找有价值的股票进行投资
3,要控制好风险,一般来说,高风险高收益,低风险低收益。需要自己评价风险,来进行组合投资。
4,金融投资的基本原则是低买高卖
5,需要定期的分析和评价自己目前资产
集中你的精力、你的思想和你的资金。聪明人总是把鸡蛋放在一个篮子里,然后看好篮子。”--集中力量。
而知识投资也很类似,对于一个程序员,对自己的知识投资也有类似的原则,稍微总结了一下。
应该以一种程序语言为主,同时了解其他几种程序语言。把一门程序语言学习透彻,而其他程序语言能够使用,了解其原理。虽然程序语言本质是相同的,但是不同的编程式语言设计思想不一样,能够把几种程序语言设计精髓吸收到,自己设计一种程序语言基本不成为问题。最好每一年都学习一种程序语言。可以参考一下程序语言排行榜,最好能够在项目中使用它。
对于不同的知识,需要有找出比较有价值的部分进行深入学习。根据以往的经验,一般来说,越是抽象程度越高的知识,生命力越是顽强,知识的保鲜度就越高,价值也就越大。对于java中一些开源框架的使用,个人就认为这个是比较具体的知识,比如spring,struct等,对于开发者只需要花少量时间了解其如何使用就可以了,应该把大多数精力投入到其设计思想中,这一块来说才是最有价值的。看到很多人都在重点花时间死记spring各种标签的配置方式,而不是深入了解其运行管理。一些方法论相关的知识的价值就比一些具体实践方面的知识的资产价值就越高。不过这些都是在你对这个领域非常熟练了之后,想在提高,必须精力的阶段。
对于新的知识和概念,越早投入学习的话,风险越高,但是可能收益也就越大。越晚投入的话,风险越小,但是收益也就越小。因为新的知识在刚出来的时候,不知道未来市场上是否能够接受,学习的风险就越高,但是一旦被市场接受,掌握这方面的技能人就比较少,你的知识就比较值钱。比如最早学习并掌握object c的人,价值就很高。还有现在炒作的云计算相关的。
你掌握的知识资产如果需要变现的话,就需要底买高卖。
对于移动互联网,目前是非常火的。记得当初很多公司高薪招聘动android和ios的人,只要有一年工作经验的人,就可以开到20W年薪以上。一个聪明的人应该在知识价值的最高点变现。知识的价值是根据供求关系影响的,当市场上相关技能远远人少于市场需求的时候,也就是知识资产价值的高点,这个时候要需要变现了。随着后续掌握这项知识的时候,市场就会理性。记得当初搜索,网游,网页游戏程序员,都有一个火爆阶段。
需要对自己的知识资产定期的review。
其实也就是对自己的知识进行总结的过程。看看那些知识已经落伍,就果断放弃。那些知识需要加强或者深入,就加强学习投资。比如当时比较火爆的ebj2.0,相对来说设计已经落后,没有必要花时间学习。或者有些自己认为用不到的,也可以放弃。本人现在就需要重点学习提高思维方面的以及方法论方面的知识。
提高知识广度,开阔思维,比如哲学类,社科类的知识。
多和不同领域的朋友交流,互相了解对方领域的只是,很多时候,解决问题的方法都有共通之处。最好能够参加IT小圈子聚会,了解业界的一些动态和认识一些朋友。
养成写作的习惯,写作是最锻炼思维的。
参与一些开源的项目,能够帮助你更好的运用你的知识。
运用一些工具来管理自己的知识资产,比如博客,Evernote等。
总的来说,知识资产投资决定了一个人未来的发展的。每时每刻提醒自己不要忘记了学习。
最后以一句话作为结尾:对知识资产的投资总能获得最好的回报。本杰明-富兰克林