01-01猫吃了我的源代码[The Pragmatic Programmer]
2010-10-18 16:02
239 查看
The Cat Ate My Source Code
最大的弱点是害怕出现弱点
[The greatest of all weaknesses is the fear of
appearing weak--J.B.Bossut,Politics from Holy
Writ,1709]
实效哲学基石之一-对你自己负责对你的行为负责
,这包括你职业生涯中的所有行为,你的工程和你日常工作。一个实效的程序员掌管自己的职业生涯,他不害怕承认无知和错误
。无知和错误在编程中是不愉快,但这是难免的,即使在最好的工程中。尽管通过测试,好的文档编写,稳定的自动化,但情况还是变糟了;交付日期推迟;无法预期的技术问题。等等这些问题出现了,我们试图尽可能专业的去处理。这意思是说我们必须保持诚实和正直。我们为自己能力感到自豪的同时,也应敢于面对自己的缺点-不管是疏忽还是错误造成的。
负责[Take
Responsibility]
负责是你最赞同的事情。你承诺保证某件事被正确的完成,但你不可能直接控制它的某个方面。除了做好你分内的,你必须分析在你控制范围以外的会引起风险的情况。如果你接受对结果负责,当你犯错误或者判断失误是,诚实的承认并提供更多的选择。不要抱怨某些人或者某些事情,给自己找借口。不要抱怨自动售货机,编程语言,管理或者同事的问题。他们都负有责任,但现在你应该做的是提供解决方案,而不是借口。
如果硬盘坏了-那里保存了你所有的源代码-但你没有另外的备份,那是你的失误。告诉你的老板猫吃了你的代码不会得到你预期的结果。
Tip
3 Provide Options, Don’t Make Lame
Excuses
[提供更多的弥补措施,而不是蹩脚的理由]
当你试图向别人解释事情为什么不能完成,或者延迟,崩溃掉时;先停下来想一下自己想要说的。你可以对着显示屏里的橡皮鸭子或者猫说出你的心声,是否自己会觉得这些理由是合适的,还是愚蠢的。而你将如何向老板表述?
在自己心里想象下将要进行的交谈。别人会不会问你,你尝试过这种方法没?你考虑过另外一种情况没?你将如何回答?在你告诉别人坏消息之前,你是否有过尝试其他的方法?有时候,你只知道自己想要去说什么,所以还是不要自找麻烦。
不要找借口,而是提供更多的弥补措施。不要说无法完成,而是解释怎样去挽回残局。代码是否将被弃用?告诉他们重构的意义。你是否需要时间建模去寻找更好的前进方法?你是否可以引入更好的测试方法,或者自动化测试去阻止悲剧的再一次发生?也许,你需要更多的资源,不要畏惧说出来。
请先尝试冲洗你那蹩脚的解释-在说出它们之前。如果你觉得非要说出去,那么先告诉你的猫。
Challenges
试想一下,如果一个银行出纳员,一个自动取款机,或者一个文书告诉你一个无力的解释,你会如何反应?你会怎么看待他们的公司?
最大的弱点是害怕出现弱点
[The greatest of all weaknesses is the fear of
appearing weak--J.B.Bossut,Politics from Holy
Writ,1709]
实效哲学基石之一-对你自己负责对你的行为负责
,这包括你职业生涯中的所有行为,你的工程和你日常工作。一个实效的程序员掌管自己的职业生涯,他不害怕承认无知和错误
。无知和错误在编程中是不愉快,但这是难免的,即使在最好的工程中。尽管通过测试,好的文档编写,稳定的自动化,但情况还是变糟了;交付日期推迟;无法预期的技术问题。等等这些问题出现了,我们试图尽可能专业的去处理。这意思是说我们必须保持诚实和正直。我们为自己能力感到自豪的同时,也应敢于面对自己的缺点-不管是疏忽还是错误造成的。
负责[Take
Responsibility]
负责是你最赞同的事情。你承诺保证某件事被正确的完成,但你不可能直接控制它的某个方面。除了做好你分内的,你必须分析在你控制范围以外的会引起风险的情况。如果你接受对结果负责,当你犯错误或者判断失误是,诚实的承认并提供更多的选择。不要抱怨某些人或者某些事情,给自己找借口。不要抱怨自动售货机,编程语言,管理或者同事的问题。他们都负有责任,但现在你应该做的是提供解决方案,而不是借口。
如果硬盘坏了-那里保存了你所有的源代码-但你没有另外的备份,那是你的失误。告诉你的老板猫吃了你的代码不会得到你预期的结果。
Tip
3 Provide Options, Don’t Make Lame
Excuses
[提供更多的弥补措施,而不是蹩脚的理由]
当你试图向别人解释事情为什么不能完成,或者延迟,崩溃掉时;先停下来想一下自己想要说的。你可以对着显示屏里的橡皮鸭子或者猫说出你的心声,是否自己会觉得这些理由是合适的,还是愚蠢的。而你将如何向老板表述?
在自己心里想象下将要进行的交谈。别人会不会问你,你尝试过这种方法没?你考虑过另外一种情况没?你将如何回答?在你告诉别人坏消息之前,你是否有过尝试其他的方法?有时候,你只知道自己想要去说什么,所以还是不要自找麻烦。
不要找借口,而是提供更多的弥补措施。不要说无法完成,而是解释怎样去挽回残局。代码是否将被弃用?告诉他们重构的意义。你是否需要时间建模去寻找更好的前进方法?你是否可以引入更好的测试方法,或者自动化测试去阻止悲剧的再一次发生?也许,你需要更多的资源,不要畏惧说出来。
请先尝试冲洗你那蹩脚的解释-在说出它们之前。如果你觉得非要说出去,那么先告诉你的猫。
Challenges
试想一下,如果一个银行出纳员,一个自动取款机,或者一个文书告诉你一个无力的解释,你会如何反应?你会怎么看待他们的公司?
相关文章推荐
- 01-实用主义哲学[The Pragmatic Programmer]
- The Pragmatic Programmer
- 注重实效的程序员(The Pragmatic Programmer)ZT
- Addison-Wesley - The Pragmatic Programmer: From Journeyman to Master
- Programming Ruby: the pragmatic programmer's guide
- 注重实效的程序员(The Pragmatic Programmer)[转载]
- The pragmatic programmer: from journeyman to master
- The Pragmatic Programmer 之 DRY 原则
- Programming Ruby: The Pragmatic Programmer's Guide, Second Edition
- read the pragmatic programmer--chapter 4
- The Pragmatic Programmer 读书笔记之中的一个 DRY-Don’t Repeat Youself
- 注重实效的程序员(The Pragmatic Programmer)
- 读书《the pragmatic programmer》:如何做一个好的程序员
- The Pragmatic Programmer 摘要评注
- 程序员修炼之道--The Pragmatic Programmer
- read the pragmatic programmer -- chapter5
- 两篇文章 注重实效的程序员(The Pragmatic Programmer)
- Programming Ruby: The Pragmatic Programmer's Guide, Second Edition
- Joel和《The Pragmatic Programmer》给的建议
- 《The Pragmatic Programmer》摘要