关于黑客 - 工程师和黑客的区别在哪里?

2014年11月12日 10:27 来源:互联网 作者:佚名 我要评论(0)

标签:工程师(68469)黑客(21847)

  关于黑客

  黑客在哪里?黑客无所不在。不同于将黑客和工程师看作一成不变的性格特性,我更愿意认为黑客或工程师像是人们所戴的帽子————创造者尤其如此。黑客与工程师的不同在于在给定的时间、地点和情形下其本人是什么样的人。

  在《黑客与画家》中,保罗反对将计算机科学当作科学来对待。他写到,黑客只想做黑客所做的事情,而不是写论文。基本上,我认可他的想法,在领域/职业心理层面,这是很重要的。作程序员的人并不妨碍他成为一名黑客,当然也不妨碍他成为诺贝尔物理学奖获得者。

  正如前文中所提到的,黑客的特性是破旧,拒绝约定俗成的举动往往会引起重大革新/突破。

  李纳斯。托沃兹(Linux Torvalds)反感所有常规的软件创造过程。他打破了以往各自为营的封闭式软件开发模式,开创了Linux开源系统,正如艾瑞克斯。雷蒙德(Eric S Raymond)在《大教堂和市集》中所描述的那样,这是极具震撼力的革新。

  尽管如此,李纳斯也并非是一个草率马虎的程序员,事实恰好相反,他所写的Linux内核的源码有着不可思议的美感。在创造这样的程序时同样需要有明确的规则、约定的方法,在Linux开发工作之余,他也可以说是一名带着工程师帽子的开发者

  关于角色

  六年前,我曾说过做一名黑客或一名工程师需要与生俱来的品质。而我现在则认为,在不同的领域,不同的情形下我们有着不同的心理特征。

  创业公司从来不会在单个领域起步,例如,一家搜索引擎起家的公司既包含商业领域(如商业运营、业务管理),又包含软件开发领域(如开发搜索引擎软件)。

  在这里我举两个创业公司至少在两个领域起步的例子。想象一下,有两个合伙人正处在创业阶段,两人都是程序员且都是创造者类型(就是说他们喜欢创造东西出来),但是A比B有着更多的开发经验和知识,而B有着比A多的商业运营经验。当涉及到商业领域时,B通常会成为工程师角色,而A则倾向于成为黑客的角色。在创建一家创业公司的结构或框架时,B比A知道更多关于商业运营方面的陷阱,比如B知道特定的税必须以特定的方式缴纳,但A不知道而且还会提出一些美好但违法的黑客式方法。

  然而,当涉及到软件开发领域时,他们的角色将会发生转换。例如,A有着足够充分的理由架设桌面视频会议系统来用,而缺乏经验的程序员可能会将此举认为是在阻碍他们黑客式的行为。

  当涉及到单个程序开发时就更有趣了。一个人可能会以他的知识体系和工程素养创造一段程序出来,或者是提出一个工程化解决方案,然后像黑客那样探寻这个解决方案的更多发展空间。前者的例子是,李纳斯。托瓦兹以黑客方式创造了Linux内核————当Linux被创造时是以MINIX系统的fork程序为基础的,但同时他也做了很多精细的工程化的工作。后者的例子是理查德。费因曼(Richard Feynman)对于量子电动力学的发现。

  角色转换

  当一个黑客和一个工程师在一间屋子里计划一起创造一些东西出来时,可能会是谁也不服谁的状态。尽管如此,我仍然强烈建议在初创公司中既包含有黑客型人才,亦包含有工程师型人才。

  依据不同的情形,创造者(黑客或工程师)有着不同的心理特征,这可以被很好的加以利用。在存在黑客和工程师的领域里,黑客能够以革新的角度看待旧问题,寻找漏洞并做修补,而工程师能够为黑客提供扎实的事实基础。上文中的税收例子便是说明。

  事实上,依据情境变化的角色转换也可以很好的加以利用。保罗在《黑客与画家》中谈到黑客需要同理心。角色转换是很好的同理心训练。虽然角色转换大多数时候发生在不同领域转换中(比如,A是商业运营方面的黑客,软件开发方面的工程师;B正好相反),如果初创业者能够认清他们正在扮演的角色以及需要的角色,这会是很好的锻炼同理心的机会。

  工程师可能会觉得自己多年的经验会被黑客忽视掉,而黑客会觉得他的能力会被工程师所设定的条条框框所牵绊。当这样的事情发生时,其实是不错的机会去感受彼此的角色————试着穿上别人的鞋子走走看,或许能走一英里亦或两英里。

  关于这点,我想指出的是,我不相信每个人都有黑客的品质,总会有一些人承受不了一点点的冒险或不服从的后果。在我看来这些人可能适合生活在更大的环境中,但不适合在初创团队里,创业团队需要的是能够在黑客和工程师角色之间相互转换的人。

  在另一方面,如果初创团队负责是是极为重要的软件(比如可能会引起多人丧命的那种),那么相比黑客式思考方式,团队需要的更多是工程师式的想法。当然,这并不妨碍一些娱乐型的黑客用像Python这样的动态语言做出一些疯狂的事,像是用Python控制30吨重的设备。

  结束语

  黑客早已不是什么新名词,但黑客这个词已经存在许久并将存在更久。从伽利略到费因曼再到托瓦兹,总会有一些麻烦制造者伸长了脖子探寻着盒子外的世界,桀骜不驯、寻求革新。

  在软件方面,我赞同保罗。格雷厄姆的观点。我们生活在软件黑客的繁荣时代,但随着计算机工业的成熟,工程师将会逐渐成为新新人类,他们可能没有黑客那么迷人,但他们将会是软件的根基。

  综上所述,最重要的是继续努力前行,继续努力创造新的事物,不管你是一名黑客还是一名工程师,因为是创造者(Maker)在推动这个世界发展。

上一页123全文

本文导航