我还是一个仍然在学习的菜菜鸟,而且十分的菜!
不知道曾经是否有人仔细想过这个问题:为什么我们读了很多很多年的“计算机科学与技术系”仍然叫做“计算机科学与技术系”,为什么不改成“电脑系”、“PC系”、“网页制作系”……,或者叫个好听一点的“电子程序系”,哈哈。这个问题有点意思,难道是学校都懒,不愿意去改吗?那么所有的学校都懒吗?显然不是,叫这个名字一定有他的深意,老人们都说:望子成龙,望女成凤。其实学校也是这样的,国内的教育水平变的烂起来也就这几年的事情,以前,long long ago是比较好的,可以说非常好,有时间可以去考证一下,王选的那个年代,看那些老教授都是非常认真的,学术作风非常的正派,绝对不是混子,国防科技大学的苏教授,等等绝对不是混子,我拜读过他翻译的一套书,虽然没读完,但也感觉出了他的学术底子,绝对是有水平的,呵呵跑了。
那么说说什么是计算机吧,上学的时候都学过,但是恐怕让大家说出确切的定义也是不容易的,都学过这些课程:操作系统,编译原理,数据结构,数电,魔电(请允许我用这个,呵呵)……,恐怕当时知道为什么学这些的人数为零,我也不知道为什么学这些鬼玩意,上学的时候就知道学就是了,有些上班的师兄在外面说什么J2EE,spring,鬼玩意,呵呵我也是不明白,觉得是一堆挺难的东西,至少当时这么认为,高深无比,绝对是科学家的学习东东,唉!旁边的同学很多都在学习什么ASP,网页三剑客什么的,那个年代这些东西都能做很好玩的东东,呵呵,我却知道学会这个可以找到好工作,呵呵,但是我也没有学,不是我有什么远见,就是一个字:懒!呵呵,也就是懒的原因让我不去学asp,因为要动手操作,反而学习理论知识不用动手,至少开始不用动手,只要博览群书就行了,我看很多数学书,计算数学,离散,计算几何,数值,组合,复变……,呵呵,幸好我有比较好的数学功底和良好的数学修养,就是这种十几年的修养让我真正认识了计算机,数学的儿子。后来看一些algorithms的book,看不懂,那是正常的,哪有人一开始就能理解一堆算法,就是高老大也得从头开始学吧,也不能一下子写完一套书去。慢慢学呗。
那年代我还是小孩,狗屁不懂,会写几个烂程序,十分烂的那种,呵呵至少比hello world好一些,后来慢慢的我会写btree了,会写avl,会写kmp了,会了稳定匹配……,仅仅用C,我懒得学java,但是我当时不明白C为什么写这些玩意好,当时第一门课是pascal,我就是讨厌每次都写BEGIN END,讨厌严格的格式,所以就用第二门学的语言了,呵呵就是简单的C,当时认为C很简单,直到……,我认为C不简单,后来我形成了一种印象写纯C没有7年以上别说掌握了,skill的还可以,我只见过GNU的一个哥们写过它的CV,写C12年,hacked C language,呵呵,“hacked”的水平,这个叫做牛,又是那种默默无闻的人。为什么是7年呢,平均算下来GNU那帮人的平均“C龄”大约是7年吧,“C龄”,我发明的,就是写纯C的年头,而且写好C也不用留大胡子,没必要留着大胡子长头发学C,哈哈,玩笑。
又跑了,山回路转,我还是就会C,而且会的不好。还要好好学。
上班了就见识更多了,花花世界,很多人都很有意思,我先后有三位师傅,不知道为什么,我的三位师傅现在都不写代码了,可能都岁数大了吧,呵呵。
IT的人分成这样地(分得不好):
大牛人:科学家
牛人:自己想去吧
coder:写代码的牛牛们,至于有多牛自己定位吧。
beginner:象我这样的笨笨
从业者:狗屁编辑什么的,胡说八道的那种人。
数量上就是金字塔的样子了,唉,现在it很浮躁,就是因为从业者太多了,什么时候能高度自动化的时候就好了,这些都失业了,大家就会觉得IT会神圣一点,在我的理解不是什么人都适合来学计算机这个东西,他绝对不是培训几天,做几个项目就能理解的。Joel曾经说过他对同学的要求就是在大学学好C就行了,就像他说的,100个人来上个讲些简单的的东西,大家学的很开心,讲到指针,90%人走了,干别的去了,学不会,学指针还真他妈的要一点大脑,不聪明就别碰这行,这个东东不是笨蛋能学的,不是鄙视一些人,可是真的需要智商才能学计算机地?Joel说过没学过C就不能理解内存%……×&¥……&%×,呵呵,至少软件工程师对地下的东西最好的帮手就是C了,那么我们为什么不学学硬件的一点点东东呢,一定有人干过一堆垃圾活,想想对自己有没有长进,社会就是这样地,人慢慢地被磨合的不思进取了,不学习了,不前进了,每天就是混日子等工资。这种日子很无聊,北京的天空也很无聊,昏暗的很。
那么为什么我们的系不改名字呢?原因很简单:老师们都希望我们成为科学家!看看我们的课程就明白了吧,要是毕业了出来还是做网页什么的,按照Joel的话就是“脚本语言佬”,书不用读也罢,你学编译原理没什么用,反而浪费时间,呵呵。所以要向着科学家的方向前进,就好好学习,认真的学习真正的计算机科学于技术。
其实,很多人并不适合学习计算机,在我看来他们很笨,可是他们就是不承认,但是不得不承认,这个学科需要智商,最后,小姑娘还是别学了,最点简单的东东玩玩就行了,不要把自己比喻成居里夫人那样的毅力,这不是火星,地球上没几个人能那样,Bill Joy也是地球人,但是他很聪明。你知道程序在内存里面究竟干了嘛?数据传输,这个词我觉得比数据传送好,更体现了电流的形象。不是简简单单的给个指针,给个引用。
真正的理解计算机不是会做项目,计算机功底不是指你做项目的能力,而是计算机修养,拿个电影的比喻就是,会做项目的就是用枪杀人的,思考问题牛的就是武功修养了,但是项目做的好的,做的牛的还是科学家们,看看Sun带头干的ebay,呵呵,科学家们带头干的,有几个网站敢去比比。
最后说说交叉学科,至于那些交叉学科更需要深刻的对计算机的理解了,我的一个师傅说过,对代码的管理能力老外很厉害,一个人大脑能管很多很多。看什么东西都非常透彻,就是coding多了。
好好学计算机的真正知识真的是很重要。至少我现在认识到了,以前也认识到了,但是形成不了总体的概念,这次有了,呵呵。