程序员的技能知识体系真的只能维持五年吗?

jopen 9年前


 程序员的技能知识体系真的只能维持五年吗?
 

根据我们的调查结果得知,开发人员技能的半衰期约为5年,这意味着我们不能将眼光停留在当前的技术层面上,要保持一种终身学习的理念。
 
开发人员所掌握的技能,(我们暂且不考虑通过集中培训这一种情况),都有它的寿命期限。事实虽然如此,但不足以让我们惊讶,我们面临的更重要的一个问题是,目前所掌握的技能体系已经让我们应接不暇。
 
Philippe Kruchten,英国哥伦比亚大学软件工程学院教授,通过几年时间浏览IEEE软件杂志(由目前全球最大的非营利性专业技术学会所创 办)上的一系列问题后,因一时兴起提出了五年假说。他推断,一些想法,工具和技术今天不再持有相关性(可参见他在2008年发表的论文)。
 
他的结论是可以通过大家协同一起构建一个标准的专业发展方案。在他不如学术界之前,已有三十年时间亲历亲为于软件工程行业.。在我们感叹Kruchtem教授的时间跨度及建议之前,或许应该先定义一下什么才是开发技能。
 
技能的范畴
 
在开发人员技能的半衰期及开发经验的构成上,已展开了太多的辩论会来争论。Henrik沃恩最近从三个方面进行了概括:
 
1、编程:

语言、范式、技术、工具。核心概念,经常从一种语言翻译成另一种语言而不考虑语法。

2、作用域:

你知道程序可以在什么样的环境中应用。这通常是非常容易被忽视的一个环节,但是Warne重点支出,如果开发者能够轻车熟路的驾驭这个环节,他们将非常有利的掌握了一种业务技能。
 
3、代码库:

特定的工作区间。也就是我们常说的workplace,我们必须要有这种将长期使用的代码放置到一个稳定的地方进行开发的理念。
 
通过这三个方面来定义开发者的技能体系,Warne认为是最有价值的。虽然编程经验也至关重要,但是在整个体系中并不是有它来决定,而这也使得辩论更加的有意思的起来。
 
作为开发者,代码并不是你唯一的技能,你所掌握的整个技能体系才支撑起了这五年的时间范畴。
 
“没有办法”,Warne说,他支持这个想法,虽然工作中的改变意味着要学习新的代码库,但是你的技能体系在编程和作用域中对你将是非常有帮助的:
 
现在的编程语言都会通过一些参考示范来告诉你如何通过不同的方式达到相同的效果(即便他们的基本原理都是相同的)。
 
Kruchten和Warne所强调的基本内容都是专业发展和保持可持续的重要性。正因为有如此多的创新产业,总要有新的东西可以学习或者进行集体培训,这才成为我们不得不及时充电保持前瞻性的一条道路。
 
终身学习
 
Kruchten所提的可持续专业发展(CDP)这个观点在业界也早已应用,例如,所有注册的卫生工作者在澳大利亚必须依法承担CPD,内科医生,外科医生,都需要证明他们是参与CPD计划为了满足工作,工业和组织的需求。
 
当然,这种比较并不完善,但技术的推陈出新及行业趋势的发展势必对此造成极大影响。如果你工作于IEEE认证软件开发专业,那么你就已经意识到CPD的强制性的实践,证明了上课,读书和参加会议或研讨会是非常明智的。
 
为了更好的机会,开发者必须有一个适应于开放的心态,这就意味着在掌握当前技术基础上还有保持终身学习的心态。新的语言在不断发展,新的框架在不断的完善,紧跟行业趋势,意味着我们更快更容易的融入到新的技能体系中。
 
通过这场辩论Kruchten得到了这样一个启示,“我们有一中道德义务,紧跟这个领域前进的脚步”。可是低技能的开发者对他们的开发者在道德上有约束力吗?这个问问题仍在讨论。
 
正如一位评论者在一个程序员问答网站上慷慨激昂的陈词,“基本编程原理和技术是永恒的”。那么你又是怎么认为的呢?

英文标题: Does developer knowledge really only last five years?
</div>

来源 :  IT学习者