7月阅读书摘

7月阅读记录

《编码》67%
《阿城作品典藏》62%
《当我谈跑步时我谈些什么》28%
《只生欢喜不生愁》Done
《奔跑吧,程序员》Done

7月阅读书摘

《奔跑吧,程序员》

前言

伟大的公司是进化而来的有效的复杂系统一定是从有效的简单系统进化而来的。——John Gall看到长颈鹿的脖子时,你要知道这么长的脖子并不是老天爷一开始就故意设计的。随机突变导致一些长颈鹿的脖子变长,这又恰好提高了它们在某种特定环境下的生存概率,所以成千上万代之后,长颈鹿的脖子就变得越来越长。同样的道理,当我们见到一家成功的公司,必须认识到它的成功并不是创始人在建立公司的时候就计划好的,大多数创业公司都要历经数千次尝试才能有所改变并成长起来,归根结底不过是其中的一些尝试恰好提高了公司在特定市场中的生存概率,只是结果让人感觉是创始人在最早的时候就有所设计一般。本书将会关注如何以一种增量、迭代式的发展方式去打造一家创业公司(好比敏捷和精益开发),而不是费心去找出完美的计划(好比“瀑布式开发”)。不管你是在打造产品、开发技术抑或建立团队,都会发现最好的起步方式其实就是先做出一个大概可以工作的最小的东西(最简可行产品,简称MVP),然后再根据客户的反馈(对产品而言)、代码的评审和测试情况(对技术而言)或员工情况(对团队而言)逐渐进化,扩大规模。

1.3 为什么应该在创业公司中工作

真正的风险并不是因加入了小型创业公司而失业——毕竟我们在大公司工作也没办法保证不失业——而是失去机会的风险。如果选择了在一家公司工作,实际上也就是选择不在其他许多的公司工作。在这个意义上,缺乏工作稳定性也许并不是一件坏事。如果同一份工作已经干了很久,我们很可能正在错失其他一些更好的机会。

1.4 为什么不应该在创业公司工作

我要提醒你,经济上的成功并不是唯一的目标或者成功的唯一指标。人们很容易沉浸在赚钱带来的满足感中。你应该把金钱当作真正要做的事情的助推剂,而不要把金钱本身当作目标。金钱就像汽车中的汽油——你需要加以关注,否则车就会抛锚,但是美好的生活并不是在加油站间旅行。——Tim O'Reilly, O'Reilly媒体创始人

1.5 小结

在你成长的过程中,人们总是会告诉你:这个世界就是……尽量不要撞了墙也不回头,要努力拥有美好的家庭,要学会享乐,要存下一点钱。那是一种非常有限的生活。生活可以变得更加多彩,只要你发现这样一个简单的事实:你周围的一切,即你所谓的生活,都是由不如你聪明的人组成的,你可以去改变它,可以去影响它,也可以做出自己的东西供他人使用。一旦意识到这一点,你将从此不同。——史蒂夫·乔布

2.1 点子从何而来

我们可以把自己脑海中的信息想作是一个个离散的数据点,一个点子只不过是这些数据点之间的连接。要产生新的点子,并不是凭空地生成一些新的数据点,而是将已有的数据点连接起来。我们不要把新点子当作是头顶上突然亮起的灯泡,更好的比喻应当是把新的点子想作是点亮灯泡,让它照亮已经存在的东西。你见过的所有新出现的、有创造性的东西,都只不过是集之前的点子之大成。

过度集中精力强迫自己工作对想出新点子是适得其反的。大脑只有在放松和额叶(用于分析思考和做决定的部分)大部分不活跃的时候才最有创造力。
要养成习惯,每天至少花20分钟做一些可以自我放松的事情,倾听自己的想法。可以是走路、洗个时间长点的澡、冥想、在吊床上躺一会儿、写写日记、画画、雕刻、做做木工或者放放音乐。不管怎么样,把点子日记放在边上,随时准备记下笔记。

减少选项会提高自己想出创造性解决方案的能力,这种结论似乎有点违反直觉,但如果你认识到工作记忆要比长期记忆少得多,这就很好理解了。也许脑海中有数千个想法和概念,但你一次只能考虑一小部分。有点像玩杂耍,没有约束条件的系统就像把100个球都抛在空中,你是没办法全部顾得上的,你只会不断地把它们弄丢,又花大部分的时间去捡起来,重新开始

创业是成千上万次地重复“发现问题-想出点子解决问题-执行这些点子”的过程。

2.3 小结

“获得创业点子的方法就是不要去想创业点子”,而是把自己变成一个有创业点子的人。找到吸引你的主题,花大量的时间去思索,在点子日记上写下自己的想法并与他人分享。学会利用约束条件,寻找痛点,多出去走走,为你的潜意识提供大量时间处理所学到的东西。最终,便会萌发点子。

3.1 设计

大多数人错误地认为设计就是东西看上去的那个样子。人们认为设计就是外观,比如设计师接到一个盒子,被告知把它弄好看。这不是我们所认为的设计。设计不仅仅是看上去的样子,还关乎它如何使用。——史蒂夫·乔布斯

每一个从事创作工作的人都会经历一段自己的作品无法满足自己品味要求的时期,这是完全正常的,唯一的解决方法就是创作更多的作品

4.2 营销

现今,许许多多吸引眼球的事物让我们目不暇接,客户根本无法看到所有产品,哪怕只是其中一部分。如果客户不知道你的存在,你的产品做得再好也没有意义。因此,现在并不是最出色的产品胜出,而是客户认为最出色的产品胜出。让客户觉察到你的产品并且影响他们对产品的感知,这就是所谓的营销。

5.2 技术栈的进化

当我(离开Google)到了AdMob后,我心中的第一个冲动就是“噢,垃圾垃圾垃圾”。当然我没有说出口,因为作为领导者,学会的更重要的一课就是在开始说之前先闭上嘴巴去听。但是我脑子里想的是:“在Google我们是不会这样做的,在Google我们是不会这样做的,在Google我们是不会这样做的。”这句话在脑海里闪过了好多次之后,我才意识到这并不是在Google,我要解决的是不同的问题,面对的是不同的技术文化——这是很好的事情,真的很好。

5.4 选择编程语言

创建新代码的速度取决于三个因素。第一个因素是经验,你对一门语言的经验越丰富,生产效率就越高,所以要寻找你和团队已经熟悉并且有丰富文档且易于学习的语言。第二个因素是反馈循环,就是代码修改后需要多长时间才能看到效果。如果必须等待几分钟才能完成代码编译和部署,与只需要等待几秒钟让页面刷新或让脚本返回相比,前者的生产效率更低。我们要寻找支持热重载(hot reload)、具有交互式编码环境(比如“读取-求值-输出”循环,REPL)、快速编译、快速自动化测试的语言。第三个因素是语言的表达能力,即对于任何给定的想法,需要多少行代码才能实现。需要编写和维护的代码行数越多,面对的bug就越多,前进的速度也越慢

5.6 选择数据库

我们一直尝试去掉越来越多的东西,尽可能简化我们的栈。新的数据库也许很吸引人,但在稳定性上就未必了。正常运行就是人们喜欢的,能正常运行就已经了不起。所以我们一直都对我们所选择的技术感到越来越无聊,却也高兴得不能再高兴了。——Zach Holman, GitHub软件工程师

9.2 核心理念

不要把你的使命宣言和当前的战略或产品混淆起来。战略和产品是如何做和做什么的问题,而使命宣言则是为什么的问题。“如何做”和“做什么”可以根据不断变化的世界相应地改变,但是“为什么”在整个公司的生命中将是始终如一的。

每家公司都是要赚钱的,但金钱并不是公司的目标,它只是让公司达成真正目标的资源。金钱就像氧气,它是维持生活所必不可少的,但并不是生活的目的。

9.4 招聘与晋升

许多软件公司相信,奖励开发人员的最佳方式就是将他们提升到管理层。问题是,管理岗通常并不是由技术岗逐级上升达到的,它是需要完全不同技能的一份工作。精通算法、架构和测试并不意味着你在安排工作的优先次序、进行复杂的人际关系谈判和培养人才方面也会做得很出色。在大多数情况下,你失去的是一位非凡的贡献者,但得到的却是一位平庸的经理,而且他十分可能会让其他个体贡献者的前进步伐也慢下来。

9.10 小结

再也没有理由相信只有无意义的玩耍才是享受,生活的要义也未必是要背负着十字架艰难地前行。只要我们意识到工作和玩的边界其实是人为的,我们就可以处理好这些事情,开始努力让生活变得更有价值。——Danniel Pink, 《驱动力》

10.3 如何对工作机会进行评估和谈判

换句话说,所有股东分得的蛋糕比例变小并没有问题,只要这个蛋糕做得更大就可以了。

11.2 招聘什么人

问题是当人们提到“10倍能力的开发人员”时,他们想到的是一个神秘的程序员,他可以在普通开发人员每编写一行代码的时候,就写出10行代码来。这种推论的缺陷在于,编程效率和输入速度以及代码行数并没有什么关系。编程是一种创造性的职业,对同一个问题会有许多种解决方式。举个例子,我们可以想一想在开发一个软件产品(比如一个网站)的时候,汇聚了多少决定和创造性。你使用了什么语言?什么Web框架?如何存储数据?使用的是什么缓存技术?你把网站托管在哪里?如何监控网站?如何上传新的修改?如何存储代码?建立了什么类型的自动化测试?10个普通程序员可能会在每一个步骤都做出质量“平均”的决定,这些决定的代价或好处是会成倍增加的。假设流量以指数式增长,这个普通的团队做出了一个普通的网站,其数据库是很难扩展的,主机也没有足够的冗余,版本控制也没有适当的备份,亦不存在监控。当这10个编码人员把全部时间都花在到处灭火上,他们能够有多少生产力呢?

《只生欢喜不生愁》

我们为什么要写字

越挣扎越苦痛。平静不打扰也许是对己对人都最好的布施

我们常常使用这样一个句式:等我怎么样,我就怎么样。比如,等我静下心来,我就去练字。实际上,当一个人处于压力和被动状态中,此时帮助你的,可能不是心,而是手;不是反复的想和琢磨,而是提笔开写,在过程中渐渐感觉到那种你渴求的平静和节奏感。现在的社会环境中,也不太有“不忙”的人,而也不太有“没有时间”的人,假设练字需要三十分钟,而每天刷朋友圈占去的时间,可能是十倍以上。那个“我不忙了,空了,心静了”,然后可以去做各种事情的时刻,其实并不存在。也许你以后也会这样,看见桌上的毛笔,看到纸就想要去写一写,就像跑马拉松的人看到平坦的路就想跑跑一样,养成了一个坚持很多很多年的习惯。这些习惯会长久地护持你。

一粒丹砂

日日挥刀,集点成线,集线成空间,一个自己的世界也就日渐完善,不可为外部所摧灭。向内的寻求和确认,让自己高兴和甘愿,才会有积攒了珠宝满床再一时倾尽的气魄,又如“何必见戴”的故事,我不轻视路途,才可以最后见不见都可以。

我就喜欢高枕无忧的生活

艺术家总像是时代的孩子,可以一直相对任性地活着。真诚的人生是创作真诚的作品的前提,高兴地笑,难过地哭。

温泉和极光

睡前看书。看看小说,也看看攒下来没读的一些公众号文章,觉得每天发生的事跌宕起伏,比小说还精彩,但放大些看,又觉得也不过是平常事。虚构和真实,我们的生活所见就是这样交融在一起,执着一个单一角度的真实,人就会因为跟外界对立变得痛苦。大多数时候,我们生活在虚构和真实之间,一条线索是外在的真实,一条线索是内在选择的版本故事,两条线其实可以各自清晰,互不相扰。

手艺人的一步之遥

过于发达的资讯系统带来最大的问题是懒得思考,或者说来不及思考,注意力就已经被带走了。

Published with Ghost | Moegi