Skip to content

Commit 6cb267f

Browse files
committed
improve readability in zh for chapter three and other documents
1 parent 3c01ac8 commit 6cb267f

24 files changed

+83
-84
lines changed

zh/2-Intermediate/Personal-Skills/03-How to Tradeoff Time vs Space.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
对我来时候,计算复杂度理论是美妙的,并且与物理学一样意义深远,并且可能还有很长的路要走!
88

9-
时间(处理器周期)和空间(内存)可以相互交易。工程是关于妥协的,这就是一个好的例子。它并不总是有条理的的,然而,编码一些东西时更加紧凑可以节省空间,但要以解码时花费更多的处理时间为代价。你可以通过缓存节省时间,也就是,花费空间去存储某些东西的一个本地副本,但要以维持缓存的一致性为代价。你偶尔可以通过把更多信息放在一个数据结构里来节省时间。这通常只会有较小的空间占用,但可能会使算法复杂化。
9+
时间(处理器周期)和空间(内存)可以相互交易。工程是关于妥协的,这就是一个好的例子。它并不总是有条理的,然而,编码一些东西时更加紧凑可以节省空间,但要以解码时花费更多的处理时间为代价。你可以通过缓存节省时间,也就是,花费空间去存储某些东西的一个本地副本,但要以维持缓存的一致性为代价。你偶尔可以通过把更多信息放在一个数据结构里来节省时间。这通常只会有较小的空间占用,但可能会使算法复杂化。
1010

1111
提高时间空间转换经常把它们中的一个或另一个戏剧性地改变。然而,在你开始做这个工作前,你应该问你自己,你将要优化的是否是最需要优化的?研究算法是有趣的,但你不能让这遮蔽了你的双眼让你看不到这样一个冷酷的事实:优化一些不是问题的问题将不会带来任何明显的区别,但却会造成测试的负担。
1212

zh/3-Advanced/Compromising-Wisely/01-How to Fight Schedule Pressure.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
发布压力是快速推出好产品的压力。这是好的,因为它反映了市场事实,并且在某个意义上是健康的。时间压力是迫使一个产品更快地推出的压力,这是浪费的,不健康的,并且太普遍了。
44

5-
时间压力的存在是有原因的。给程序员任务的人们没有完全尊重我们的强烈的工作道德以及作为一个程序员的乐趣。可能是因为他们对我们所做的事情,他们相信,要求更快会让我们更加努力工作,使得工程更快完成。这可能确实是对的,但效果很小,损害很大。另外,他们看不到生产软件真实需要的东西。看不到到,也不能够自己创造,他们能做的唯一的事情是看着发布的压力,然后烦程序员。
5+
时间压力的存在是有原因的。给程序员任务的人们没有完全尊重我们的强烈的工作道德以及作为一个程序员的乐趣。可能是因为他们把自己的习惯投射到我们身上,他们相信,要求更快会让我们更加努力工作,使得工程更快完成。这可能确实是对的,但效果很小,损害很大。另外,他们看不到生产软件真实需要的东西。他们看不到,也不能够自己创造,他们能做的唯一事情就是看着发布的压力,然后烦程序员。
66

77
与时间压力斗争的方法是简单地把它当做发布压力,实现的方法是让可用劳力与产品间的关系变得透明。提供一个诚实,细致,大部分可理解的对所有相关劳力的估计,是一种最好的实现方式。允许做出好的管理决定以权衡可能的功能也是一个附加的好处。
88

9-
必须清楚解释的关键是,预算是一种几乎不可压缩的液体。就像你不能把水放进充满的瓶子里,你不能往充满的时间中填入更多任务。某种意义上,程序员永远不会拒绝,但更喜欢说“得到你想要的东西,你会失去什么?”,做出清晰的预算的效果将会是增加对程序员的尊敬。这也是其他职业任意所表现的。程序员的努力工作会被看到。很明显,设置一个不现实的时间表对每个人都是痛苦的。程序员不能被欺骗。要求他们做一些不现实的东西是对他们的不尊重和不道德。极限编程放大了这个问题,并且围绕它构造了一个过程,我希望每个读者能足够幸运去使用它。
9+
必须清楚解释的关键是,预算是一种几乎不可压缩的液体。就像你不能把水放进充满的瓶子里,你不能往充满的时间中填入更多任务。某种意义上,程序员永远不会拒绝,但更喜欢说“得到你想要的东西,你会失去什么?”,做出清晰的预算的效果将会是增加对程序员的尊敬。这也是其专业行为的一种表现。程序员的努力工作会被看到。很明显,设置一个不现实的时间表对每个人都是痛苦的。程序员不能被欺骗。要求他们做一些不现实的东西是对他们的不尊重和不道德。极限编程放大了这个问题,并且围绕它构建了一套流程,我希望每个读者能足够幸运去使用它。
1010

1111
Next [如何理解用户](02-How to Understand the User.md)

zh/3-Advanced/Compromising-Wisely/02-How to Understand the User.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# 如何理解用户
22

3-
理解用户以及帮助你的boss理解用户是你的责任。因为用户没有像你一样密切地与你的产品的制造产生联系,他们的表现有点不同:
3+
理解用户以及帮助你的 boss 理解用户是你的责任。因为用户没有像你一样密切地与你的产品的制造产生联系,他们的表现有点不同:
44

55
- 用户通常会做出简短的判断
66
- 用户有他们自己的工作,他们主要会思考你的产品中小的改进,而非大的改进
77
- 用户看不到你的产品的整个用户画像
88

9-
你的责任是找出他们真实需要的东西,而非他们说他们需要的东西,然而,更好的是,在你开始前,建议他们,让他们同意你想做的,就是他们真实想要的东西,但他们可能没有这种愿景。你对你自己的主意的信心是要看情况的。你必须同时与自大和错误的谦逊做斗争去找出什么是人们真实想要的。这两种人,或者同一个人身上两种思维模式,一同和谐工作会给出最好的机会来给出正确的愿景。
9+
你的责任是找出他们真实需要的东西,而非他们说他们需要的东西,然而,更好的是在你开始前给他们提出建议,并且让他们认同你的建议就是他们想要的,但他们也可能没有做这种事的愿景。你对你自己的主意的信心是要看情况的。你必须同时与自大和错误的谦逊做斗争去找出什么是人们真实想要的。这两种人,或者同一个人身上两种思维模式,一同和谐工作会给出最好的机会来给出正确的愿景。
1010

11-
你在用户身上花费的时间更多,你就能够更好地理解什么能够真正地成功。你应当尝试在你的用户上尽可能测试你的想法,如果可能的话,你甚至应当和他们一起吃饭。
11+
你在用户身上花费的时间越多,你就越能更好地理解什么能够真正地成功。你应当尝试在你的用户上尽可能测试你的想法,如果可能的话,你甚至应当和他们一起吃饭。
1212

1313
Guy Kawasaki [Rules] 强调过在倾听之外,*观察*你的用户的重要性。
1414

zh/3-Advanced/Compromising-Wisely/03-How to Get a Promotion.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66

77
想要得到薪酬的提升,带着信息去协商。
88

9-
如果你觉得你值得得到提升,与你的boss聊一聊。清楚地问他们你需要做什么才能获得提升,然后努力去做。这听起来很老套,但大多数时候你对你需要做的事情的追求与你boss的想法是不同的。这可能会让你的boss在某些程度上有些失落
9+
如果你觉得你值得得到提升,与你的 boss 聊一聊。清楚地问他们你需要做什么才能获得提升,然后努力去做。这听起来很老套,但大多数时候你对你需要做的事情的追求与你 boss 的想法是不同的。这可能会让你的 boss 在某些程度上有些失落
1010

11-
大多数程序员可能在某些形式上对他们的相对能力有夸张的感觉 --- 毕竟,我们不可能都在前10%里!然而,我也见过一些非常不得志的人。人不能期望每个人的评价在什么时候都完美与现实相同,但我认为人们通常在一定程度上是公平的,有这样一个警告:如果别人看不到你的工作,你就得不到欣赏。有时候,因为偶然或个人习惯,有些人可能得不到太多关注。在家努力工作或者与你的团队和boss地理隔离的话,这会变得特别困难。
11+
大多数程序员可能在某些形式上对他们的相对能力有夸张的感觉 --- 毕竟,我们不可能都在前10%里!然而,我也见过一些非常不得志的人。人不能期望每个人的评价在什么时候都完美与现实相同,但我认为人们通常在一定程度上是公平的,有这样一个警告:如果别人看不到你的工作,你就得不到欣赏。有时候,因为偶然或个人习惯,有些人可能得不到太多关注。在家努力工作或者与你的团队和 boss 地理隔离的话,这会变得特别困难。
1212

1313
Next [服务你的团队 - 如何发展才能](../Serving-Your-Team/01-How to Develop Talent.md)

zh/3-Advanced/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
- 服务你们的团队
1111
- [如何发展你们的才能](Serving-Your-Team/01-How to Develop Talent.md)
1212
- [如何选择工作的内容](Serving-Your-Team/02-How to Choose What to Work On.md)
13-
- [如何从你的队友学到最多东西](Serving-Your-Team/03-How to Get the Most From Your Teammates.md)
13+
- [如何让你队友的价值最大化](Serving-Your-Team/03-How to Get the Most From Your Teammates.md)
1414
- [如何划分问题](Serving-Your-Team/04-How to Divide Problems Up.md)
1515
- [如何处理无聊的任务](Serving-Your-Team/05-How to Handle Boring Tasks.md)
16-
- [如何获得对工程的支持](Serving-Your-Team/06-How to Gather Support for a Project.md)
16+
- [如何为工程获取支持](Serving-Your-Team/06-How to Gather Support for a Project.md)
1717
- [如何发展一个系统](Serving-Your-Team/07-How to Grow a System.md)
18-
- [如何有效地交流](Serving-Your-Team/08-How to Communicate Well.md)
18+
- [如何有效地沟通](Serving-Your-Team/08-How to Communicate Well.md)
1919
- [如何告诉别人他们不像知道的东西](Serving-Your-Team/09-How to Tell People Things They Don't Want to Hear.md)
2020
- [如何处理管理神话](Serving-Your-Team/10-How to Deal with Managerial Myths.md)
2121
- [如何处理组织混乱](Serving-Your-Team/11-How to Deal with Organizational Chaos.md)
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
# 如何发展才能
22

3-
Nietschze夸大了他所说的
3+
Nietschze 夸大了他所说的
44

5-
>杀不死我们的,只会让我们更强大。
5+
>那些无法摧毁我的,只会让我更强大
66
77
你最大的责任是对你的团队负责。你应该非常了解他们中的每个人。你应该激励你的团队,但不要让他们过劳。你通常应该告诉他们他们被激励的方式。如果他们觉得划算,他们会被很好的激励。每个工程中,或者在每个其他的工程里,试着同时用他们建议的以及你认为对他们好的方式去激励他们。激励他们的方法不是给他们更多工作,而是给他们一个新的技能或在团队里扮演一个新的角色。
88

9-
你应该允许人们(包括你自己)偶尔失败,并且应该为一些失败预留一些时间。如果从未有失败,冒险也就没有意义。如果没有偶然的失败,说明其实你没有足够努力。当一个人失败了,你应该尽可能温柔地对待他,不该把他们当做成功了那样子
9+
你应该允许人们(包括你自己)偶尔失败,并且应该为一些失败预留一些时间。如果从未有失败,冒险也就没有意义。如果没有偶然的失败,说明其实你没有足够努力。当一个人失败了,你应该尽可能温柔地对待他,但不该把他们像成功了那样对待
1010

1111
为了让每个团队成员被充分激励,问清楚他们中的每个人,如果他们没有动力的话,他们需要什么才能被充分激励。你可能需要让他们保持不满意的状态,但你需要知道每个人需要的是什么。
1212

13-
你不该因为这样的原因放弃,或者让一些人松懈:他们士气低落或者不满因此故意没有承担分担到的责任。你必须试着让他们充分被激励并且有效率。只要你有耐心,坚持这样做。当你的耐心耗尽时,就解雇他们吧。你不能允许故意不司其职的员工留在团队里,因为这对团队不公平。
13+
你不能放弃因为低落的情绪或者不满就故意不承担工作的那些人,然后就让他们这样懒散下去。你必须试着让他们充分被激励并且有效率。只要你有耐心,坚持这样做。当你的耐心耗尽时,就解雇他们吧。你不能允许故意不司其职的员工留在团队里,因为这对团队不公平。
1414

1515
通过在公众场合这样说,让你团队中的强大成员清楚地知道他们是强大的。表扬应当公开,批评应当私密。
1616

17-
团队中的强大成员会自然地比弱的成员有更多困难的任务。这是完美而自然的,没人为因此困扰,因为每个人都努力工作
17+
团队中的强大成员会自然地比弱的成员有更多困难的任务。这是完美而自然的,没人会因此困扰,因为每个人都在努力工作
1818

1919
一个在工资中没有反馈出来的奇怪的事实是,好的程序员比十个糟糕的程序员要有效率得多。这导致了一种奇怪的现象。通常,如果你们的弱程序员不挡道的话,你能跑的更快。如果你这样做了,事实上你在短期能取得更多进度。然而, 你的交易会失去一些重要的好处,叫做对弱小成员的训练,对集体知识的传递,失去强大程序员后的恢复能力。强大的程序员对这种现象应该温和些,并且从各种角度去考虑这个问题。
2020

21-
你经常能够给强大的团队成员有挑战的,但细致描绘的任务。
21+
你可以经常给强大的团队成员有挑战的,但细致描绘的任务。
2222

2323
Next [如何选择工作的内容](02-How to Choose What to Work On.md)

zh/3-Advanced/Serving-Your-Team/02-How to Choose What to Work On.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
你需要在你个人的需要和团队的需要间权衡,选择需要做工程中的哪个部分。你应该做你最擅长的东西,但是也要试着去找一种方式来激励自己,不是通过承担更多的工作而是通过练习新的技能。领导才能和交流能力比技术能力更重要。如果你非常强大,承担最困难或最有风险的任务,在工程中尽可能早地完成这部分,以此减少风险。
44

5-
Next [如何最大化利用你的队友](03-How to Get the Most From Your Teammates.md)
5+
Next [如何让你队友的价值最大化](03-How to Get the Most From Your Teammates.md)

zh/3-Advanced/Serving-Your-Team/03-How to Get the Most From Your Teammates.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
# 如何让你的队友的价值最大化
1+
# 如何让你队友的价值最大化
22

33
为了让你的队友的价值最大化,发展好的团队精神,试着保持每个人的个人挑战与渴望。
44

5-
为了发展团队精神,文化衫与聚会是有益的,但不如对个人的尊重。如果每个人尊重其他的每个人,没有会想要让其他任何人失望。团队精神产生于人们为团队做出牺牲,优先思考团队的利益而非自己利益的时候。作为一个领导者,在这个方面,没有付出就没有收获。
5+
为了发展团队精神,文化衫与聚会是有益的,但不如对个人的尊重。如果每个人尊重其他的每个人,就没有人会让其他人失望。团队精神产生于人们为团队做出牺牲,优先思考团队的利益而非自己利益的时候。作为一个领导者,在这个方面,没有付出就没有收获。
66

77
团队领导力的一个关键是促进团结,这样每个人都会听你的。有时候这意味着允许你的队友犯错。也就是,基于这种团结,如果对项目没有太大的损害,你必须允许你团队的一部分成员用他们自己的方式做事,即使你有很大的信心认为这是一件错事。当这种情况确实发生时,不要同意他们的观点,简单公开地反对之,然后接受这种团结。不要让人觉得你受伤了,或者认为你是被迫的,简单地陈述你不同意,但认为团队的团结是更加重要的。这经常会导致他们反悔。如果他们真的反悔了,不要坚持他们一开始的计划。
88

99
如果在你们从所有合适的角度讨论了这个话题后,有个人会反对,简单地告诉他们,你必须做一个决定,并且这就是你的决定。如果有方法去评估你的决定是否是错的,或者它稍后是否是错的,尽可能快速切换,并感激那个对的人。
1010

11-
询问你的团队,包括集体与个人,这样一个问题:他们认为什么能创造团队精神以及创造一个高效的团队。
11+
询问你的团队,包括集体与个人这样一个问题:他们认为什么能创造团队精神以及创造一个高效的团队。
1212

1313
经常表扬,但不要浪费。尤其是表扬那些反对你且确实值得表扬的人。公开表扬,私下批评。但有这样一种例外:有时候进步或者纠正一个错误但却没有注意到错误的根源,是不能被表扬的,这种进步应该私下表扬。
1414

zh/3-Advanced/Serving-Your-Team/04-How to Divide Problems Up.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
接手一个软件工程并把它分为可以由个人实现的任务是很有趣的。这事应该及早进行。有时候经理可能会认为不考虑个人的项目能够起作用。这是不可能的,因为每个人的生产力是如此广泛地不同。对某个组件有特殊知识的人也经常改变,并且可以对工作效果有一个数量级的影响。
44

5-
正如一个作曲家认为乐器的音色会其重要作用,或者运动队教练对每个运动员的体能的考虑那样,有经验的团队领导,通常不能够把工程依据团队成员需要承担的角色那样划分成一个个的任务。这是好的团队不容易解散的一个原因。
5+
正如一个作曲家对其演奏乐器的音色的考虑,或者运动队教练对每个运动员的体能的考虑那样,有经验的团队领导,通常不能够把工程依据团队成员需要承担的角色那样划分成一个个的任务。这是好的团队不容易解散的一个原因。
66

7-
因此有这样一种危险:人们在锻炼自己的能力时会感到无聊,并且不会提高他们的不擅长的方向或者学习新的技能。然而,如果不被过度使用的话,精通是一个非常有用的生产工具。
7+
因此有这样一种危险:人们在锻炼自己的能力时会感到无聊,并且不会提高他们的弱项或者学习新技能的能力。然而,如果不被过度使用的话,精通是一个非常有用的生产工具。
88

99
Next [如何处理无聊的任务](05-How to Handle Boring Tasks.md)
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# 如何处理无聊的任务
22

3-
有时候避免对公司或工程的成功至关重要却很无聊的任务是不可能的。这些任务可能真的会降低那些必须执行它们的人的斗志。最好的处理方法是使用或者发扬Larry Wall的程序员懒惰美德。试着找一些方法让计算机去做这个任务,或者帮助你的队友去做这个。用一个程序花一个星期去完成要手动去用一个星期完成的任务能让你懂得更多,并且有时候这是可重用的。
3+
有时候避免对公司或工程的成功至关重要却很无聊的任务是不可能的。这些任务可能真的会降低那些必须执行它们的人的斗志。最好的处理方法是使用或者发扬 Larry Wall 的程序员懒惰美德。试着找一些方法让计算机去做这个任务,或者帮助你的队友去做这个。用一个程序花一个星期去完成要手动去用一个星期完成的任务能让你懂得更多,并且有时候这是可重用的。
44

55
如果所有其他的途径都不能工作,为那些必须做这个无聊任务的人道歉,但无论什么情况,不要让他们去单独完成它。至少安排一个两人团队去做这个事情,并增强健康的团队协作来完成这个任务。
66

7-
Next [如何为一个工程获取支持](06-How to Gather Support for a Project.md)
7+
Next [如何为工程获取支持](06-How to Gather Support for a Project.md)

0 commit comments

Comments
 (0)