大多数人终生追逐的那些希望和努力是毫无价值的。每个人只是因为有个胃,就注定要参与这种追逐。而且由于参与这种追逐,他的胃是可能得到满足的,但是,一个有思想、有感情的人却不能由此得到满足。——爱因斯坦

[转]30分钟,让你成为一个更好的程序员

发布时间:2012-01-27 11:55     来源:oschina 

我相信激励是非常重要的。这也是为什么我常常把时间管理(这些书激励我不断改进我的时间管理方法)的书和软件开发拿出来看看。我最近刚看完一本书,《Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman /  软件开发者路线图:从学徒到高手 》。这本书推动我仔细的思考我应该把时间花在哪里。

巧合的是最近是我 25 岁生日,也即将是新的一年。所有这一切都推动着我整理自己的技能,并制定下一年的学习计划。

我把它写到博客里面也是那本书的作者建议。我觉得这个建议非常好。和所有人分享你的计划,会让你更有动力去完成它!

技能

那本书的作者建议,制作一张图表,列出你所有的技能,然后评估它们。有这样一张图表你就非常清楚你下面将要学习什么。

skill

我把所有的技能分成四组。其中两组是非常实用的,包含了我日常用到的技术。其他的两组是一些软件开发的基础知识,计算机科学的理论等等。我要说 明的是,我并没有做非常严格的调查,这个图表也不是我这些年积累的所有技能。这个图表的目的并不是让你对自己所有的知识列一张详细的表,而是让你自己对自 己的专业技能有一个全局的了解。我对技能打分为1-5,1分就是了解,但是没有实际操作过。5分就是非常熟练的掌握。

当我第一次看到这张表时,我意识到我的计算机理论是这么差。我也意识到我欠缺 unix 技能。还有,我发现我在使用 ruby 的时候,没有使用 java 和 groovy 的时候爽。我也也许应该在 ruby 上多花点时间,让它达到 5 分。

阅读列表

在我看来,书是最有效的获取任何一个领域知识的途径。你可以看视频,阅读博客,但是你的知识是很分散的,直到你阅读了这个领域的一本好书。我有 一个建议, 那就是交替阅读技能书籍和基础书籍。阅读经典的基础书籍从长远来看一定会大有裨益。但你也不能停止学习新的技能,也许你明天就能用上。

根据我的技能图表,我决定阅读“Rails AntiPatterns”这本书。而计算机科学的基础知识我打算通过阅读“Types and Programming Languages”来提高。

也许你会觉得我没有必要做这个知识图表,因为不用这个图表我也可以做相同的决定。这很有可能,但是这个图表给了我做这个决定一个清晰的理由。 

现在就尝试!

所有这些工作大约只需要花费你 30 分钟时间,而你将有可能成为一个更好的程序员

英文原文:30-Minute Exercise to Become a Better Programmer

posted @ 2012-02-06 14:45  东去春来  阅读(266)  评论(0编辑  收藏  举报