1.Make something people want.
2.以前创业很昂贵,你不得不找到投资人才能创业。而现在,唯一的门槛就是勇气。
3.没有什么比一个错误的前提更容易产生大量待解决的问题了。
4.你把整个程序想清楚的时间点,应该在编写代码的同时,而不是在编写代码之前,这与作家、画家和建筑师的做法完全一样。
5.黑客可以通过观看优秀的程序学会编程,不是看它们的执行结果,而是看它们的源代码。
6.你不能盼望先有一个完美的规格设计,然后再动手编程,这样想是不现实的。
7.你有一辆手动变速的汽车,你把它开上山,有时不得不松开离合器,防止汽车熄火。同样,暂时放手有时也能防止热情熄火。
8.软件开发需要合作,但是不要“合”过头。正确的合作方法是将项目分割成严格定义的模块,每个模块由一个人明确负责。模块与模块之间的接口经过精心设计,
如果可能的话,最好把文档说明写得像编程语言规范那样清晰。大部分的代码都有明确的负责人,而且只有一个。
9.程序写出来是给人看的,附带能在机器上运行。
10.最先在你头脑中跳出来的想法,往往就是最困扰你、很可能为真的想法。
11.不能说的话。找出这些不能说的话是为了少犯错、是很好的脑力训练有助于做出优秀的作品、懂得如何避开这些毫无意义永不休止的争论才有时间做正事。
(1)判断言论的真伪。触怒他人的言论是那些可能会有人相信的言论。
(2)关注异端邪说。异端邪说是指那些不一定正确但是极富争议的言论。
(3)将现代观念与不同时代的古代观念diff一下。
(4)寻找那些一本正经的卫道者,看看他们到底在捍卫着什么。
(5)观察禁忌是如何产生的,理解其产生的机制。带动流行的两种力量之中,恐惧心比抱负心有力得多。
“与笨蛋争论你也会变成笨蛋”
“自由思考比畅所欲言更重要”
“我还没想好”
“所有的反击方法之中,最好的一种可能就是幽默”
“保持永远质疑的态度”
“你不仅要远距离观察人群,更要远距离观察你自己”
12.黑客是不服从管教的。对于适当的不服从管教,保持宽容不会有太大的坏处,反而有利于美国的国家优势,它使得美国不仅能吸引聪明人,还能吸引那些自负的人。
黑客永远是自负的。
13.普通用户根本没必要知道“操作系统”这个词,更不要说“驱动程序”和“补丁”了。
14.“你的电脑”这个概念正慢慢成为过去时,取而代之的是“你的数据”。使用互联网软件,数据会更安全。
15.互联网软件的发布规则是:它运行不了,你就无法发布;一旦它能运行了,你就可以立刻发布。
16.将一个构思束之高阁,不仅意味着延迟它的实现,还意味着延迟所有在实现过程中激发的构思。
17.要让员工表现优秀,必须有竞争压力。
18.有钱的客户倾向于更贵的选择。重点关注个人和小企业客户。
19.长时间工作是互联网软件的一种必需,你能做到,你的竞争对手也能做到。也因为你能做到,所以你必须做到。
20.把创业想象成一个压缩过程。你不再是低强度地工作四十年,而是以极限强度工作四年。
21.几乎所有的情况下,公司存在的目的就是满足人们的某种需求。
22.如果一家公司真正能都按照贡献付薪,它将取得巨大成功。
23.要致富,你需要两样东西:可测量性(小团体)和可放大型(高科技)。
24.创业的成败取决于最早加入公司的那十个人,或者五个人。
25.因为一个新点子选择创业,要考虑的一个很重要的问题是:其他人复制你的模式是否困难。
26.一个人的工作具有多少价值不是由政府决定的,而是由市场决定的。(市场经济下我们要考虑的有哪些)
27.创造财富的能力差别巨大的原因在其不可替代性。富人和穷人之间生活差异的鸿沟正在缩小,品牌是这种差距的遗留物。
今天的人们多多少少还是有一些互相隔离的趋势,但主要是因为教育层次的差别,而不是财富的差别。
28.即使是最先进的高科技公司,也有至少90%的工作没有乐趣、令人生厌。
29.人类的思想是没有经过整理的无数杂念的混合。从而形成了个人品味。
30.设计者的品味
(1)好设计是简单的设计。当你被迫把东西做得很简单时,你就被迫直接面对真正的问题。
(2)好设计是永不过时的设计。
(3)好设计是启发性的设计。
(4)好设计是通常是有点趣味性的设计。
(5)好设计是艰苦的设计。
(6)好设计是看似容易的设计。
(7)好设计是对称的设计。
(8)好设计是模仿大自然的设计。
(9)好设计是一种再设计。你应该培养对自己的不满。犯错误是很正常的事情,不要把犯错看成灾难,要勇于承认、勇于改正。
(10)好设计是能够复制的设计。
(11)好设计是奇特的设计。
(12)好设计常常是大胆的设计。
31.充满自信的人常常像燕子一样,以一种居高临下的姿态轻盈的看待周围的一切。
32.在大多数领域,看上去容易的事情,背后都需要大量的练习。练习的作用也许就是训练你把刻意为之的事情变成一种自觉地行为。
33.刚入门的新手不知不觉地模仿他人,逐渐熟练之后才开始创作原创性作品。最后他会意识到,把事情做对比原创更重要。
34.推动人才成批涌现的最大因素就是,让有天赋的人聚在一起,共同解决某个难题。互相激励比天赋更重要。
35.如果你长期使用某种语言,你就会慢慢按照这种语言的思维模式进行思考。
36.大公司可以互相模仿,但是创业公司就不行。大公司只要保持平均水平就行,而创业公司必须做得更好。
37.如果你为创业公司工作,那么这里有一个评估竞争对手的妙招--关注他们的招聘职位。
38.如果你创业的话,千万不要为了取悦风险投资商或者潜在的并购方而设计你的产品。让用户感到满意才是你的设计方向。
39.技术本来就是尖端的。如果你想在软件业获得成功,就使用你知道的最强大的语言,用它来解决你知道的最难的问题,并且等待竞争对手的经理做出甘于平庸的选择。
40.一下子从无到有做出一个大项目是很恐怖的一件事。
41.编程提高代码运行速度的关键是使用好的性能分析器。
42.有一些简单重复某些信息就能解决的问题不要想得太复杂。
43.你必须对解决难题的可能性保持乐观,同时对当前解法的合理性保持怀疑。
44.用户是一把双刃剑。
45.除非设定目标用户,否则一种设计的好坏根本无从谈起。
46.评价一种语言的优劣不是简单地看最后的程序是否表达得很漂亮,而要看程序从无到有的那条完成路径是否很漂亮。
47.士气是设计的关键因素。
48.任何时候代码都必须能够运行。
词汇:
白天工作:意思是,你有一份为了赚钱的工作,还有一份为了爱好的工作。
diff:是计算机术语,最早是一个程序,用来比较同一个软件不同版本源码之间的差异。
“订报纸模式”是互联网软件天然的收费模式。
只要有可能,商业性公司就会采用一种叫做“价格歧视”的定价方法。
软件的“边际成本”接近于零。
帕金森定律:因为你必须做到,所以你能够做到。(只是其中的一条)
注意避免“过早优化”。
我们把由父母供给收入的模式称为“老爹模式”。
递归、遗传算法、傅里叶公式等。
“弱即是强”模式:软件功能的增加并不必然带来质量的提高。