程序员越老越优秀吗

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

  他的总结是:
  • 随着年龄的增加,程序员的数量急剧下降。程序员数量的峰值出现在27岁,随后每6-7年减少一半。
  • 40左右的程序员对比20左右的程序员,回答的数量前者比后者多一倍,而提问仅为一半之多。这显示年轻一代更喜欢学习,而老一代更喜欢教授。
  • 帖子的质量,例如每个帖子的分值,随着年龄只有微弱的增加。
  • 老程序员通过更活跃的回答问题来赢得声誉。
  明年我就年满40,在很多编程相关的社交圈里都被公认为“老程序员”。我的经验如下:
  • 每年,我都能更进一步的善于捕捉“大局”。我不认为这样的进步会有停止的时候。我现在做出的决策比起10年前更合适、更稳重。这归功于我变得更加淡定和有了更多的经验。
  • 对于新事物的掌握已变得信手拈来般容易,而不是早前的需要“深挖洞,广积粮”。经常,新知识一看就面熟,因为它们只是以前出现过的知识的再次混合。例如:如果你对Scheme、Self、Java很熟悉,那JavaScript就很容易理解了。如果你对C、C++和Smalltalk很熟悉,那Objective C就很容易学会了。
  • 不断积累的经验和更加清晰的思路让我的代码变得越来越好,但我仍然需要投入时间才能让它们真正的优秀(例如,好几次的往复修改。)
  • 我学会更加注意休息,更加注重自己的身体,但仍然还不足够。
  Frank Silbermann在Pertinent 文章后留下的评论:
  • 速度快的程序员(Fast programmers)能通过他们高人一等的短期记忆来编出杂乱无章的代码、迅速的完成任务。这些程序员当他们年纪大、短期记忆力衰退后就会变得越来越糟。他们很可能会最后退出这个领域。
  • 慢程序员(Slow programmers)写出的代码组织的很好,可读性强,不依赖短期记忆。他们随着年龄的增加会越来越优秀,因为在他们的长期记忆里积累下来的是不断增加的策略、模式和技巧。
  有不少非常聪明的程序员都不幸的落入了“速度快”的类型里。他们完成任务很迅速,但长期来看,他们写出的代码没有价值。

你可能感兴趣的:(随笔)