程序员越老越优秀吗?

Peter Knego 向我们展示了一些有趣的东西: 官方数据:程序员年纪越大越出色、越稀有。他使用StackOverflow的声誉值和其它几个指标来印证他的观点。

他的总结是:

  • 随着年龄的增加,程序员的数量急剧下降。程序员数量的峰值出现在27岁,随后每6-7年减少一半。
  • 40左右的程序员对比20左右的程序员,回答的数量前者比后者多一倍,而提问仅为一半之多。这显示年轻一代更喜欢学习,而老一代更喜欢教授。
  • 帖子的质量,例如每个帖子的分值,随着年龄只有微弱的增加。
  • 老程序员通过更活跃的回答问题来赢得声誉。

明年我就年满40,在很多编程相关的社交圈里都被公认为“老程序员”。我的经验如下:

  • 每年,我都能更进一步的善于捕捉“大局”。我不认为这样的进步会有停止的时候。我现在做出的决策比起10年前更合适、更稳重。这归功于我变得更加淡定和有了更多的经验。
  • 对于新事物的掌握已变得信手拈来般容易,而不是早前的需要“深挖洞,广积粮”。经常,新知识一看就面熟,因为它们只是以前出现过的知识的再次混合。例如:如果你对Scheme、Self、Java很熟悉,那JavaScript就很容易理解了。如果你对C、C++和Smalltalk很熟悉,那Objective C就很容易学会了。
  • 不断积累的经验和更加清晰的思路让我的代码变得越来越好,但我仍然需要投入时间才能让它们真正的优秀(例如,好几次的往复修改。)
  • 我学会更加注意休息,更加注重自己的身体,但仍然还不足够。

Frank Silbermann在Pertinent 文章后留下的评论:

  • 速度快的程序员能通过他们高人一等的短期记忆来编出杂乱无章的代码、迅速的完成任务。这些程序员当他们年纪大、短期记忆力衰退后就会变得越来越糟。他们很可能会最后退出这个领域。
  • 慢程序员写出的代码组织的很好,可读性强,不依赖短期记忆。他们随着年龄的增加会越来越优秀,因为在他们的长期记忆里积累下来的是不断增加的策略、模式和技巧。

有不少非常聪明的程序员都不幸的落入了“速度快”的类型里。他们完成任务很迅速,但长期来看,他们写出的代码没有价值

[英文原文:Are older people better programmers? ]
分享这篇文章:

5 Responses to 程序员越老越优秀吗?

  1. haitao says:

    快还是很重要的
    快了,才有时间可以重构
    一般是无法指望公司能给你时间来重构,只能是自己省出时间

    • Luo Hong says:

      首先,需要说明一下的是,我们赞成不过度重构,过快的开发速度。重构是你的程序性能,最初的设计和算法,需求的变更等导致你的程序需要重构。在你编写代码之前需要很清晰的思路,对你的业务在代码上有完全的可控性,这是必须的,这仅是个人观点。

      • haitao says:

        我说的重构是需求、功能基本能实现的前提下,内部实现模式的优化、重复代码的归并以及为归并做的接口调整
        是小的加固、精益求精(不是早期的优化),这种是公司看不到也不关心的,所以只能自己腾时间来做

        程序性能,最初的设计和算法,需求的变更等导致你的程序需要重构,那是公司会给计划的
        但是,没有之前小的加固,做这种重构,往往是困难重重、举步维艰了

  2. 程序人生 says:

    程序员老了,干不动啦,速度慢了,成本高了,没有人要了,真的是这样吗,反正我是信了。。。

  3. 大表哥 对这篇文章的反应是好文

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据