Skip to content

Latest commit

 

History

History
37 lines (19 loc) · 4.4 KB

computer-science-as-a-lost-art.md

File metadata and controls

37 lines (19 loc) · 4.4 KB

失传的计算机科学

我的一位老朋友昨天晚上发了封邮件问我这件事。今天早上,我给出了临时的答案。

嗯,我的意见是……我的意思是作为学习计科(计算机科学)六年并获取两个学位,同时还有30年经验的人来给出见解。换句话说,我是一个保守的,落伍的人。

如今的程序员与上一代不一样。计科(计算机科学)曾经是(现在仍是)一个艰深的领域。

但是发生了两三件事改变了这个局面。首先,计算机现在已经很普遍了。你知道还有哪个80岁下的人没有一台电脑吗?(夸张,这不符合我天朝国情)第二,世界万维网【the World Wide Web】(作为裸露的互联网的“面子”诞生于1989年)开始在1995年左右被公众入侵。随着用途愈加普遍,互联网对于日常生活也日益重要。以及第三,过去我们用来创建应用程序的工具是很复杂的,现在的话则更容易使用这些工具,就像现在驾驶汽车要比1905年更容易。

这一切事情都表明“计算机人员”的类别比以往任何时候都多。但是如今成千上万的程序员,可能根本没有受过正式的计算机(编程)教育。这既好又坏。

意味着一个人可以在知道很少的情况下完成小型程序。但这也意味着,这个人可能永远也不会写大程序。

(我很少告诉别人。)这个行业里面,你只要学会5%的东西,便可以可以完成简单的工作,并且便可以谋生了。

那些人使用工具来完成一些日常的小应用。但是要记住:这些工具本身也是软件,只是它们的软件水平超出了那些人梦寐以求的创造。他们使用语言、编辑器、编译器和操作系统,但是他们并没有关于如何创造这些东西,甚至是关于其工作原理的线索。

二十年后,一个赛车手将一个孩子抱在他的腿上,然后孩子便会说,“好吧,那我也会开车了。每个人都会开车,你只需要按下绿色按钮并且说,‘带我去沃尔玛’”。编程方面,我有时候就会(对赛车手)感同身受。

拉回到计算机……我朋友有一个七岁的孩子,他自学了一种奇特的工具,并用它制作了一款IPone游戏。当然了,那是一款很简单的游戏。但是他独立完成了这件事,这在30年前即便是博士也几乎不可能做到(更别说是在手持设备上)。

在某种程度上,我的抱怨是合理的。而且在另外某种程度上,我只是以一个老前辈以及苛刻之人的立场发表意见。

有时我会与某些人进行互动,他们的抱怨和问题会显示他们已达到知识范围的地方。 有时这对我来说很震惊。 我想:你应该在第一学期的第一个计算机科学课上学到这一点。 然后我记起:这个人根本没有真正的计算机科学课。

当然了,后之视今,亦如今之视昔。20世纪40年代,你必须拥有电气工程学位才能看到货触摸电脑。70年代到80年代初,你只需要成为一名科学或工程专业的学生即可。90年代,你只需要一张信用卡(或者父母的信用卡)就可以了。

顺便说一下,我很擅长于硬件。甚至可以说我住在键盘上。每当我拆开电脑试图改变一些东西时,便会搞砸另外两件事。我是一个严格意义上的软件通。我知道那些为此取笑我的人,甚至是一些老年人,也会对我不知道如何使用烙铁而忍俊不禁。

这完全取决于一个人真正想做的事情。 如果想制作在线商店,购物车,网络表单以及漂亮的图片,社交媒体应用程序,那么你就不再需要计算机科学学位,甚至学位也不需要。

如果你想制作一些前所未有的令人兴奋的精彩内容,在行业中做出微小的改变并稍微改变世界,那么你确实需要那个学位。 如果您想制作较低级别人员使用的工具和库,您需要具备该学位。

或者用这种方式看待它:如果你想建造狗屋,只需用锤子和钉子拿起一些技能,然后便可以开工了。 但如果你想成为一名设计和建造摩天大楼的建筑师,那么首先要获得建筑学位。 请(再次作为一个苛刻之人说),不要明明在建造狗屋,却称自己为建筑师。

翻译自:Computer science as a lost art