啊,富兰克林,那家伙总是说些深刻的道理。嗯,咱们真的能够经过早睡早上变成优秀的程序员吗?早上的鸟儿或许抓住虫子,但早上的虫子会怎么样呢?

但是,富兰克林的开场白确实击中了要害 – 常识和经历确实是你最有价值的职业财物。

不幸的是,它们是有限的财物。随着新技术的呈现和言语环境的开展,你的常识或许会过时。不断改变的商场力量或许会使你的经历变得陈旧和无关紧要。考虑到技术和社会变革的加速步伐,这或许会产生得特别敏捷。

随着你的常识价值的下降,你在公司或客户那里的价值也会降低。咱们期望阻挠全部这些状况的产生。

学习新常识的能力是你最要害的战略财物。但如何获取学习的办法,知道要学什么呢?

常识出资组合。

咱们能够将程序员对核算进程、其作业运用范畴的了解以及全部经历视为他们的常识出资组合。办理常识出资组合与办理金融出资组合十分相似:

1、定时的出资者有定时出资的习气。

2、多样化是长期成功的要害。

3、聪明的出资者在出资组合中平衡保存和高危险高报答的出资。

4、出资者在低点买入,在高点卖出以获取最大报答。

5、需求定时检查和从头平衡出资组合。

为了在职业生涯中取得成功,你必须遵循相同的辅导准则办理你的常识出资组合。

好消息是,办理这种类型的出资就像任何其他技术相同 – 它能够被学会。窍门是从一开始就开始做,并养成习气。拟定一个你能够遵循并坚持的例行程序,直到它变成第二天性。一旦达到这一点,你会发现自己自动地吸收新的常识。

树立常识出资组合。

定时出资。 就像金融出资相同,你需求定时地出资你的常识出资组合,即便数量有限。习气本身和总数量相同重要,所以设定一个固定的时刻和地点 – 这有助于你战胜常见的搅扰。下一部分将列出一些示例方针。

多样化。 你知道的越多,你变得越有价值。至少,你应该了解你现在作业中特定技术的细节,但不要停步于此。核算机技术改变敏捷 – 今日的热门话题或许在明日(或至少不那么受欢迎)变得几乎无用。你掌握的技术越多,你的适应能力就越强。

危险办理。 不同的技术均匀地分布在从高危险高报答到低危险低报答的范围内。把全部的钱都出资在高危险的股票上是不明智的,因为它们或许会忽然崩盘。同样,你不应该把全部的钱都出资在保存的范畴 – 你或许会错过时机。不要把你的技术鸡蛋都放在一个篮子里。

低买高卖。 在新兴技术变得流行之前开始学习或许就像寻觅被轻视的股票相同困难,但报答或许同样好。在Java刚刚创造出来后学习或许是有危险的,但那些早期用户在Java变得流行时获得了可观的报答。

从头评估和调整。 这是一个动态的行业。你上个月开始研讨的时髦技术或许现在已经降温了。或许你需求刷新一下你很久没有运用过的数据库技术的常识。或许,你或许想测验一种不同的言语,这或许使你在新的人物中处于更好的方位……

在全部这些辅导准则中,下面这个是最简略实施的。

(程序员的软技术:ke.qq.com/course/6034346)

定时在你的常识出资组合中进行出资。

方针。

既然你有了一些辅导准则,并知道何时添加什么到你的常识出资组合中,那么获取构成它的智力财物的最佳办法是什么呢?以下是一些建议:

每年学习一门新言语。

不同的言语以不同的办法处理相同的问题。学习多种不同的处理方案有助于拓宽你的思想,避免陷入惯例模式。此外,因为足够的免费资源,学习多门言语变得愈加容易。

每月阅览一本技术书本。

尽管互联网上有很多的短文和偶然牢靠的答案,但要深入了解一般需求阅览更长的书本。浏览书店页面,选择与你当时项目主题相关的技术书本。一旦养成这个习气,每月读一本书。当你掌握了全部当时运用的技术后,扩大你的视界,学习与你的项目无关的东西。

也阅览非技术书本。

请记住,核算机是被人类运用的,而你所做的最终是为了满意人们的需求 – 这是至关重要的。你与人合作,被人雇佣,甚至或许会面对来自人们的批判。不要忘记这个方程式的人类一面,这需求彻底不同的技术(一般被称为软技术,听起来或许很容易,但实际上十分具有应战性)。

参加课程。

在当地大学或在线寻觅有趣的课程,或许你或许会在下一个商业博览会或技术会议上找到一些课程。

加入当地的用户组和论坛。

不要仅仅作为观众成员;要积极参与。孤立自己对你的职业生涯是有害的;了解你公司之外的人在做什么。

测验不同的环境。

假如你只在Windows上作业,花点时刻在Linux上。假如你对简略的编辑器和Makefile感到舒适,测验运用最新的杂乱IDE,反之亦然。

保持更新。

重视不同于你当时作业的技术。阅览相关的新闻和技术文章。这是了解运用不同技术的人的经历以及他们运用的特定术语的极好办法,等等。

持续的出资是至关重要的。一旦你熟悉了一门新的言语或技术,继续前进并学习另一门。

不管你是否在项目中运用过这些技术,或许是否应该将它们放在你的简历上,都不重要。学习进程将拓展你的思想,开启新的或许性,并赋予你在处理任务时的新视角。思想的跨范畴沟通是至关重要的;测验将你所学运用到你当时的项目中。即便项目不运用特定的技术,你依然能够学习其间的思想。例如,了解面向对象编程或许会导致你编写更具结构的C代码,或许了解函数式编程范 paradigms 或许会影响你如何处理Java等等。

学习时机。

你正在狼吞虎咽地阅览,一直站在你范畴的打破前沿(这并不是一项容易的任务)。但是,当有人问你一个问题,你真的不知道的时分,不要停在那里 – 把找到答案当做一个个人应战。问问你周围的人或在网上查找 – 不仅在主流圈子中,还要在学术范畴中查找。

假如你自己找不到答案,寻觅能够找到答案的人,不要让问题无解地悬而未决。与他人互动有助于你树立你的人际网络,你或许会在这个进程中惊喜地找到处理其他无关问题的办法 – 你现有的常识出资组合将不断扩展。

全部的阅览和研讨需求时刻,而时刻总是不够的。因此,提前准备,确保你在无聊的时分有东西能够阅览。在医院排队等候时,一般会有很好的时机来完成一本书 – 只需记得带上你的电子阅览器。不然,你或许会在医院翻阅旧年鉴,而里边的折叠页来自1973年的巴布亚新几内亚。

批判性思想。

最后一个关键是对你阅览和听到的内容进行批判性思考。你需求确保你出资组合中的常识是精确的,没有遭到供应商或媒体炒作的影响。当心狂热的狂热分子,他们以为他们的观念是唯一正确的 – 他们的教条或许不适合你或你的项目。

不要轻视商业主义的力量。查找引擎有时仅仅优先考虑流行的内容,这并不一定意味着这是你最好的选择;内容提供者也能够付出费用来使他们的材料排名更高。书店有时会将一本书突出地摆放,但这并不意味着它是一本好书,甚至或许不受欢迎 – 这或许仅仅有人付出了那个方位。

(程序员的软技术:ke.qq.com/course/6034346)

批判性剖析你所阅览和听到的内容。

批判性思想本身便是一个完好的学科,咱们鼓励你深入研讨和学习这门学科。让咱们从这儿开始,提出一些发人深思的问题。

五问“为什么”。

我最喜欢的咨询技术之一是至少连续问五次“为什么”。这意味着在得到一个答案后,你再次问“为什么”。像一个持之以恒的四岁孩子发问相同重复这个进程,但请记住要比孩子更有礼貌。这样做能够让你更接近根本原因。

谁从中受益?

尽管听起来或许有点功利主义,但追寻金钱的流动往往能够帮助你了解潜在的联系。其他人或其他安排的利益或许与你的利益保持一致,也或许不一致。

布景是什么?

全部都产生在自己的布景下。这便是为什么声称“处理全部问题”的处理方案一般站不住脚,宣传“最佳实践”的书本或文章经不起检查的原因。 “对谁最好?” 是一个需求考虑的问题,以及关于前提条件、后果以及状况是短期仍是长期的问题。

在何种状况下和何地能够起作用?

在什么状况下?是否已经太晚了?是否还太早了?不要只停留在一阶思想(接下来会产生什么);参与到二阶思想中:接下来会产生什么?

为什么这是一个问题?

是否有一个根底模型?这个根底模型是如何作业的?

不幸的是,现在找到简略的答案是具有应战性的。但是,经过广泛的常识出资组合,并对你遇到的广泛技术出版物进行一些批判性剖析,你能够了解那些杂乱的答案。

(程序员的软技术:ke.qq.com/course/6034346)