第80期IT沙龙实录:中国软件业人才打造模式之辩 | ||||||||
---|---|---|---|---|---|---|---|---|
http://www.sina.com.cn 2004年11月29日 17:25 新浪科技 | ||||||||
时间:2004年11月21日 主题:第80期IT沙龙——中国软件业人才打造模式之辩 主办单位:书生公司
联合主办:3721科技有限公司、电脑报、全国高等院校计算机基础教育研究会 协办:新浪网 吴功宜(南开大学信息技术学院院长): 各位来宾大家好,今天非常高兴参加沙龙。今天的沙龙除了北京的朋友,全国四个直辖市里有三个直辖市在一起。现在我找第四个直辖市的人,我是南开大学信息技术学院院长我叫吴功宜,临时客串主持,这里有北京来的几位教授。首先介绍的是谭浩强教授,第二位是吴文虎,是清华大学计算机教授,林冲八十万进军教头,我们这位是奥赛领队,他带领的奥赛队伍已为国家领到了众多的奖牌。第三是雅虎公司中国区总裁周鸿祎先生。周先生是从程序员做起,稍候他会谈自己很多的感想。下面是张晓明同志,蒋涛先生,还有韩曦晨先生。 今天我们讨论的题目是中国软件业人才打造模式之辩。世界上讨论一个很重要的问题,就是教育的问题。我们这个形式是沙龙,沙龙形式的好处是大家可以自由发言,自由探讨发表各种意见和建议。我们讨论问题的背景是这样,中国政府对信息产业的定位是用信息化带动工业化,用信息技术带动传统产业发展,在这种情况下,信息技术和信息产业发展的核心是什么?是软件技术和软件产业,而发展软件产业的根本是什么?是软件人才。今天会议的中心议题有几个,一个是如何培养国际化的软件人才?如何培养高水平的软件技术研究人才?这个主题的提出我们现在软件人才培养从模式上、规模上和方法上以及结果上有哪些不适应的地方?我想首先提出问题,然后咱们讨论问题。这种不适应我想由张晓明主任首先发表一下意见,在此基础上我们再讨论。 张晓明(《电脑报》编辑部主任): 让我先发言我真的很惶恐,一面是泰斗级的专家,一面是企业、媒体界的知名人士。我自己谈谈自己的感受,我是去年2月份跟中国贸促会的几位同志专门去了一趟印度,当时去印度的主要目的是为成都一个国际软件会招商引资,也是招揽印度的一些企业到成都重庆来投资。我们的感触很深,因为中国的程序员做媒体软件板块也是非常重要的版面,通过做报纸的过程中我们接触很多程序员。中国程序员很有才华也很努力,但我们的程序员一般会把一个程序事无巨细由一个人或两个人全部做下来,没有什么具体的分工,更谈不上软件的架构。我们到印度发现这一点完全不一样,印度其实是一个非常穷的国家,相当于中国六十年代的水平,软件园区里外是两个世界,地面比硅谷还硅谷,外面满天尘土,小贩、乞丐到处都是。我们在班佳努尔,他们的市长让我们猜整个城市里受过高等教育的人的比例,我当时很吃惊。相当于郑州或长沙这样的城市甚至还小一点,受过大学教育人员的比例是多少?80%!我无论如何也无法想象,那个城市里有80%的人受过高等教育。在那里一个软件企业出口25亿美元,中国一年软件出口是10亿人民币。我不知道自己说得对不对。 吴功宜:这次请的几位嘉宾有教育界的、企业界的、媒体界的,下面是不是这样,为开辟话题,我们先提出一些问题。周先生谈谈您的看法,然后我们再说。 周鸿祎(雅虎公司中国区总裁):确实不是谦虚,因为见到几位教授,特别是像吴文虎教授,他原来办的奥赛,我是从买的书里知道他是专门组织奥林匹克,我上高中的梦想就是参加他们的比赛,但很遗憾水平不够没去成。谭浩强老师,我读的第一本计算机书是他的著作,这些书影响了我当年的择业,走上了当程序员这条路。今天他们在这里,应该是他们几位跟大家讲,我们作为小字辈,我想更多地来聆听教导。大家都不太好意思说,我这个人性格比较直率,就先抛砖引玉,大家可以互动。我本人在方正后来做3721,现在在雅虎,现在就像一个蝙蝠一样,碰到走兽,大家觉得我是飞禽,碰到飞禽大家觉得我是走兽,不知道该把我列成一个商人还是一个技术人员,不知道我是一个创业者还是一个外企的职业经理人,好象哪方面都沾一点。 但我觉得自己最本质的,或者有一天我不干这份工作了,我退休回家去了,我还是会选择在家里写程序,所以骨子里还认为自己是程序员,我觉得写程序可以给我带来很多的乐趣。用一句不恰当的比方,写程序就是一会儿让你感到非常痛苦和绝望,因为你碰到非常多的Bug,可是你坐在计算机前连续几昼夜想尽办法把Bug排除了,或者你的产品被发布了,很多人在用你的产品,你的产品给他们带来很多的便利,这种高兴的感觉比挣了钱的感觉更强烈,所以我本质上是程序员。 这几年公司一直在招聘,我也一直在抓公司的软件研发,包括最近我们和《电脑报》合办软件大赛,也是希望把我个人卫代表的一些观点和目前社会上流行的一些观点,应该说是非常不认同,我们也希望用我们的一些力量,改变一下对目前程序员的看法。第一是目前对软件蓝领的看法非常不认同,大家说像印度学习快速弄一批人进行专业的补习。认为这些人只要会写代码,再有人做软件系统架构,再有人检测bug就可以了。我个人认为做软件应该还是一门艺术,一个优秀的程序员和一个差的程序员,因为是虚拟的工作,其劳动生产力相差绝对不是十倍二十倍,可能是上百倍、上千倍甚至无穷大。所以在软件领域,我们还是要呼唤一些个人英雄主义。 今年最伟大的互联网公司可能不是雅虎可能是Google,我们跟Google做过很多交流,虽然他养了很多的博士,但其真正的核心程序员和核心代码的数量并不大。大家知道Linux怎么做出来的,我们那么多的计算机系学生学了操作系统,国家投了众多的资金也没搞出一个Linux,一个芬兰的计算机学生就觉得学校的东西不好用,自己写了一个内核,所以我觉得软件在这个行业还是要呼唤一些个人英雄主义,培养一些高水平的人才,跟张晓明所说的观点是相悖的。第二个观点,我看程序员杂志,我跟蒋涛也是很好的朋友,但我经常抨击他们的杂志。我说现在感觉程序员非常热中于作语言的研究,大家要把C语言C++语言或者一些更新的东西研究得更透彻,动辄就谈模式设计和软件工程,包括张晓明刚才也提到,我们公司的软件都是自己做,他们有多好的分工。 我觉得现在很多程序员连基本功都不扎实,自己可能还没写过十万行或者二十万行代码,本身对编程还没有一个了解的时候,就开始上升到软件工程,动辄谈模式设计。连几个大规模的系统都没有设计过,我经常在相关杂志看到一些论道的文章,我对目前这种看法是比较反对的。第三个观点,我听到很多计算机系的学生都在抱怨中国计算机教育不好。这些学生说现在都流行JAVA,.NET了,各种嵌入平台,各种Server编程,我们学的内容都是老掉牙的,还是谭老师那本C语言。我的看法恰恰相反,我觉得作为计算机系的课程或者一个本科生在学校还是应该注重基础研究。换句话说我在方正管过很多的程序员,这么多年我们见到真正出色的程序员,其数据结构、编译原理、基本功一定学得很好,比如他不懂得Windows编程,但给他一周时间,他就可以快速理解,你一旦换到Linux上编程序,他的转换周期也不会很慢。 我见过一些程序员很热衷于一些快速开发工具,整天追新,后来程序没写几个,自己的事业也荒废得差不多了。我觉得计算机系的教育还是应该注重基础学科,包括我个人也感觉,当年我是在西安交大念书,很不幸,中国那么多的交大,西安交大跟上海交大相比我们非常闭塞,学生们除了每天上课没有什么事可干,不像经济发达的地区大家可以唱歌、跳舞很快乐,我们是因祸得福,我们最近做搜索引擎的核心开发,这里跟Google相比没有像可口可乐秘方的东西,其实所有核心的东西都可以向下分解成你在学校学的最基础课的一些基本的数据结构和算法。所以你的基础打得越扎实,将来这个人作为程序员发挥的能量或者说你能够做的高度越高,这是我第三个比较偏激的观点。我觉得那些学生时期接触东西比较多,就抨击我们教学方式的学生,我认为他们是没有一个正确的认识。如果我们大学里都变成教最时髦的东西,我觉得大学可以不用开了,你们自己去订阅一份《电脑报》,或者互联网上什么新东西都有。我还有很多偏激的观点,先拿这三个观点来,我是先抛砖再引玉。 吴功宜:我故意让周总先把话题打开。我们这次请了重量级的人物第一位是谭浩强老师,谭浩强老师是全国高等院校计算机教育研究院的院长,他出的书已进入吉尼斯世界大全了,因为写的书已出了一千万册,说实话,谭老师在这里有很深的造诣,下面请谭老师发表意见。 谭浩强(全国高等院校计算机教育研究院的院长):今天讨论的问题是软件人才的培养,这个题目是非常广阔的,也是很有层次的题目。因为人才是分层次的,多种模式、多种层次。我想从更广泛的角度谈谈我的想法,首先要解决一个定位的问题。第一软件的教育或者计算机的教育并不是一个统一的模式。你对什么人进行什么样的教育。整个社会有三种层次,第一个层次是计算机普及教育,第二层次是计算机继续教育,第三是计算机专业教育,这三个层次学习内容是不一样的。普及教育的目的是让大家从不懂计算机能迅速进入计算机大门。 这个任务很重要,刚才吴老师说的我的书主要解决的是这个问题,怎么尽快让大家入门。这看起来是很浅的事,像幼儿园的工作,但这些工作做好了意义非常大。为什么在中国有1250万册?我写书有一个理念,以人为本、将心比心、逆向思维、换位思考。有人说你这个书有什么秘诀?怎么卖得那么多?我说简单,一个字就是“懂”,你写书讲课首先要让别人懂,这是基本的要求,别人都不懂你能成功吗?大家看我的书入门以后提高就比较有基础。现在中国提高和普及的关系首先是入门,入门以后才能提高。 《电脑报》这期有篇文章是我想做一个程序员,他想学语言的时候,编程从1加到100。在大家看来可能是很幼稚的问题,但就是这个把他引入计算机大门。我曾经到清华大学一个老教授家作客。他不懂计算机的,他听人家说计算机很重要,就买了一台最高级的计算机。但他不会用,找了隔壁邻居的女儿,是清华大学计算机系的,那个女孩给他写了十几条步骤,第一按开关,第二当出现Windows98你就按开始,然后如何如何。他每次开机都拿这张纸第一步第二步第三步,有一次纸丢了他就不会开机了。我说怎么那么笨?很简单。他是计算机是很难的,我说那么多书你买本来看看。他说书都写得太厚,而且我都看不懂。当教授的人都会有体会,谁也不会看完一本书再做一件事。你去搞一个论文,有哪一段不懂,我就查那一段,长期以来养成了查阅资料的习惯。现在很多书都是你得看完整本书才能做一件事,没这个工夫。第二这个书我们要看得懂。名词太多、概念太多不行。 很多公务员的考试考二进制转换,123.456转换成二进制是多少?我说没必要,公务员一看计算机太难了,我还没学到Word和Excle,更不用说二进制了。所以我说他们之所以不能入门不是他们的水平低而是我们搞教育的人不行,没有针对他们的特点让他们入门。所以我提出了一个口号是让广大群众轻松愉快、兴趣盎然地进入计算机。我总结了三种态度,一种人是广大入门者他们说这样太好了,第二是搞计算机教育的人他们说这样是对的,但要付出很大的努力,不容易。第三征求了计算机系大专家的意见,他说不行,计算机是一个艰苦学习的过程,怎么可能轻松愉快、兴趣盎然。我说你看培养什么人了,你要培养一个博士、博士后绝对是很艰苦的过程。但问题你的对象是初学者,没学过计算机的人。所以现在的问题是人为地把很多问题搞复杂化了。 本来你学计算机从文字处理,Windows入手并不难,但你为了讲这个要去讲二进制那不是人为复杂化了吗?有人问你有什么本事,我说没什么本事,但只有一个,我不把简单问题复杂化,而把复杂问题简单化。我的C语言之所以大家觉得很成功,很多大学都在用,是有人说以前觉得C语言是很难学的,自从谭浩强出了这本书感觉不难学了,这是对我很大的鼓励。我的观点就是不要把简单的东西复杂化。最近我在C语言基础上又出了一本C++,有人可能看过,清华大学出版社出的,这本书我写了两年。难在什么地方?难不在技术上,难就难在怎么把难的变成不难的,把复杂的变成简单。学校很多老师说看了以后这个目的达到了,如果这样教学容易多了。所以计算机普及如何让更多人进来对我们全民族来说是很重要的任务。第二个层次是计算机基础教育或者计算机技术教育。他面对大学生打下计算机应用的基础,比如一些语言、计算机程序设计、数据库。 这有一个定位的问题,一方面我们很多业界认为大学离工作太远,很多毕业生毕业以后用不上,一方面很多课程不能不上,如果把所有大学课程都变成高职一样,学得很具体也不行。比如C语言,我们大学遇到这个问题,有人认为C++出来以后C语言落后了,不要学C语言了,都学C++吧。去年和前年我们分别到澳大利亚、新西兰考察,我每到一个学校都问一个问题,你们C跟C++怎么摆?学不学C?回答我的百分之百都是C不能取消,都是作为最基本的课程。而且我听说美国一个学校,导师给学生出一个题目说你可以用任何语言做,但你用C++做我给你零分,你用C做我给你一百分。很多人不理解,这个教授的意思就说C是基础,因为你把C打好基础,以后做别的工作就非常容易,所以目前赶时髦的方法我是非常不认同的。来一个新的就学,就像狗熊掰苞米一样,所以要打好基础。第三是对专业从事计算机开发的人,这些人是进一步,有人把第三层和第二层搞混了。 第三层就要求大学学习很多具体的开发知识,比如C语言,C语言里没讲什么开发中的问题,C++我也考虑过怎么写,你写成基础还是专业开发?我选择是基础。因为你选择的对象是从来没有学过C++,而C++的本质是解决大型软件中的问题,如果没编过大型软件是不能体会C++的真谛,从零到C++是不够的。有人问我怎么学,我说C++可以分两个阶段学习,第一阶段在大学阶段打基础,第二阶段毕业后遇到问题,编程的时候再学C++,可能学得比较深入。大学还是很重要的打基础的阶段,当然这个基础不能脱离实际,用不到的也学,还是要围绕将来所需要的打好基础。所以我认为这三方面是很重要的,就是要有定位。曾经有人问我,C语言和C++是不是对所有人都合适?我说不,我从来不认为一本书对所有人都合适,哪一本书都没有这样的本事,因为学生的人是分层次的,如果你去拿小学的课本给研究生看,研究员可能说太浅了,反过来让研生的课本给小学生看,小学生说太深了我看不懂。所以本事再大都不可能包打天下。人才的培养很重要的就是根据你所选择的对象准确定位、在此基础上才可以做到更好的效果。 吴功宜:刚才谭老师说了他成功的诀窍。下面请吴文虎教授谈谈,因为他带队去奥赛,是国人非常关注的。这个数字我记得非常清楚,30块金牌、18块银牌、13块铜牌,这里有很多关于计算机教育方面的问题,有一些想法和思路,吴文虎教授非常有感触,我们请他谈谈。 吴文虎(清华大学计算机教授):各位嘉宾,今天挺高兴来这儿参加座谈。刚才谭老师得特别好。很不客气地讲,过去写的程序书是天书,谭老师带头把一个天书改造成地上的人能懂的东西这是一大功劳,所以才会有那么多人喜欢看,这是很不容易的,打破原来的思路,把它写成通俗易懂的。我们对水平有不同的评价,我认为从读者的角度来看这是非常高的水平。如果我们当老师的不是为唬人写书,那么能让读者在最短的时间学会那是最棒的。刚才周总讲得也非常好,从软件来看,我们的学生怎么样?是不是就不如印度?我认为不是。有可能我们话题讨论的针对性题目不在这儿,我老在琢磨这件事是不是中国就不行? 我们的软件老上不去,我认为不是我们的人不行,我觉得可能还是一种体制或者其他的东西困扰着我们。从国际赛场上来看,我还没看到印度人去参加比赛,这是从中学生方面看。从大学生,我也是领队,我是领清华大学的队去,七、八届了每次都没有印度对手能去。每年大概有3160支队伍,就跟足球赛似的,先分区赛,能够进决赛的是60个队伍,清华大学每年都进决赛,最好的成绩第一届是拿了世界排名第七,那是在亚特兰大,华人特高兴,举着旗子就来了,要开Patty,说我们真不错,头一次去就拿全世界第七,我们最好的成绩是两次第四,一次第五。因为这个队太多了,有3000多支队伍,竞争出60个去决赛,哪天足球这样我整夜都狂欢。 我不想评论足球界,我要评论他我意见可大了。因为我们不是干足球的,不明白他那儿的酸甜苦辣,但我觉得我们中国的青年,中国的青少年应该说是非常优秀的,我们应该有这个能力有志气自立于世界民族之林。我参加这个活动,可以说是起源于1984年,当年小平同志讲计算机的普及要从娃娃做起。第一个娃娃就是李静(音)同学,是微软的研究员,在清华大学电子系被聘为客座教授。当年只有15岁,到清华参加第一届全国比赛的时候,就十五六岁,那就是不一样。我出了五个题目,对领队讲,恕我直言,一个省带三个孩子来比赛,我说你带来的孩子做出两道我就很满意了,你要做出三道你就获大奖了。 因为我出的题目有难度,第二时间特短,就给一个半小时要做出五道题来。结果李静同学超出我的想象,真的做五道。当场没有人做五道,最多做三道。李静拿了一等奖第一名,第二名第三名三个人组成一个代表团,由我领队,还有一个记者,就是上海儿童计算机世界的于记者。我们两个带他们到美国去考察,考察过程当中就已经发现我们的孩子就是行。他们有志气,看到第一台苹果机的时候,那个苹果机也是美国青少年创造的,他们说没问题,给我们条件,我们一样做。不管他能不能做出来,他那个志气在那儿。事实证明他们真的行,那是后来的事。上了大学以后表现出他们的能力。所以我就说,我们应该说对于人才的培养来讲,我很同意刚才谭老师说的,我们要有层次。我以为我们奥林匹克的选手没有定位在程序蓝领,我的目标这些人应该是大师,因为他们从小受到了非常好的教育,而且他是非常努力的,功课非常全面,非常发展的一些青少年。他们跟同龄人比起来,他们的付出是很大的。但我并不同意说他们就很苦很难过,丧失了什么,我不那么看。 因为他很有兴趣,正像我经常讲的,如果他对一件事有兴趣,你让他钻研下去,他觉得是乐趣。对于程序也是这样,编程序本身可能是一个非常繁重的脑力劳动,很苦。但是他有乐趣,因为他的乐趣来源于其基础。我们知道计算机实际是数学的延伸,过去是手算,现在用计算机帮着算。计算机是由于数学发展之后,人们需要计算了,人脑跟不上了,不是人脑不行,人脑的速度不行,要用计算机帮着算,这时候我们才发明了新的工具。要把人类通用的智力工具掌握好,来解决我们在现实当中很多问题的话,这个时候他就感觉到数学的美。这个美是一般人体会不了的,在他很累的情况他有美的感受,有娱悦,所以他才有兴趣。我们奥林匹克选手,应该说从小有这样的感受所以立下了一生的志愿要在这方面攀登。我就觉得我们人才培养的标准不大一样,我特别同意刚才周总讲我不是简单地编点东西就行,我们的培养目标应该说要培养很高级的,研究性的人才。我实际上是在做一点启蒙工作,尽管做了二十年,感觉这件事还要做下去,还没做够。 所以在三年以前,系里说你能不能上一点课?给本科生上?因为我有三十年没上本科生的课了,有研究生的课有博士生带的任务等等,我就欣然同意了,我说我来做这个事,但有一条我得把定位定高一点,不能按传统的办法做。因为我比较擅长的不是计算机的语言,语言的研究谭老师研究透了。两年写一本书,每天只内写一页多一点,研究得非常透。我说,我要教的课应该是一个基础课,这个课应该是将来对学生一生都要有用的,主要讲构思、讲方法、讲概念,讲怎么编程序,它要建筑在什么基础上呢? 我觉得学生第一重要的是语文,语文不过关,思维是没有逻辑的,落花都讲不利索,将来博士论文写不出来。谭老师有同感,谭老师能把书写好语文的功夫很大,没有语文能写好吗?数学也很重要,那是垫底的。我一听说今年我们的学生,一入学新生三门数学我觉得特别高兴,我说我给你们让路,你们要期中考试先做那件事我的考试往后放,等你们空下来再考。我觉得基础太重要了,打不好基础很多事做不了。所以我那个课就换了一种思路,着重讲思路、讲概念、讲方法。我说有关语言的东西我也得讲,但是非常粗。我说你记住三天就可以编程了,这些都是通用的,你先把主要的脉络搞清楚了。而且我告诉学生,我那儿的学生都厉害,都是六百多分进来的,我说你注意一条你的学习方法要改变,不能死记硬背,一定要按规律来学。 尽管我认为我讲得很好,因为我一堂课要背很长的时间,要讲透。我说当堂都可以给你讲明白,但有一条。你记住我的一句话,我说你不是听会的,你也不是看会的,而是你自己踏踏实实、认认真真动手上机实践理论联系实际学会的,否则我耽误你了。计算机的东西是理论联系实际最紧密的一个行业,一门学问你不动手是学不会的。有些同学不注意这个,第一年的同学就很亏,他不理解这个,我们要求是这么高。题目也出得挺难,不是书上有你抄一抄就可以,不可能的,你自己得动脑子,真的把程序解决了把问题做出来。所以第一年期中测验就发现了,不管你原来是不是状元,这门课你就是零分,一点都没做出来或者做出来不对都是零,后来他们知道该怎么学。 我每个学期事先告诉他你必须这样学,理论联系实际。不动手学不会,就是告诉他这个基本原则然后加强实践,同时也讲调试。因为程序编出来不是唬人的要真的解决问题,人家聘用你,你去做的话必须把东西做出来才是真本事,否则是纸上谈兵。同时对于大学生来讲还有一条,一定要教他扎扎实实的一些基本功,特别是思想方法。所以把逻辑和抽象当做一个很重要的概念和训练,否则到了高层他就上不去了,因为后续的课谭老师讲现在主要是用C,只不过输出语句用Cout,我的同学到后面是学C++,那是在编程之后才可以。 你基础都没有弄牢是不行的,作为打基础的课我们的要求挺高,方法是合适的。因此一年下来这门课被评为校一级的精品课第二年被评为北京市精品课,第三年上完就被教育部评为国家级精品课。所以每年上一个台阶,现在是第四年,我想还要继续不断地做,让我们的教学真的能够对我们的人才培养起到一个作用。做这件事情的时候得益于去参加国家队的培训,因为国家队的培训实际上也是按照这个模式来做的。我们基于对问题的解决,培养它分析问题和解决问题的能力,有很多东西不是我们老师在讲而是让学生自主研究、学习。 当然,他们的条件比较好,他们的个人勤奋程度使他们能够做出成绩来。比如说我们的一道题目应该说是非常之难的,所以很多记者不大理解老问我你这样一个计算机比赛或者编程序的比赛就冠那么大的口气说是奥林匹克。奥林匹克是不得了,我去过希腊,那一年在希腊比赛的时候也到山口去观光,而且我还真的有幸在奥林匹克第一届体育场上跑了400米,当年55岁,我觉得感受一下那样的精神是非常好。我就回答那些记者,我明白什么叫奥林匹克,因为我在大学的时候曾经是田径运动员,业余的。怎么撞线我们都体会过,那的确是一种精神。但是一般的人只能做引体向上,我说你让他做托马斯全旋试试,我说能做那个的叫奥林匹克,否则你的入选赛进不去,我说你不理解我们的比赛有多难。五小时做三题,每届比赛都是这样,一共两轮。我说随便抽出哪一个题来,你说我的学生棒,你把博士生找来,让他做,如果他没做过训练做不出来。明白吗?就难到这个程度。那才叫奥林匹克。题目非常难,一会儿有时间我举个题目大家来听一听,你要没门的话想都不知道从哪个角度想。 所以说从小用这样一个难度考验他,激励他能够自己带着问题学,如果不会了,你就去研究,去探讨,合作研究也行,还要去看很多的书,很多的材料,包括组合数学、图论、集合论、人工智能搜索算法等等。很多东西都是提前学了,当然数据结构也是非常重要的。但是他们有一条好的地方,我认为他跟我们现在课堂的学习不大一样,他很会找重点,这些中学的孩子。他不是按部就班这本书看下去,不一定,他找到重点能够学就学到手,学到手解决新的问题,之后进行总结。总结完以后还可以写出论文,如果论文好的话我们就在冬令营里让他交流,而且有严格的办法你就报告十分钟,然后我们提问题五分钟最后给你打分,用这种模式培养他的科学精神、科学的方法。因此,我敢这样讲,这批孩子受到训练,应该说他的级别不是一般高考的人的级别。因为他已经会自学,自主研究问题。受过这样训练的孩子我给你举两个例子,有两个孩子清华毕业以后去了新加坡念硕士,他就按照这个模式一年里写了十几篇文章,一年博士就毕业了。这两个人一个叫黄高峰一个叫徐宙,一个去了英国一个到香港科技大学读博。这还不是我们最优秀的。所以我觉得人才怎么培养的确是一个大问题,这方面可以改革的东西挺多的。培养软件人才这件事我觉得我们应该有优势,因为我们的人比较厉害,可塑之才很多,我们的方法需要进一步改进。 吴功宜:下面的时间咱们交流,因为见到吴老师和谭老师非常不容易,另外还有一些IT非常成功的人士。交流之前我有一个小动意要首先得到谭老师首肯。一会儿提问中你有权提得最好,能否签名送一本书?谭老师将送一本签名的《成功之路》。 提问:谭教授你好,您刚才提到关于计算机基础对公务员的用处,公务员如果办公自动化可以做得非常熟练的话,就已经比较能胜任了,那么对软件是否就没必要有太多的涉及? 谭浩强:这也是一个要求的层次的问题。我们对一般的公务员的要求是无纸办公。过去是手写、打电话,现在用E-mail、word、Excel,希望可以进入新的层次,对一般的公务员我觉得应该从应用的角度要求他而不是理论上要求他。因为他跟大学是不一样的,所以我曾提我,在大学教育中要注意四个区别,第一区别计算机专业和非计算机专业,不要让文科、经济类的学那么多高深的课程。第二区别计算机专门人才和计算机应用人才。计算机专门人才是指计算机专业毕业的大学生、研究生、博士、博士后专业工作者,以计算机为职业。而计算机应用人才是指本来有工作,是用计算机解决工作中的问题,这两种人知识结构是不一样的。 但现在很多地方将其混淆了,你学计算机就必须像计算机系那样系统地学习,你想当计算机人才,按照计算机专门人才学二进制、数据结构,事实上两者是不一样的。我曾经这样做过比喻,设计飞机的人跟开飞机的人不需要同样的知识结构,设计汽车跟开汽车的人也是不一样的。但过去被混淆了,用计算机必须系统地学习才能用,如果按这个观点的话,现在开汽车的人尤其那些女士95%开不了,因为要先学汽车原理,汽车怎么启动,气缸如何燃烧的。而事实上不需要,直接从应用入手,所以公务员和一般的应用人才应该直接从应用切入。我曾经开了一个玩笑,在文化大革命期间林副主席说过一段话“学习毛主席著作要带着问题学,活学活用”我说现在对一般人员来说学计算机就这么学。计算机应用要带着问题学,活学活用,学用结合,现用现学,在用上先下工夫。现在我们很多面对社会的培训搬用了学校的模式,过多的基础和过多的理论。为什么让公务员学二进制?纯粹是大学老师干的事,他认为大学这么教你也得这么学,弄得大家不敢学了。 现在大胆提问题,我记得很清楚的一件事,一次会议上北京文科大学的校长跟我提问题,谭教授我们是文科学校,将来是做文字处理的,有必要学二进制吗?在座还有好几个理工专业的老师群起而攻之,说现在什么时代?数字化生存,你不懂数字化能生存吗?吓得那个校长不敢吭声。我说你说得对,一个文科的学校学生为什么要学二进制?后来我就跟他发展了一步,我说现在那些院士,那些博导他们会算这些二进制吗?他们自己不算,要你去算。用三、四十年前大学计算机原理来培训现在的公务员整个是误区,把简单问题复杂化了。有人说我进一步怎么办?公务员想写程序那是另外一回事。任何领域都有初中高级之分,我刚才讲的是入门的,不能把专家的要求放到对群众的要求。数字化的问题,研制的人和用的人完全是两个概念。不能说现在是数字化时代的用数字产品的人都要懂得数字原理。比如以后电视机都数字化,是不是在电视机前看电视的老太婆也要先学二进制否则我就看不懂电视了?那是两回事,研制电视机的人要懂得数字化,看的人不需要,误区就出在这个地方。既然研制计算机需要那么多的知识,用计算机也得这么学习,那整个是误区。 提问:我学的是行政管理专业,我给自己的定位就是国家公务员,谢谢您。 谭浩强:你赞成我刚才的观点吗? 提问:赞成。 谭浩强:还有的考题考DOS命令,什么命令是内部命令还是外部命令,作用是什么?我说我也背不出来,会用就得了,所以现在教育的确有误区。最早提出一个定位的问题,区分对什么人进行什么教育,这个问题有点混乱,对公务员是一种办法,对大学生是一种办法,对开发人员是一种办法,都不一样。可是现在很多书都以一个面孔对付所有人,以不变应万变。外头卖的书买十本至少九本是一样的,有特点的不多。我现在在清华编的一套老年人学电脑就解决老教授的问题。几句话很简单,不讲理论只讲应用,不求高深但求实用。图文并茂通俗易懂,一看就懂,一试就会。老教授说这种办法很好,说给老教授扫机盲解决了很大的问题。老教授怎么学电脑?公务员怎么学电脑?企业老板怎么学电脑?我们的部长、局长怎么学电脑?都不一样。现在有人为老板学电脑写过吗?有人给部长写过吗?都没有,都写成一个面孔,所以我们办教育的人不善于针对具体的对象来组织自己的教学,来精选内容。现在查了很多书,从功能定义出发,看完全书不知道怎么用。给你讲各种菜单,讲完所有的菜单就算完了。我说这样的话,我看完这本书都不知道怎么用。我说像一个大学生入学,到清华大学门口一看,门口贴了好多布告,本校教务处有五大功能,本校总务处有七大功能,然后你知道该怎么办吗?你有这么多功能跟我有什么关系?我只想知道我到了清华要到哪里报道。所以你第一步应该告诉人家要到哪里报道领学生证,第二到总务登记宿舍,拿钥匙,第三是到饭堂买饭票。现在的写书都是写菜单功能,因为这样写很简单,都是抄下来的。所以有些人觉得写书很容易,实际上写好书很难。 提问:我非常关注今天的题目,中国软件业人才打造模式,我刚才听了各位来宾的交流,我感觉这面的老先生跟这面几位后生没有碰到一起,我是搞IT营销的,非常关注一个问题,我们自己可卖的东西越来越少,即便我们曾经有一阵子卖过一些国产软件,最后给我们这个行业带来一种相应的行业垃圾,过一、两年都没有用了。印度跟中国的比较我也是挺有感触的,我们中国人确实非常优秀,包括吴教授也培养出了很多优秀的学生,但后来这些许多全部出国了,就不能称之为中国软件业人才了,已不再为中国软件业来做了。周总是雅虎的,现在还立足于中国,应该说中国还有些东西,但我也感觉到光靠这些东西还不足以把我们整个软件行业带动起来。直至心里我也在困惑,相信我们的经营人才包括我们的基础研究和实干经济都很好。现在关键有一个问题,目前的现状确实在市场上,在业界中国自主软件产品很少,大家能否就这个题目互动一下?就是怎样把我们的基础学科对业内和行业的氛围更好地融合起来?真正培养出适合中国软件行业的人才? 周鸿祎:我中间转折一下,你问的问题太大。我们今天讨论的主题其实是刻意定得小一点,因为我们这么一屋子人在这里群论大道理也论不出来,也没什么收获。一会儿还是请蒋涛和张晓明谈谈中国软件人才培养的问题。您刚才说的问题我试图简单回答一下,我也同意吴老师的看法,中国人无论在国外还是国内在软件、IT方面不比别人逊色。但您说中国软件之所以不景气我觉得已不单纯是人才培养的问题。就像中国足球问题,这个问题说起来永远没有答案。我觉得我们不用心急,因为做软件和其他行业一样需要一个沉淀和文化的积累。我们软件的历史很短,真正有二十年的历史,我们看美国有五十年的软件历史我们期望一夜之间赶上美国是不现实的。印度发达是软件外包成功,印度不是软件的成功,所以也不能简单地把我们跟印度做一个对比就妄自菲薄。我觉得中国软件的发展需要一个过程。举一个最明显的例子如果十年前中国在感慨自己只有中关村没有硅谷的时候我们自己也做了很多的探讨如何做出中国的硅谷。但这种讨论后面面临很多的问题,比如软件企业积极呼吁政府给扶持等等,但最后在中国现在出了陈天桥出了丁磊,中国互联网有了大发展是把美国的风险投资制度引进,使得很多年轻人可以白手起家,可以实现自己的梦想。所以我觉得您这个问题问到最后,要不没有答案要不是只能等待发展。相信未来互联网软件在中国再做二十年,当风险投资,当创业理念和整个社会商业环境变得更好的时候,可能中国软件业肯定有一个自然的成长。就像你的体育,如果脱离了整个民族体育组织的提高,光去谈金牌我想大家是论不出金牌的,所以这个问题我是替他们挡一下,我下面还是把话题交给蒋涛和张晓明。他们对我刚才出的砖非常有意见,所以几位来宾先内战一把,再跟大家互相争论。 蒋涛(《程序员》总编):刚才周总讲他是蝙蝠,我其实也是几不像,我自己本身做了十年的软件开发,在巨能公司、金山公司都管过技术团队,自己创业也开过三家公司。现在做程序员,还做了CSD一个网站。这个行业到底什么情况?到底软件人才有多少?信产部统计的数字跟我们软件统计的数据是一样的,这几年有了快速的发展,前期数字还是比较少的,但我们要认清整个国际大环境,因为现在是全球竞争的时代。刚才张晓明讲了他到印度的感受。前两便有一个消息也是讲两个最大的印度公司,他们都是3万人企业。 中国企业如果有200软件开发人员已感到很自豪了,我们也感觉他很大。但你要想200人和3万人。我们现在最大的软件公司不算华为、中兴、大唐这样的公司,像用友只是几千人。你能想象印度软件公司今年的增长比去年同期增长是50%?中国软件行业整体以20%速度增长,这已是一个很高的增长了。所以我们的差距还是非常大的,我们要认识到这个差距,就像足球的差距,我们跟韩国和日本,虽然我们觉得我们人多也比他们行,但你就是踢不过。软件也是这样,我们人才都很优秀,包括德高望重的吴老师带队在奥林匹克大赛比人家也不差,甚至可以取得很好的成绩。为什么整体出现问题?我觉得有很多方面的原因。我下面稍微讲两点,优秀人才我们并不缺。 前两天我去一个跨国公司,他在全球有研发中心,日本、硅谷、中国还有台湾。他说,在中国他们的员工在硅谷就是少年班的学生过去,特别优秀。少年班学生说我在我们班里很差,中国还有比我厉害。他们在中国搞了一个研发中心搞了三年成果一般。他感觉不对,我们是最优秀的人才,为什么就不出成果呢?他们很疑惑。前几天我跟他一起吃饭,他说我现在找到问题了,他们规模在扩大,今年扩大两倍,明年准备再扩大两倍。他说我找到问题了,他是看到一个角度,就是我们的技术实力可能并不差,但我们缺的是对整个市场的了解和经验。因为他是一个研发中心,又做一个全球性的产品,并没有在国际市场了解整个用户的需求是什么。可能技术水平并不差,但做的产品不如别的地方。但把窗口打开,让两边人员全部流动,中国人员到硅谷,硅谷人员回来跟他们进行交流,最后大家取得了一个很好的成绩。这说明我们的人才或是很好的,但缺的可能是一个环境。还有一点,就是刚才周总说的不太赞成软件蓝领的提法,我对此有一点不同意见,但我也赞成他的意见。就是现在信息化的社会和以前不一样,以前是几百人几千人供养一个很高级的人物,供养一个科学家。 现在可能是一个科学家、一个天才的发明能造福几千人、几万人。像我们有了Google,围绕Google有众多的公司和人在生存。精英需要我们发展,但精英来自于我们的土壤,如果没有土壤就出不来精英,没有基础就不可能出来天才。我最近看了一本书讲这样的理论,经济和所有的数据只有到了一个规模才会产生质变,到了百万可能质变。所以西方文明诞生在希腊是因为希腊第一次达到了百万级人口的城市就产生了民主和系分文明的灿烂。我们也一样,需要一个很好的基础可能就会出现更多的天才级人物反过来再推进整个行业的发展。现在我们的基础有点问题,我们百万的基础还有点不给,包括我们现在统计的数据和国家统计的数据人数是不够的。 虽然我们每年有十万软件行业人员毕业,但他们可能接触到的东西并不是市场上真正需要的,或者他们缺乏一种跟市场实践相结合的本领,这是现在最大的问题,企业招不到合适的人,毕业学生挺多但找不到合适的工作。还有一点,IT行业技术发展很快,学校最重要的是打好基础,同时有一些和实践结合的基础的训练。他走上这个行业以后,走上企业以后,也应该再能够得到这样的训练和教育的机会,但现在很遗憾,现在没有。我拿到主题讨论的时候也讲到这点60%的企业没有对员工进行再教育和再培训的工作,这样必然出现一个恶化的结果。就是说这个人学的东西在公司里为工作而工作。他的成长要靠自己的摸索,这样我们很多技术都是重复建设,经验不能传承。我们在学校得到了老师的经验,但工作中只能自学成才,这时候就是个很大的问题。 我们对比看欧美,他们有一条完整的信息技术的传播链,有在第一线工作的专家人员,有十年二十年的工作出来做传播的工作,他们也做教育的工作,但教育并不仅仅在学校。当然他们也进学校,也针对企业。我们基础教育的书,包括谭老师的书都有很好的读者,也引导很多人进入这个行业,进入这个行业以后,再看书我们可以问一下,在作为的软件公司里他们看的90%以上是外版的书,这些外国专家不是教授,都是在企业里做的,或者专门做技术咨询、顾问,讲座。我们没有,包括我们杂志也是填补了一个空白。原来只有学术性的杂志,再有就是大众性的杂志,没有真正针对第一线的杂志,比如我对UM的应用有意见,认为它不适合中国的国情,这样的话都没有地方让他说。所以我们很多时候是重复建设,印度和欧美在这方面解决得比我们好一些,就是软件行业的分工,信息技术传播的分工。我们由于分工链不同,企业本身也有分工,关注企业的核心才能成长得更快,技术传播的过程也不能由基础教育承担所有的工作,也不能让我们的企业承担教育成长的过程,因为企业特别是在我们现实的环境下可能是以生存为第一位的,再负起教育的责任带也是有难度的,所以应该有更细的分工,这样整个行业通过这种能打好一个基础,建立好基础以后再有市场调节整个行业才能往前发展。我认为这个可能是我们现在比较欠缺的一点。 张晓明:我非常同意蒋涛的观点。周总的观点我不是不赞成,什么叫软件蓝领?前段时间我看新闻联播说现在中国缺的不是工人而是技术工人。因为技校现在都升格为技术学院,以前的技工都成了大学生,感觉技工是很低层次的工作。就我们的工作人群来说,比如软件,我们可以分成三种类型,第一种是兴趣型的,包括这次我们大赛收到九十多个作品。他有自己的工作,但有兴趣,编个程序,他觉得能对他的工作有一定的肯定,这是一种工作型的软件人才。他的培训和提高必须通过一些书籍、报刊来实现。另外是一种专家型的,想钻研一些更高层次的东西。第一种类型的电脑报可以解决了,第二种类型可能要到程序员杂志学习一下,第三种类型恐怕要到三位教授那儿学学。可以比一下中国的足球,我们去印度问他们的软件如何做得全球化,他们也问我们为什么硬件做得那么好,他们也派很多考察团到中国考察硬件,软件不可能解决太多人就业的问题,而硬件一个厂可能就是上万人。当然硬件我们需要联想、方正、同方这样做硬件的,也需要做龙芯这样做高端的。但我觉得我们还是需要一些软件蓝领。 提问:各位教授好,我是中国人民大学金融系大一新生,刚才说学财经的软件不需要学那么深,但随着网络时代的大规模到来,正进行着悄悄的变革,因为随着网络的普及,网络银行、网上交易使办公效率迅速提升,我现在特别想从金融领域和IT领域两个边缘走,希望两个领域有更好的结合。我前几天买了一个笔记本电脑,但是怎么开始学?学到什么程度?我想请老师介绍一下。 韩曦晨(《中国经营报》副总编):这位同学的问题太专业了,从哪开始学恐怕得问在座的几位教授。但是这个同学其实说了一个非常好的话题,也就是说我们现在软件教育或者说软件学习其实是一非常大的问题,是否需要一个多学科涉猎和人文积累的问题。如果我们只是围绕着计算机去做程序做开发,那我觉得没有特别大的前景。但如果走向真正实际的应用。肯定跟每个行业或者每一项工作结合得非常紧密。你是学金融的,如果能在金融方面把你的那些金融运作的规律、工作程序和程序结合起来,我想这种复合性人才,比专门把程序学得特别好有优势。另外恐怕还需要一些人文积累,其实这个论坛还有一个话题就是国际化的问题。 我也了解一些情况,国内做共享软件的很多已经开始面向海外市场了,因为国内市场毕竟环境不好。但如果面向海外,国外一些人的思维方式,国外一些人做事的程序你怎样了解?我觉得这也很关键。包括对国内的,我也用国内很多的共享软件,我感觉它们在界面、人性化和细节的处理上的确存在很多的问题。刚才还有一位先生提到他是做软件营销的,其实这个话题跟今天中国软件业人才打造模式之需可以很好地结合起来。我最近看了两个材料,一个是福布斯发布的一个报告,是麦肯锡做的,他们通过调查得出一个结论,他们说美国程序员这个职业恐怕要消失了,因为所有的业务都在外包,外包到印度和中国。 另外一个材料是印度做的一个调查,他们调查的结论是印度的软件公司其实把自己的业务也要外包给中国,他们发现中国的软件工程师的薪水是印度的40%,他们很奇怪中国人力资源为什么这么充沛。这么一看,大家学软件应该非常有前途,软件业没有什么大的问题,我们今天讨论的可能还是今天这个行业遇到的问题,另外那些程序员可能有一些问题,再延伸下去就是学软件的人出路何在的问题。我今天看到场的学生比较多,恐怕都是对软件非常感兴趣的,不知道大家是否考虑过自己的出路在哪里?如果就是按现在中国软件业的状况,中国程序员的状况,大家有什么感想?我想肯定在座有很多人毕业以后如果找工作也就是程序员。虽然有一位小伙子说他的志向是公务员,他很可能是到政府里的IT部门也很可能是编程。雷军可能也是在座的偶像之一,雷军对程序员有一个描述,蓬头垢面、衣冠不整、言语不清、no money、no woman。这样的一个出路大家是否会觉得很满意?我们现在的教育可能满足了一个软件职业化的要求,可能培养出一个很高明的做软件职业的要求,恐怕和中国软件产业化的要求还有一定的差距,这个差距可能表现在专业上不错,但在商业化上,有没有培养一个在受教育的时候,为自己想出路的时候,有没有一种我将来是为客户服务的?我要以满足客户的需求为核心?有没有这样一个出路?有没有一个有意打造自己的管理能力?或者说我们在软件人才教育的时候,能够有意识地给大家讲一些公司的运作、管理问题,另外我们有没有一些协作精神。我们做程序的据说协作不太好。 比如微软那样的大公司,可能每一个部门就专门写一部分的功能。部门之间是如何协作的?这样的东西我们是否要着力培养?因为我们的目的不仅是培养一个软件工程师,还是为中国的软件产业打基础。以前我登陆中国软件共享中心的软件都是针对个人的,现在已越来越多地是针对一个企业和团队的软件,规模比较大。这样的软件光有产品不行,还要想办法去推广,要对外做营销,你的内部还要管理,因为你不是一、两个人的问题,像这样的能力我们是否要有意识地培养?说到底还是中国软件产业需要什么样的教育,什么样的人才,另外一个就是大家对自己将来的出路有没有更细致或者更实际的想法?有不能成为像周总这样的人,虽然是程序员出身,但现在的身家已经到了不能说的地步了。我觉得我们的教育包括我们的产业发展需要更明确的一些目的。 吴功宜:谈到教育我简单说两句。刚才同学说完了以后,我觉得这个问题是什么呢?我在教育战线工作了三、四十年,我有一个感觉尤其是计算机教育,我本人从筹建计算机系到现在有二十年。刚才同学说的话我很注意,我在研究生院当院长后来调回信息学院,当时第一件事是在网上搜索一下到底多少个单位办计算机系,大家告诉我一个数不少于几百。大学里办计算机系的有多少呢?不少于500。也就是说只要办学校就有办计算机系。 但有一个问题,所有的计算机系面孔都很像。它的教学计划差不多,第二如果说不是计算机系,改个名字比计算机系还糟糕,因为把计算机系很多内容压在里面讲,一门课是四门课。拿起来看,比如信息资源管理,打开教育计划你就不知道他教什么,永远教不清楚,原因很简单,那门课叫我讲打死我都不去,因为我讲不清楚。居然一个人可以讲五、六门、七、八门。我觉得有一个很重要的问题就是打造人才培养模式的问题。这个同学说的意见,我在南开当院长最担心的一件事,如果全国大学都是一个模式将来就业肯定有问题,你必须自己要想好这个事,自己怎么走。 所以计算机系里一部分人走信息安全一部分人走职能系统工程,我要将他们分开。分开到高年级50%的人已经分走了,剩下的人再分。现在的教育是非常不适应的地方,这是非常头疼的地方,都是600多分考进来,结果那种模式培养出来是误人子弟。这是我很担心的事,我在任何的会议上都明确表示这个意见,现在我们只看到一个IT产业,我们是用信息技术、信息化带动工业化,用信息化改造什么东西,但实际上没有看到真正的内涵。那么它到底是什么。我一直在想这样的事,如果是财经学校的,你要办你的事,甚至现在广播学院也在办计算机系,你千万不要办成五百所学校一个面孔,实际上这五百个学校都是清华和北大的面孔。就把你的课程稍微改改,看得懂就改,看不懂就算完了。所以我在南开工作有一个非常大的感触就是怎么为孩子将来长期发展着想。第一如果深造的部分,一定要把数学包括人文基础打好。 我做院长,我手下一共八个本科专业,计算机、自动化、通讯、微电子都在我手下,这些专业打通,找最好的老师教基础课,让基础打扎实,有比较好的思维能力,能看到问题,把公式写出来,这样发展就比较好。另外是技能性培养,比如我们成立一个信息安全专业。实际上成立信息安全的目的是什么?目的是把计算机转过去,这批人出去有非常好的计算机基础,又有数学基础,可以和密码学搞在一起将来又有出路。另外一批人,好比现在有人办物流,实际上在天津地区,长江、珠江、环渤海地区对这样的人员需求特别大,我动员一批人与此结合在一起,甚至念一些二学位,到最后就好办了,所以不要有问题再研究,要在开始就想好,低年级要想好自己将来干什么,设计自己人生发展目标,再看这个学校有什么基础环境。我觉得第一步可能基础要打好。 我见到很我人,我有这个感觉,很多做软件很成功的人不一定是搞软件的,很多人是学数学、学物理的,整个软件做得非常好的,带一队人马来做,因为他思维非常好。所以很多过于急功近利是这一阶段我们社会特别明显的特征。可以说从政府到各地都是用最小的劳动来换取最大的代价。我一直感觉我学一个什么东西将来就可以跟比尔.盖茨拼,住别墅开宝马这是不现实的。所以扎扎实实地做起,目标清楚,我将来想干什么,在大学中如何一步步地安排自己的路。其实有学生非常聪明,到后期有些学计算机同时学法律,这就非常好,将来打官司打不清楚就找他,他考虑问题都是超前考虑一步,这些孩子读书的时候很苦,因为双学位很累,那个地方是不能作弊的。但反过来说,将来他就业就比较好。所以我觉得我对大家有一个忠告,根据自己的兴趣,设计自己的路,然后提前准备,不要等以后找不到工作的时候再准备,那就来不及了。所以复合性人才一定是将来的需求。你编程做得好就好比懂一门外语,但如果不做翻译,不做贸易,那个东西老太太都会。你看国外十几岁的小孩儿学程序没那么复杂,如果我们的培养不把这个问题解决好,不培养复合性人才永远分不清楚,所以教育必须适合整个产业的发展。 谭浩强:我再补充一下刚才吴老实说的复合性人才的问题,这点我有同感。现在在社会上计算机界,尤其计算机开发人员当中,出身于非计算机专业的不是个别的。像洪恩创立者是七个清华大学化工专业的毕业生,而且很多比较有成就的计算机专家都不是计算机专业出来的,我不是学计算机的,吴老师不是学计算机的,我们将其称之为非专业现象。就是说不是计算机专业出来的成了计算机专家,原因何在?就是因为他是复合性人才,因为他本来有自己的专业,把计算机当做工具。尽管我学的课程不如计算机系的人多但是实用的,学一门用一门,经过累计在自己的领域中如鱼得水。而计算机专业很大的弱点是没有对象,只懂计算机,而这些人恰恰有这个优势,既懂本专业又懂计算机,将两者结合起来。 而且事实证明跨学科的人才是专业性人才,跨学科人才知识面开阔,因此这是一个创造性人才很重要的原因。所以要成就一批优秀的软件工作人员应该很注意从非计算机专业中,不要觉得自己不学计算机专业一定不如人家。第二,要找到教育和产业的结合点。现在我们的教育是封闭系统,学科和课程都是封闭系统,根据计算机学科的几方面有什么样的课,尤其计算机专业。社会需要什么?他一般很少了解,他觉得我学的这些东西是必要的。所以应该是把教育跟产业和社会需求有一个结合点。这个结合点我感觉从两方面解决。一方面在大学的高年级中一定要考虑学科的调整。我到澳大利亚,他们学校有教学委员会,除了教授之外还邀请社会上大企业来参加教学委员会。他们提我们的企业需要什么样的人才,综合多方面的意见就可以找到哪些学校里讲的东西是社会不需要的,哪些需要的学校没有讲。外国学校有一个很重要的评估分数就是就业率,如果学生毕业50%找不到工作,那明年没有人考你的学校。所以学校都要考虑就业率高。尤其三、四年级的课很有针对性,专门设立了一些应用性的课程。国内也有一些做了这样的尝试,因为必修课是固定的,选修课是针对社会需求的。 北京有一个一般计算机系的学生,毕业之前选修了动画设计,班上很多人找不到工作,他到广告公司去,因为他会动画设计,马上就用他了,实际上他只多学了四、五十学时的课。这给我的启发很大,学校可以设若干门对就业有好处的课程,这一方面是从校内解决。第二在校外弥补学校和产业之间的空档。因为让学校完全按产业设置课程是不现实的,那让产业来做产业也没有这个义务。我到美国去考察,美国一个社区学院除了培养正规学生还面向社会进行培训。比如有的学生毕业于土木,但他找不到工作。这个社区学院专为这部分人开六门课,有些是基础,有些应用的,学了这六门课很快可以找到工作的方向。在学校毕业以后要有一个机构承担过去跟社会脱节的部分补上,大学、企业不可能做这样的工作,社区学院做这样的工作很好,可以解决两个接口的问题。作为我们搞教育的人恐怕需要更多地了解教育,因为现在很多教师对社会了解不够,在学校里想培养出完全适合社会的开发人员是不可能的,我们可以从机制上解决这些问题。 吴文虎:我给谭老师补充两句,我们俩实际上学的是一样的东西,我到明年入学就五十年了,他到明年就入学五十二年了,他比我高两班是我的学长。我们俩一开始在电机系学工业企业电气化。那是培养总工程师的,到一个厂里要把所有的东西学学。两个月前我的同学说聚会一下,来了七、八位,他们的确是这样。他们都退休了,在原单位是干总工程师。我们两个特殊,1958年我们换了一个系,我们都到了自动控制系,我是念了三年电机系课又念了三年自动控制课不是搞计算机是搞控制。 谭浩强:念的是飞行器的自动控制。 吴文虎:对,搞的都是火箭的控制。我们怎么进入计算机呢?文革后系里说要转方向,都往计算机方向靠。我说行,那就转吧,转了就得写,从头学起。没什么不得了的,挺好学的。 谭浩强:我44岁开始学计算机。 吴文虎:我们的学习方法是对头的,不是拿本书看,那没用的。我们拿计算机来拆,去研究里头有什么,把核心的软件剖析一下,怎么写的,这样我就会Basce汇编语言了,我就可以去讲Basce和汇编的课了。为研究计算机怎么上显示器,我就去研究,当时我们的那台显示器是一台电视机,我就自己装一台电视机出来就会了,我就可以讲电视原理的课。我们是通过理论联系实际动手学会的。 我要想把一个问题学透就给人课,我要给人讲不明白就说明我没学会我就必须去钻研。很多课都是这么来学的,包括我现在教的这门课也不是我学的,也是我自己动手先作。我告诉学生现在教你们的课了,但要给你们一个底,C语言的程序我一条还没编过,我一边编一边教你,但我有信心能把你教会。刚才那个同学提的问题很好,你现在有一个笔记本了,在我那儿大一的学生是不容许有电脑的,认为你不该买,怕他玩电脑游戏,经常自己把自己误了毕不了业。做程序怎么办?到机房来。所以我觉得你刚才提的问题,那你很宽松,我也建议你一定把功夫下在学习上。第二条你现在是大一,你考虑的问题很好,但有一条基础最重要。先把你的基础学扎实了,搞财经数学很重要,概率论,经济学都需要,学得非常精。以后有可能你在那方面工作会跟人家配合的,不是所有的事都要你编。我去年毕业的一个博士生,是专门学人工智能的,毕业后到了浦东,一面试人家就要他了,他去了一家很大的股市公司,他说他在那儿要从头学经济学、金融方面的东西,现在比较适应了,一开始也摸不之头脑。 所以可能会有人跟你合作来弄。但是我觉得基础还是特别重要,我们之所以毕业以后很多东西靠自己来学,我看下来起码90%是后来自学的,你前面的四年基础是特别重要。特别是我建议除了理论的学习、课堂的学习以外,更多的要关注一下实践环节。那个不好补,很多过了那个村没那个店后面找不到实习的机会,这对一个人来说非常重要。除了智力因素外我们强调非智力因素,这在我们的软件人才打造方面非常重要,集体精神和团队的精神都要纳入素质轨道,你学历再高,不能跟人家合作就没办法把自己的力量发挥出来,这样的例子我们也见过。像我们那儿也有很多厉害的学生出去发现就不行,过一段时间一调查发现他起不了什么作用,就是因为他太高了,高到不能跟人家合作了,这就不行。这是一个协同的能力,协作的能力,也是很重要的,在学校里应该进行训练,自己要融入到集体中去。 提问:我刚才听大家说很多东西,我最赞同的是谭老师的观点,就是企业和学校有一个结合点,但谭老师说的结合点主要是从学校角度讲,在学校和企业之间能否找到一个桥梁?像IBM有研究中心容许学生去实习,那么在软件行业教育部门和企业间能否搭一个桥梁我在上大学的时候就可以到企业实习,不仅了解企业的文化,还可以把自己在学校里学习的东西很快应用到工作中去。从长远角度这可能是一个需要解决的问题,也是一个出路。 谭浩强:我在澳大利亚就看到类似的例子,强调学生在学习期间做一点课题,这些课题有一部分是假的,是老师出的,有相当一部分是学校和企业合作的。真刀真枪,企业提供经费和课题最后验收,学生完全按企业的要求进行工作。从一年级开始课外小组很普遍,不像我们这面只是少数人搞这样的工作。当时他们是高班代低班,研究生代大学生完成项目,可惜目前国内很少。但从发展的趋势来说是对的,要突破象牙塔,在过程中让学生参与。 吴功宜:因为时间的关系,咱们的沙龙告一段落。谭老师你觉得这本书应该送给谁? 谭浩强:每个提问题的人都是非常敬业的,又是很慎重提问题,应该每个人都送一本书。 吴功宜:现在我建议您送一个最小的,他是一年级的。 谭浩强:这样吧,今天这个书送给他,所有提问题的人给我留个地址我都送给他。 吴功宜:谢谢谭老师,吴老师,也谢谢各位嘉宾,沙龙这一阶段就告一段落。 |