|
一点说明:之所以叫不能说的秘密,并非因为保守,而是因为告诉一般人,他非但理解不了,还有可能要取笑你。所以有自尊的Hacker往往只传自己信得过的人,以免自讨没趣。于是很多东西就逐渐成为了不能说的秘密。所以这个Hacker传说系列也是一个尝试,仅供参考。
一个Hacker相对于程序员来说有着超过100倍的惊人效率。并非是由于他们的智商超过一百倍。而在于他们掌握了程序员没有掌握的"魔法"。
重量级秘密之一:Hacker的编程方式往往和普通程序员都是相反的。
Hacker的思维和工作流程都采用“以我为主"的指导原则。而程序员都是采用“以电脑为中心“的方式。
以一个最简单的例子来说,程序员喜欢使用IntelliSense,利用电脑帮助选择api,而Hacker会把大多数的api熟记在心。也许你会说这个怎么能记住呢?其实绝对是可以的, 只是没有人和我们强调这个看上去简单之极的方法。
我们拿英语为例,一般来说掌握英语至少需要记住5000个单词,其实编程和写文章没有什么两样,api就如同英语单词一般。如果我们一边写文章,一边要查字典,不但效率低,而且文章质量差。而所谓的IntelliSense只不过把纸质字典换成了快译通而已。
当一个Hacker编程的时候,他脑中已经迅速的用单词(api)组织成为文章(program),自然就效率奇高了。那么记住api很难吗?其实很容易,因为很多api都是要天天用的,一个程序员如果一年编程下来还不能背出80%的api,那么智商就在平均水平以下了。
但是事实是大多数程序员记不住api,这就是IntelliSense惹的祸了,看似很方便的鼠标一点,却失去了将api刻写到脑中的机会。这也是所有的Hacker对Visual Studio不屑一顾的根本原因。当我们看到一个Hacker用文本编辑器来写程序的时候,其实他不是在耍酷(园子里面的很多朋友把这称为“装”),他只不过是用正确的方法来做正确的事而已。
所以当你采用微软模式编程,那么开始会非常快,但是没有积累,最后只是黄梁一梦而已。而Hacker所使用的Hacker模式, 开始会很慢,然后会越来越快。效率会呈现线性增长(这是亲身体会,绝不夸大)。
其实著名的 Hello World 惯例也包含了这样的一个隐喻,认认真真的象写Hello World一样“一个字一个字“写每一个程序,最后自然会成为高手。
还有很多例子,也体现了Hacker“以我为主“的思想。
大量的Hacker都在纷纷转向动态语言,这是因为动态语言具有api容易记住的优良特性(比如参数的顺序可以是任意,这个可以大大减轻记忆量),因此当CPU不再是瓶颈后,动态语言成了最佳选择。
大多数的Hacker都喜欢做底层,因为底层的api数量最少, 随版本的变动最少,所以他们可以用较少的力气来保持或者增加他们的效率。
所有的Hacker都对微软技术很头痛, 因为微软非常喜欢推出新的api,因此当一个新版本推出,即使一个顶级Hacker,效率也可能会损失50%以上。这会令他们非常抓狂。
即使是.NET之父Anders他也喜欢做底层,他研究的是语言特性,涉及的api不过几十个而已。如果让他来写ASP.NET,效率可能和我们也差不多。
其他的例子还有诸如为什么要用跨平台,为什么要使用Vim/Emacs,Hacker如何通过大脑来大大减轻眼睛的负担,从而能干到60岁,等等涉及很多方面的方法和实践,其实都体现了这个思想。
结论:Hacker们用一个看似慢,实则快的可持续发展的方式来发展他们的大脑。他们往往抢占最佳地形,摘得营养最丰富的桃子。而程序员往往用工具商给的所谓高级工具(比如微软的Visual Studio),其实也就是一把锄头,每天加班加点,也只是在贫瘠的土地上割点青草吃吃。
其他的很多秘密,视情况和大家交流。如果你有什么疑问和想法,欢迎留言评论。
it知识库:Hacker传说之不能说的秘密,转载需保留来源!
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。