周鸿祎(雅虎公司中国区总裁):第一是目前对软件蓝领的看法非常不认同,大家说像印度学习快速弄一批人进行专业的补习。认为这些人只要会写代码,再有人做软件系统架构,再有人检测bug 就可以了。我个人认为做软件应该还是一门艺术,一个优秀的程序员和一个差的程序员,因为是虚拟的工作,其劳动生产力相差绝对不是十倍二十倍,可能是上百倍、上千倍甚至无穷大。所以在软件领域,我们还是要呼唤一些个人英雄主义。我们跟Google做过很多交流,虽然他养了很多的博士,但其真正的核心程序员和核心代码的数量并不大第二个观点,我看程序员杂志,我跟蒋涛也是很好的朋友,但我经常抨击他们的杂志。我说现在感觉程序员非常热中于作语言的研究,大家要把C语言C++语言或者一些更新的东西研究得更透彻,动辄就谈模式设计和软件工程,包括张晓明刚才也提到,我们公司的软件都是自己做,他们有多好的分工。我觉得现在很多程序员连基本功都不扎实,自己可能还没写过十万行或者二十万行代码,本身对编程还没有一个了解的时候,就开始上升到软件工程,动辄谈模式设计。连几个大规模的系统都没有设计过,我经常在相关杂志看到一些论道的文章,我对目前这种看法是比较反对的第三个观点,我听到很多计算机系的学生都在抱怨中国计算机教育不好。这些学生说现在都流行JAVA,.NET了,各种嵌入平台,各种Server编程,我们学的内容都是老掉牙的,还是谭老师那本C语言。我的看法恰恰相反,我觉得作为计算机系的课程或者一个本科生在学校还是应该注重基础研究。换句话说我在方正管过很多的程序员,这么多年我们见到真正出色的程序员,其数据结构、编译原理、基本功一定学得很好,比如他不懂得Windows编程,但给他一周时间,他就可以快速理解,你一旦换到Linux上编程序,他的转换周期也不会很慢。我见过一些程序员很热衷于一些快速开发工具,整天追新,后来程序没写几个,自己的事业也荒废得差不多了。我觉得计算机系的教育还是应该注重基础学科其实所有核心的东西都可以向下分解成你在学校学的最基础课的一些基本的数据结构和算法。所以你的基础打得越扎实,将来这个人作为程序员发挥的能量或者说你能够做的高度越高,这是我第三个比较偏激的观点. 如果我们大学里都变成教最时髦的东西,我觉得大学可以不用开了,你们自己去订阅一份《电脑报》,或者互联网上什么新东西都有相信未来互联网软件在中国再做二十年,当风险投资,当创业理念和整个社会商业环境变得更好的时候,可能中国软件业肯定有一个自然的成长。就像你的体育,如果脱离了整个民族体育组织的提高,光去谈金牌我想大家是论不出金牌的,
谭浩强:(计算机学习的三个层次)整个社会有三种层次,第一个层次是计算机普及教育,第二层次是计算机继续教育,第三是计算机专业教育第二个层次是计算机基础教育或者计算机技术教育。他面对大学生打下计算机应用的基础,比如一些语言、计算机程序设计、数据库第三层就要求大学学习很多具体的开发知识,比如C语言,C语言里没讲什么开发中的问题。这个教授的意思就说C是基础,因为你把C打好基础,以后做别的工作就非常容易,所以目前赶时髦的方法我是非常不认同的。来一个新的就学,就像狗熊掰苞米一样,所以要打好基础。而C++的本质是解决大型软件中的问题,如果没编过大型软件是不能体会C++的真谛我说C++可以分两个阶段学习,第一阶段在大学阶段打基础,第二阶段毕业后遇到问题,编程的时候再学C++,可能学得比较深入大学还是很重要的打基础的阶段,当然这个基础不能脱离实际,用不到的也学,还是要围绕将来所需要的打好基础。所以我认为这三方面是很重要的,就是要有定位。还有的考题考DOS命令,什么命令是内部命令还是外部命令,作用是什么?我说我也背不出来,会用就得了,所以现在教育的确有误区.
谭浩强:(计算机学习的三个层次)整个社会有三种层次,第一个层次是计算机普及教育,第二层次是计算机继续教育,第三是计算机专业教育第二个层次是计算机基础教育或者计算机技术教育。他面对大学生打下计算机应用的基础,比如一些语言、计算机程序设计、数据库第三层就要求大学学习很多具体的开发知识,比如C语言,C语言里没讲什么开发中的问题。这个教授的意思就说C是基础,因为你把C打好基础,以后做别的工作就非常容易,所以目前赶时髦的方法我是非常不认同的。来一个新的就学,就像狗熊掰苞米一样,所以要打好基础。而C++的本质是解决大型软件中的问题,如果没编过大型软件是不能体会C++的真谛我说C++可以分两个阶段学习,第一阶段在大学阶段打基础,第二阶段毕业后遇到问题,编程的时候再学C++,可能学得比较深入大学还是很重要的打基础的阶段,当然这个基础不能脱离实际,用不到的也学,还是要围绕将来所需要的打好基础。所以我认为这三方面是很重要的,就是要有定位。还有的考题考DOS命令,什么命令是内部命令还是外部命令,作用是什么?我说我也背不出来,会用就得了,所以现在教育的确有误区.