“在软件方面,各个方面的变化总是如此频繁而迅速,以致你需要一种能够胜任你交给他们的任何一项编程任务的程序员。如果因为某种原因你发现一位集白痴与专家于一身的程序员,他真的非常非常非常精通SQL,但对其他程序设计知识却一无所知,那么就是简单不录用而了断。长痛不如短痛。”
---------P.135
今天周末,偶尔翻翻《JOEL说软件》,忽然看到这一段话,觉得与我心有戚戚然。
在论坛上经常有人讨论通才和专才,哪个才更能让公司青睐?或者某些只用过一种编程语言,或者仅仅只做过网页开发,在那里惊奇别人怎么会用过那么多的编程语言,做过那么多不同平台的开发,然后说:人的精力有限,能把一门编程语言学精就很不错了。
不知道这些人,如果看到上面这段话,会有什么感想?
我是个学得很杂,也做得很杂的程序员,几乎绝大部分的编程语言都会用一点,大部分的开发平台都接触过。我也清楚地知道自己永远成不了像Anders那样的极品天才,想做个最好的编译器,就做个最好的编译器;想发明一种最好的编程语言,就发明一种最好的编程语言。
我只是一个普通得不能再普通的程序员。我学着自己感兴趣的,跟电脑相关的一切技术,所以,我成了一个所谓的通才。
其实,个人认为IT行业真的需要通才,而且是需要很多的通才。
我以前曾经听过一件事:有个软件工程师,据说程序写得不错,但是如果电脑坏了,无论是什么故障,都只会把电脑直接抱到电脑城去,自己一点都不会修,连BIOS设置都搞不清楚,操作系统也不会自己安装。我刚刚听到这个故事时,很是怀疑这位工程师,是否真正懂得写程序?程序真的写得不错吗?
连基本的电脑硬件故障都搞不懂,连操作系统都不熟悉的工程师,做WEB程序的,连服务器的基本设置都不会的,写出来的程序真的能高质量、高效率、高性能地运行吗?程序可维护吗?
当然,在我入行五年多之后的今天,感觉在成为一般的通才之后,似乎还是非常有必要精通一、两门子技术的,如果你成不了管理者,还得自己Coeding的话。当然,对于管理者来说,越是通才越好。
否则,你写某个小程序时,没有应届生快,虽然你可能写个好架构,好维护。但你也因为带给小老板的实用价值不大,而找不到工作,或者郁郁这一辈子。
---------P.135
今天周末,偶尔翻翻《JOEL说软件》,忽然看到这一段话,觉得与我心有戚戚然。
在论坛上经常有人讨论通才和专才,哪个才更能让公司青睐?或者某些只用过一种编程语言,或者仅仅只做过网页开发,在那里惊奇别人怎么会用过那么多的编程语言,做过那么多不同平台的开发,然后说:人的精力有限,能把一门编程语言学精就很不错了。
不知道这些人,如果看到上面这段话,会有什么感想?
我是个学得很杂,也做得很杂的程序员,几乎绝大部分的编程语言都会用一点,大部分的开发平台都接触过。我也清楚地知道自己永远成不了像Anders那样的极品天才,想做个最好的编译器,就做个最好的编译器;想发明一种最好的编程语言,就发明一种最好的编程语言。
我只是一个普通得不能再普通的程序员。我学着自己感兴趣的,跟电脑相关的一切技术,所以,我成了一个所谓的通才。
其实,个人认为IT行业真的需要通才,而且是需要很多的通才。
我以前曾经听过一件事:有个软件工程师,据说程序写得不错,但是如果电脑坏了,无论是什么故障,都只会把电脑直接抱到电脑城去,自己一点都不会修,连BIOS设置都搞不清楚,操作系统也不会自己安装。我刚刚听到这个故事时,很是怀疑这位工程师,是否真正懂得写程序?程序真的写得不错吗?
连基本的电脑硬件故障都搞不懂,连操作系统都不熟悉的工程师,做WEB程序的,连服务器的基本设置都不会的,写出来的程序真的能高质量、高效率、高性能地运行吗?程序可维护吗?
当然,在我入行五年多之后的今天,感觉在成为一般的通才之后,似乎还是非常有必要精通一、两门子技术的,如果你成不了管理者,还得自己Coeding的话。当然,对于管理者来说,越是通才越好。
否则,你写某个小程序时,没有应届生快,虽然你可能写个好架构,好维护。但你也因为带给小老板的实用价值不大,而找不到工作,或者郁郁这一辈子。