Did you know that you can navigate the posts by swiping left and right?
为什么书呆子不受欢迎?因为他们的心思在于其他的地方,而之所以他们不仅不被欢迎,反而被欺负,是因为青少年还未摆脱儿童状态,折磨是一种娱乐。在任何社会等级制度里,那些对自己没自信的人就会通过虐待他们眼中的下等人来凸显自己的身份。孩子们欺负书呆子也与他们试图通过结盟的方式去变的受欢迎。
而社会之所以友好地对待书呆子是因为在成年人社会的庞大规模里,书呆子做的每件事都能产生真正意义上的效果。而那些依旧充满算计和勾心斗角的小圈子因为不具备实际功能,也就无所谓采用的形式。
如今社会,我们面临一个更严峻的问题,他与当前的诸多难题具有共同的起因,即专业化。当工作的专业程度越来越高时,我们必须接受更长时间的训练。这也导致当今的青少年在生产活动中根本是毫无用处的。
黑客与画家都是创作者。
计算机科学如同一个大杂烩,一段时纯粹的数学家,中间是计算机博物学家,另一端则是黑客。优秀的软件设计师是建筑师,而不是工程师。建筑是决定做什么,工程师想出来怎么做。
对于黑客而言,真正想做的是设计优美的软件,考核这种工作时费城困难的,唯一有效的外部考核就是时间。岁月洗礼后,优美的东西发展机会更大,丑陋的则往往被淘汰。塞缪尔.约翰逊说,人们对一个作家的评价,需要100年才能达成一致。等他有影响力朋友都死了,然后再等他的追随者都死了,才能对他有一个公正的评价。
编程语言首要的特点是允许动态扩展,它是用来帮助人们思考程序的,而不是表达已经向好的程序。是一支铅笔,而不是一支钢笔。
大学和实验室强迫黑客成为科学家,企业强迫黑客成为工程师。
如同画家作家一样,几乎所有的创作者在职业生涯的早起都有一份白天工作,你有一份为了赚钱的工作,还有一份为了爱好的工作。
借鉴绘画,我们写代码时调试也如同打草稿。整个过程一开始是一张草图,然后填入细节。
找出不能说的话:真话,异端邪说,时空差异diff,道貌岸然,观察禁忌的产生。这样的目的在于好奇,了解真相避免犯错,也是一种很好的脑力训练。
优秀作品往往来自于他人忽视的观点,而最被忽视的想法就是那些被禁止的思想观点。
一旦发现不能说的话,别说,至少也要挑选合适的场合再说,只打那些值得打的账。
如果你要清晰地思考,就必须远离人群,但是走的越远,你的处境就会越困难,受到的阻力约会更大,因为你在一步步与社会习俗背道而驰。小时候,每人个人鼓励你不断成长,变成一个心智成熟,不耍小孩子脾气的人,但是很少有人鼓励你继续成长,变成一个怀疑和地址社会错误潮流的人。
永远质疑,如果自己就是抄谁的一部分,怎么能看见潮水的方向呢?你只能永远滴保持质疑,问自己,什么话是我不能说的,为什么?
不遵循常规(不是为了不遵循去不遵循)。解决问题的方法非常聪明高超,将整个系统操纵在股掌之间,叫做黑,解决问题的方式非常丑陋笨拙,这也叫做黑。从丑陋到聪明,它们之间存在一种连续性渐变。
黑客不喜欢版权的原因在于他们完成工作所需要的思想自由,只有深入了解当前的技术,才能构想下一代技术。在计算机工业的历史上,新技术往往是由外部人员开发的,而且所占的比例可能要高于内部人员。
桌面软件->互联网软件
一栋大楼,单个巨大的二进制文件 -> 一座城市,不同种类程序的集合。
人月神话:想一个项目增加人手,往往会拖慢项目进程,并且随着参与人数的增加,人与人之间的沟通呈现指数级增长。人数越来越多,开会讨论各个部分如何协同工作所需的时间越来越长,无法预见的互相影响越来越大,产生的bug也越来越多。幸运的是,这个过程的逆向也存在:人数越来越少,软件开发的效率呈现指数级增长。
如果你是一个黑客,并且梦想自己创业,可能会有两件事令你望而却步,不敢真正开始行动,一件事不懂的管理企业,一件事害怕竞争。实际上,这两件事都是没有通电的电篱笆。(趁着统治者打鼾时,夺回你们的自由。)其中,管理企业重点在于做出用户喜欢的产品,保证开支大于收入。竞争则是,黑客懂得如何租用办公室,雇佣销售人员要比那些公司搞懂如何正确地编写软件容易得多。
创造有价值的东西就是创造财富,金钱则是一种历史较短的发明;因为可以不断地创造出更多符合人们需求的,有价值的东西,因此财富的总量可以不断增加,因而减少绝对贫穷,增加相对贫穷。(价格是由需求决定的,而需求很难去衡量正确或者不正确)。社会对于贫富分化的另一个原因是巨额财富获取的渠道不正义。
创造财富两个要素,可测量性:小团体,可放大性:高科技。
财富与权力,财富如果没有权力的保护,会失去,导致个人没有动力继续创造,欧洲之所以在历史上如此强大,很可能是因为允许赚到大钱的人保住自己的财富。
贝叶斯方法,一种统计的方式,同google现在很多方案类似。
好设计师简单的设计,永不过时的设计,解决主要问题的设计,启发性的设计,有点趣味性的设计,艰苦的设计,看似容易的设计,对称的设计,模仿大自然的设计,再设计,能够复制的设计,奇特的设计,成批出现的 ,大胆的设计。
机器语言->高级语言
语言设计者的重要分歧在于:有些人认为编程语言应该放置程序员干蠢事,另一些人则认为程序员应该可以用编程语言做一切想干的事。
内核越小,最干净的编程语言才会存在与进化的主干上,其内核设计越小越干净,生命力越顽强。
黑客成长路径:python+java->c+perl->Lisp
图灵等价:计算机P可以模拟Q,且Q可以模拟P.
图灵完备:一个可以计算所有图灵可计算的计算系统。
Lisp的思想:
1.条件结构
2.函数也是一种数据类型
3.递归
4.变量的动态类型
5.垃圾回收机制
6.程序由表达式构成
7.符号类型
8.代码使用树形表示法
9.无论何时,语言都可用。不区分读取期,编译期和运行期。
语言具有:免费的实现(编译器),相关书籍(教程),依附的计算机系统(Mac OSX等),流行还需要的特点包括:简洁、可编程性(可以做自己想做的事情),一次性程序(很快地做临时性的事情),函数库(一大群可用的API),效率(高德纳指出,运行速度取决于一些关键的瓶颈,Profiler来帮你),时间的考验,再设计。
设计追求好,研究追求新,只有新的研究才能超越好的设计,只有好的问题才能诞生新的研究。殊途同归。