众所周知,软件行业日新月异,条脉繁多。有经验的开发人员都知道,与其什么都懂点,不如精通一门或某几门。最典型的是,开发平台分windows、linux,语言分C/C++/Java/Python等等不一而足。
确实不可能样样精通,但实际的开发趋势却是——混合异构开发。因为软件行业还处在快速发展期,各种平台和语言的变化十分频繁,每个领域都有其自身的局限。这些局限有时候表现为不可能,但更多的时候表现为代价昂贵(比如没有C干不了的事,但实际的情况是,很少有人用C来写Web),因此我们需要混合异构。
但人的精力总归是有限的,现实的项目进度总是逼人,技术的更新趋势总是对人的学习能力提出更高的要求。因此我们遇到了一个巨大的矛盾,我们既需要精通,还需要广博。再也不是早先那种手艺人的思路(比如旧时手艺人只要会木匠技巧,就可以完全独立的工作,不需要会泥瓦匠技巧),学会C语言,走遍天下都不怕了。
现实被大致分割为三大阵营,一个是坚持专一路线,这部分人在某个领域持续深入,心无旁籍。这类人更多的表现为大公司里的专才,这样的人华为最多,听说某公司面试了一个华为资深开发,生平只研究ARP协议,及其精熟,说起其他的如HTTP协议等,一窍不通,便是典型例子;第二类是那种广博路线,他们由于工作或自身危机感的原因,主动或被动的进入各个领域,每样的东西都能拉起来摆弄几下,看上去样样都懂,结果是大家都知道,没一样精通的。这种人更多的见于那种创业型的小公司里,笔者见过一个这样的,java、C、sql,web、服务器、windows GUI、嵌入都能搞。写C++代码只知道new,不知道delete....;第三类是那种听说过每个领域都有学问,干脆懒得广博,也懒得深入的,一味依靠所谓的经验。这类人更多的是那种所谓计算机专业的,又大多常见于中小型公司。大公司看不上他们的专业,小公司迷信他们的经验。这类人平时是不太爱看书的,他们更多的把开发软件当成职业,不是爱好和追求。
依据笔者对这些现象的观察和思考,我能明白,大概第三类所谓的专业人士,可能不会看到这个帖子,因为他们不太爱“学习”,不深入也不广博。第一类人士可能更多的是看看,自己心中有些想法,也不会怎么表达。恰恰是第二类,更多的是焦躁不安或者兴趣盎然,大概是看帖回帖的主力。
确实不可能样样精通,但实际的开发趋势却是——混合异构开发。因为软件行业还处在快速发展期,各种平台和语言的变化十分频繁,每个领域都有其自身的局限。这些局限有时候表现为不可能,但更多的时候表现为代价昂贵(比如没有C干不了的事,但实际的情况是,很少有人用C来写Web),因此我们需要混合异构。
但人的精力总归是有限的,现实的项目进度总是逼人,技术的更新趋势总是对人的学习能力提出更高的要求。因此我们遇到了一个巨大的矛盾,我们既需要精通,还需要广博。再也不是早先那种手艺人的思路(比如旧时手艺人只要会木匠技巧,就可以完全独立的工作,不需要会泥瓦匠技巧),学会C语言,走遍天下都不怕了。
现实被大致分割为三大阵营,一个是坚持专一路线,这部分人在某个领域持续深入,心无旁籍。这类人更多的表现为大公司里的专才,这样的人华为最多,听说某公司面试了一个华为资深开发,生平只研究ARP协议,及其精熟,说起其他的如HTTP协议等,一窍不通,便是典型例子;第二类是那种广博路线,他们由于工作或自身危机感的原因,主动或被动的进入各个领域,每样的东西都能拉起来摆弄几下,看上去样样都懂,结果是大家都知道,没一样精通的。这种人更多的见于那种创业型的小公司里,笔者见过一个这样的,java、C、sql,web、服务器、windows GUI、嵌入都能搞。写C++代码只知道new,不知道delete....;第三类是那种听说过每个领域都有学问,干脆懒得广博,也懒得深入的,一味依靠所谓的经验。这类人更多的是那种所谓计算机专业的,又大多常见于中小型公司。大公司看不上他们的专业,小公司迷信他们的经验。这类人平时是不太爱看书的,他们更多的把开发软件当成职业,不是爱好和追求。
依据笔者对这些现象的观察和思考,我能明白,大概第三类所谓的专业人士,可能不会看到这个帖子,因为他们不太爱“学习”,不深入也不广博。第一类人士可能更多的是看看,自己心中有些想法,也不会怎么表达。恰恰是第二类,更多的是焦躁不安或者兴趣盎然,大概是看帖回帖的主力。