读书人

[转载]编程目标:开发人员怎么提高能力

发布时间: 2012-09-06 10:37:01 作者: rapoo

[转载]编程目标:开发人员如何提高能力

  学习不同的编程语言范例

用汇编语言写一个应用用函数式语言写一个应用用面向对象语言写一个应用用基于原型的语言写一个应用用逻辑编程语言写一个应用用Actor模型写一个应用用Forth语言写一个应用[C]

  扩宽对我们开发时使用的基本组件的了解:

写一个网络客户端(如HTTP, FTP客户端)写一个设备驱动程序写一个B叉树数据库改进一个现有的库包,来获得更好的用户体验写一个提供插件模型的应用或框架写一个测试框架写一个程序语言

  更上一层楼:不断的练习,积累

完成五个code katas (Kata是来自日本武术的概念,通过不断的重复和练习来提高技艺)用Koan编程来学习一种你想学的语言参加编程进修课程阅读SICP,完成所有的练习

  编写程序并开源:

为开源项目贡献力量让别人接受你的补丁获得一个重要的开源项目的提交权限发布一个开源项目优化一个开源项目的代码,详细记录并分享出来。

  通过教导别人来提高自己[D]

做一个绘声绘色的演讲在一个本地用户组面前演讲在一个会议上演讲开设一个训练课程发布一个教程发布一个开源项目的有建设性代码审核写一本有关编程的书

  关于这些目标

  现在让我们来多说一点。注意这些目标都是可量化的。每一个都有个布尔值:你要么完成了,要么没有。例如,虽然很难界定你是否掌握了一门函数式语 言,但是非常容易确定你是否用函数式语言写了一个应用。后者是可观测的,可量化的,布尔值。以上所有的目标都具有这一特性──可量化性。

  无可否认,这个可量化性并非无懈可击。就拿在一个会议上进行演讲来说,你当然可以做一个很烂的演讲,然后还可以拍拍胸脯说你实现了这个目标。不 过既然你是我这篇博客的读者,我假设你想成为一个优秀的程序员,你是一个对自身要求很高的人,不会是仅仅完成了某个任务就沾沾自喜的人。

  既然我们在讨论改善,那么你对这份列表有什么改进意见呢?

  这个列表作为GitHub的有效依据,你们可以随意fork并添加更多的成绩。(确保它们是可量化的。)

  或者fork之后,你可以划分出你已经取得的成绩。你还可以为你正在努力的目标做上标记。(可以参考Justin Blake, Pierre Chapuis, Yann Esposito的分支)

  你也可以写评论,什么经验让你变得更为优秀,以及你希望下一步实现什么目标。

  注释

  [A]不得不强调下第四步。想要更出色的实现目标,你必须在你进行下一步之前停下来回想一下,问问自己到底学到了什么。花些时间写下些想法,更好的做法是,和他人分享,与其他完成同样任务的人作个对比,看看你的学习效果。
  [B]在coderwall.com这个网站,你可以更详细了解以目标为驱动的学习方法。
  [C]Forth本身就是一个语言范例。
  [D]我想起Paulo Freire 的一句名言:“传授知识本身就是在学习传授知识的艺术...”

  -------------------------------
  译文出处:伯乐在线- 职场博客 - 程序员
  译文链接:http://www.jobbole.com/entry.php/1420

读书人网 >编程

热点推荐