欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《黑客与画家》读书笔记

程序员文章站 2022-04-30 17:16:42
...

读后感

这是一本经典的书,非常好,值得珍藏。
程序员把自己当成艺术家,写软件就是在创作艺术。
摆脱现有束缚。

第零章 前言

比起那些令人叫好的创意,格雷厄姆更看重创始人的素质。
格雷厄姆的创业哲学:1.搭建原型,2.上线运营,3.收集反馈,4.调整产品,5.成长壮大。
创业的唯一门槛是勇气。

第一章 为什么书呆子不受欢迎

智力在大家心里的分量远远不如相貌、魅力和运动能力。

我真正想要的能够设计奇妙的火箭,写出漂亮的文章,理解编程原理,一句话,我想要做伟大的事情

任何一件艺术,不管是否重要,如果你想要在该领域出类拔萃,就必须全身心投入。

成功需要不间断的付出

一个人产生良知之前,折磨就是一种娱乐。

比尔盖茨不善于社交是出了名的,但是他发现了正确的答案。

中学,错过的绝不仅仅是几本书而已。

第二章 黑客与画家

计算机科学就是一个大杂烩,由于历史原因,很多不相关的领域被强行拼在一起。

那些障碍重重的领域是最容易写出许多论文的。

凭空制造问题,然后来解决问题,论文就产生了。

对一个作家的评价,需要100年才能达成一致,你必须等他的那些有影响力的朋友都死了,然后再等他的追随者都死了,才能对他有一个公正的评价。

黑客搞计算机理论的重要性就像画家搞懂颜料的化学成分一样,不重要。

黑客新想法的最佳来源来自于创作领域。

打草稿。你把整个程序想清楚的时间点,应该是在编写代码的同时,而不是在编写代码之前,这与作家、画家和建筑师的做法完全一样。

编程语言是帮助人思考的。

创作者不同于科学家。

在企业,程序要被当做技工,职责就是将产品经理的构想翻译成代码。

很少的程序员懂得设计软件。软件设计大多不会交给一个优秀的黑客。这一点很重要。

如果你的对手是一群产品经理来设计软件,那么它永远都无法赶上你。

真正竞争软件设计的战场就是新兴领域的市场。

开发优秀软件的方法之一就是自己创业。

赚钱的软件往往不是好玩的软件。

开源软件的工作模式可能就是正确的模式(白天工作养活自己,晚上兴趣编程

要是很热爱编程,你就不可避免地会开发你自己的项目。

画家学习绘画的方法主要是动手去画,黑客学习编程也是如此动手。

通过模仿来学习,观看优秀的程序学会编程

过早优化是一件危险的事情,同样过早设计也一样,不要太早的决定一个程序应该怎么做。

关注细节设计,那些看不见的细节合并在一起,就会产生惊人的效果。

程序写出来是给人看的,附带能再机器上运行。

现在正是编程的黄金年代。

判断一个人是否具备“换位思考”的能力,有一个好方法,那就是看他怎样向没有技术背景的人解释技术问题。

黑客就像是画家,工作起来时有心理周期的。有时候,你有一个令人兴奋的新项目,你会愿意为它工作16个小时。等过了这阵,你又会觉得百无聊赖,对所有事情都提不起兴趣

第三章 不能说的话

有一种怪癖叫做“嗜粪症”,他的患者人数以及影响力不太强大,无法吧自己的观点推广给其他人。

只要你能看到别人看不到或不敢看的东西,你就有很大的优势。

很多重要的观点没人敢说。一些想法会被贴上“消极主义”,“失败分子”等标签。

如果你不能远远的跳出传统思维,提出别人一听就脑袋轰一声炸开的惊人观点,那么小小的跳出传统的思维方面不会有任何困难,这就是创新。

与笨蛋辩论,你会变成笨蛋。

如果你口无遮拦,你就没时间做正事了,为了与他们论战,你不得不变成一个语言学家。

讨论一个观点会产生更多的观点,不讨论就什么观点也没有。

到底是赞成还是反对,最好的回答是“我还没想好”。

把辩论提升到一个抽象的层次。不能具体到一本书或个电影。

做出伟大产品的公司,自我评价往往以“批评”和“自嘲”为主,而不是以“肯定”和“表扬”为主。

永远质疑。

接受流行,不是因为想要与众不同,而是因为害怕与众不同。

如果别人告诉你应该相信什么,你就真的相信了,那你就会和别人一样犯下同样的错误。

什么话不能说,为什么?

第四章 良好的坏习惯

常见的犯罪动机不外乎毒、金钱、性、仇恨。

让自己不受约束

第五章 另一条路

太麻烦,不如死。

在充满平庸之辈的软件公司,不是程序员想出好的构想,而是一个委员会集体批准坏的构想。

在Viaweb的开发者只有3个人,我一直在不停的招聘,雇更多的人,在公司内部设其他的项目,让他们做。

人数越来越少,软件开发的效率将指数式增长。

互联网软件的开发成本低,即使是最小型的公司,也可以很容易地制作和发布。这使创业公司成功的机会变大。开发一个互联网软件的费用比购买一把办公椅还要便宜。

比较软件的标准是看对手将来会有什么功能,而不是现在有什么功能。

无论何时,使用自己的软件

大公司的生产效率仅仅相当于小型创业公司的十分之一。

训练自己去想那些不能想的事情,你获得的好处会超过所得到的想法本身。

你的思想是一个地下组织,绝不要把那里发生的事情一股脑说给外人听。

第六章 如何创造财富

想致富,最好的办法就是自己创业,或者加入创业公司。

真正重要的是做出人们需要的东西,而不是加入某个公司。

媒体只报道那些有钱的人,但是往往属于特例,还有很好的运气。

假如你有一辆老爷车,你不去管它,或者动手把它修葺一新,这样的话,你就创造了财富。

最顶尖的5%程序员写出了全世界99%的优秀软件。

人们需要的东西就是财富,治愈疾病肯定就是人们需要的东西,黑客经常开发开源软件让所有人免费使用,把自己的工作捐献给社会,freeBSD让我们变得富有。

上班和上学的不同,张三,20岁,某某大学学生,现在是张三30岁,某某公司程序员。

大公司会每个员工的贡献平均化,大多数公司都在瞎猜员工的贡献,只要一般的努力工作,就能得到意料之中的薪水。

无法测量你的贡献。

创业公司是自发形成的,许多有抱负的创始人彼此之间早就相识 。团队成员不需要小村庄的那种小,而是全明星阵容的那种小。

在实际遇到很困难的技术问题时,我们会选择难以实现的,这样对手会更难实现。

最好的防御就是进攻,如果技术难以复制,那就够了。

许多人不喜欢大公司处事按部就班,会议没完没了,人际关系冰冷,管理层瞎指挥。

不管是否想出售公司,你要做的事情就是一样的(多赚钱)。

对于买家,最强的收购动机是看到自己的竞争对手可能收购你。次强的动机是你快速发展,会成为竞争对手。

公司和VC最担心的是开发某种产品的时间过长。

风险越大的工作,回报也就越大,这就是可放大性。如果完全没有风险,可放大性基本为零,基本没有对外界的影响,也就无法有大的回报。

第七章 关注贫富分化

*的象棋大师大师与普通象棋俱乐部的成员下一万盘旗,一盘都不会输。

CEO的技能和决心可能只比普通人高出10倍,但是人很人之间存在重大差别。

如果得不到报酬,人们是否愿意创造财富?唯一的可能是,工作必须提供乐趣。会有人愿意写一个操作系统,但他不愿意为你安装电话。但即使是最先进的高科技公司,也有至少90%的工作没有乐趣、令人生厌。

第八章 防止垃圾邮件的一种方法

对单个词语进行贝叶斯判断,就能很好的过滤大部分的垃圾邮件。

如果奴隶比赛,你也会变成奴隶。

第九章 设计者品味

我们相信外观优美的飞机也能飞的漂亮——本里奇。

你希望自己的作品对未来的人们有吸引力,方法之一是让你的作品对上几代人有吸引力。

扔掉早期原型是需要信心的。

幽默一定程度上反映了力量。幽默感是强壮的一种表现,始终拥有这种幽默感就代表你对厄运一笑了之,而丧失幽默感则表示你被厄运深深伤到。

强壮的标志就是轻松面对自己的人生观充满自信的人常常像燕子一样,以一种居高临下的姿态轻盈地看待周围的一切。

培养自己的不满,达芬奇为了把一根线画对,经常要画五六次。

刚入门的新手不知不觉地模仿他人,逐渐熟练之后才开始创作原创性作品。

把事情做对比原创更重要。

作出好作品,完成后可能就会有自己独特的风格。

推动人才成批涌现的最大因素就是让有天赋的人聚在一起,共同解决某个难题。

互相激励比天赋更重要。

在历史的任何时刻都有一些热门项目,一些团体在这些项目做出伟大的成绩。如果你远离这个中心,几乎不可能单靠自己就取得伟大成果。

优秀作品的秘诀就是:非常严格的品味,再加上实现这种品味的能力。

好设计就是简单的设计
好设计是永不过时的设计
好设计是解决主要问题的设计
好设计是启发性的设计
好设计通常有点趣味性的设计
好设计是艰苦的设计
好设计是看似容易的设计
好设计是对称的设计
好设计是模仿大自然的设计
好设计是一种再设计
好设计是能够复制的设计
好设计是奇特的设计
好设计是成批出现的

第十章 编程语言解析

缺乏经验的程序员对各种语言优缺点的判断经常被自己固有思想误导。

每一代人都在做上一代人觉得很浪费的事情。

一个操作所需的代码越多,就越难避免bug,也越难发现它们。

第十一章 一百年后的编程语言

一百年后,启程具备低空飞行能力,大楼会盖几百层。

一百年后,电脑运行非常快。

一件垃圾会产生更多垃圾。

设计新语言的方法是直接写下你想写的程序,不管编译器是否存在,也不管有没有支持它的硬件。

到目前为止,计算机智能并没有取得太大进展,一百年后,差不多用现在一样的程序指挥计算机。

学习开车的时候,需要记住的原则就是把车开直,不是通过车声对齐画在地上的对角线,而是通过瞄准远处的某个点,即使目标只在几米开外,这样做也是正确的。

第十二章 拒绝平庸

埃里克雷蒙德建议:从python和java入手,简单,再学一下C(windows)和Perl(CGI),最后学习lisp。

结束。