2010年1月31日星期日

本星期的碎碎念

google_reader_week4 附图这是我这周的google reader的记录,已经坚持“每周五天,信息斋戒”4周了,赶快记录一下,肯定一下自己。应用积极心理学,将开心的事情,需要感激的事情,你被“自己”或其他人肯定的事情记录下来,这是一个获取幸福感的小窍门。

 

 


最近加入到一个师兄的项目,项目的难度对我而言比较大,但是当完成了一些部分,将代码上传后的幸福感和成就感真的是非常大的,以下我最近的一点小感悟:

    • 进入一个新的难度比较大的项目的时候,必须进行更有效的自我管理,还有必须学会更好的沟通(这个星期和师兄进行了很多沟通,他不愧是博士,在一些技术交流中学到了非常多的技术经验和思维方式,在有效的沟通中,也会有比较快的提高),然后找到属于自己的位置
    • 必须要承担尽可能多的责任,只有勇于承担责任,才会被赋予更大的责任,其实我们每个人的身上都蕴涵着极大的潜能,如果可以向一些困难的任务挑战,就可以不断打破我们内心的自我限制,充分发挥出自我潜能。
    • 当这个项目需要的能力远超过自身的能力的时候,应用积极心理学告诉自己,其实是一件好事,拼命让自己达到完成这个项目的能力。我很喜欢的一句话:"本周要努力得感动了自己","拼命","努力"其实没有什么标准,对我而言,最好的标准就是“是否能感动自己”。
    • 如果仔细观察每天我们花费时间的情况,就会发现其实我们每天都有很多空当,如果善用也会有很多的收获的。
    • 当遇到技术瓶颈,技术难题的时候,比较好的办法就是,先将问题划分成一些小部分(用上纸笔),再问问自己,看看是否自己可以把这些问题都说出来,然后将所有所需的知识点补齐,资料找齐,最后再根据情况对划分好的小问题进行各个击破。

 

 

继续碎碎念,我不谈经济,政治,来谈谈文化。只谈一点如何抗拒对“强势文化帝国主义”。随便写点什么,思维比较混乱。

这里当然说的是美国啦,美国文化殖民很恐怖,举一个例子,德国已经几乎沦陷,青少年看的都是MTV,VIVA(也属于美国MTV旗下),小朋友看的是迪斯尼卡通。新的一代听的都是美国流行Hip Hop,R&B,德国的音乐排行榜几乎被英语歌垄断,连选秀节目,选手唱的几乎都是英文歌,电影院里放映的几乎都是好莱坞电影... ...

如何对自己的文化更好的传承和发扬,找回对自己文化的自信,自豪和爱戴,这是很多国家当前面临很大的问题,当我们在不停的谩骂,调侃,批评,华语电影,音乐的时候,其实也应该庆幸,就是这些东西在抵御着强势文化帝国的侵袭。现在很多人都缺乏一种对自己文化的自尊和自信,如果能发挥出文化自信,这就是抗拒“强势文化帝国主义”的最好策略。

2010年1月23日星期六

继续削减不必要的事,提高时间使用效率

google_reader_week_3个人认为时间管理的关键第一点就是,就要先削减不必要的事,第二点是继续削减不必要的事,第三点才是使用一些方法提高时间的使用效率。附图是我最近google reader的阅读记录,我继续坚持了“每周五天,信息斋戒”,已经第三周,感觉真的不错。今天想讨论一下如何继续削减不必要的事,和提高时间使用效率的方法。

 

 

继续削减不必要的事:

#减少无意义的人际交流

关于这点,无需多言。

 

#减少无意义的搜索

看了一篇报道,探索系统的燃料是神经递质多巴胺,所以当我们搜索出什么的时候,那感觉非常好,感谢多巴胺吧——就像可卡因、安非他命这些毒品带来的刺激一样。几分钟就能完成的事,结果却发现不知不觉已经Google或百度了一个多小时? 这就是无意义的搜索,这个行为已经超出了我们搜索的本质目的,而是一种非常厉害的“杀时间的方法”。


#减少SNS(社交网络服务)的使用

滥用SNS这已经不是一种“杀时间的方法”,而是一种“时间自杀”。常常看到一些朋友“深陷”开心网,facebook也许还有豆瓣等等。请别过分地打发时间。一些时间管理的书谈到所谓时间管理的大智慧就是“取舍”,我们面对SNS的使用就是一种“取舍”,因人而异,请做出一些“取舍”。哈,也许可以采用“每周五天,SNS斋戒”这种比较极端的方法,我就是使用这种极端的方法。

 

提高时间使用效率:

使用一些方法提高时间使用效率,工作效率,方法很多,因人而异,我的原则就是选择容易坚持的手段,看一些书了解一些关于时间管理理论原则与方法后,结合个人生活实践进行使用。这里提供一些个人认为比较简单,经个人实践,认为容易实行的方法。

#把小事一件一件完成

切批萨的方式,将大任务细分,掌控时间进度是很重要的,每天花一点时间,把小事一件一件完成,过了一阵子就会发现,整个项目或任务已经做完了,自己也提高很多,这就是所谓积累时间的力量。 

 

#优先事务管理系统

简化生活,因为过于忙碌的时间安排会让人产生焦虑的感觉。使用所谓的“优先事务管理系统”,优先专注于工作和生活的最重要的事情或任务还有一些“关乎未来”的工作或学习。

 

(以下方法针对IT从业人员,其他行业的朋友可忽略以下内容)

#安静的工作环境

网上很出名的The Joel Test的第八条 Do programmers have quiet working conditions?程序员是否有个安静的工作环境?----请找个可以集中心力的地方,这也是时间管理的一部分,好的环境就会提高工作效率,提高时间利用水平。

 

#工欲善其事,必先利其器----使用最好的硬件软件,提高工作效率

The Joel Test的第九条 Do you use the best tools money can buy?是否在使用金钱可以买到的最好的工具?

关于软件

常常问问自己我是否是最高效率的做这件事。应该学习通过shell进行编程, 用它构建复杂的宏命令,用来完经常进行的各种活动。Linux本身提供了很多“锋利的小工具”,首先就是学会使用它。Windows下也可以使用一些很好的小工具以提高效率,例如Everything来搜索文件,google desktop来搜索文件内容。

请使用金钱可以买到的最好的软件工具,例子我就不举了。

关于硬件设备

sony_vaio_new_hni高科技行业最贵的是工程师,程序员,而硬件软件相对人的时间成本来说是非常便宜的(相对于生产力的提高,在硬件上的投入是相当划算的)。譬如,我工作的地方就依照几乎按摩尔定律给员工换电脑,也就是大概18个月换一次,每次都换顶级配置的台式电脑。这个星期刚刚得到一台新的Sony笔记本,以方便我们在家里工作(在家工作常常会更有效率),比较夸张的是这台笔记本居然有8个G的内存,附图是这台笔记本的照片,先照一张全新的样子,Windows 7的评分,哈,比我家的台式机还好非常多。

  sony_vaio_leistung

2010年1月16日星期六

坚持“每周五天,信息斋戒”--第二周心得

google_reader_trend_2 个人认为我们做时间管理,就要先削减不必要的事,生活中有一个的不必要的事就是“过度的信息接受”,它们就像“时间窃贼”或“时间黑洞”一般偷窃或吞噬我们宝贵的时间。我所提倡的“每周五天,信息斋戒”其实是一个比较容易坚持和相对可行的手段。只要将注意力放在行为上,就能坚持下去,我已经坚持了两周,感觉很好,这一周我只接受了少于2个小时的信息,但是在这两个小时集中阅读我也接受了很多信息,“集中阅读”有很多好处,例如当积累了一周的rss总共几百篇的时候,我们就会进行真正的“选择性”(而不是一般性的相对盲目)的阅读,这在阅读高质量文章的同时,也极大的减少了我们的无谓阅读量,同时节约了宝贵的时间。附图为我的google reader的阅读记录,每周就进行一次集中的阅读。

 

最近翻阅了胜间和代《时间投资法》一书,其中也提到了相同观点----“时间管理等于削减不必要的事”。这本书中提到了一些时间管理策略,很值得推荐,例如,每天尝试新的方法,选择容易坚持的手段,关注“行为”而不是“目标”,一定要测评结果。还有“选定“不必做的事”比选定“需要做的事”更重要”。“用“胡萝卜加大棒”制造动机”。“奖励自己,要用轻松好操作的形式,并使有效的时间管理手段制度化”。

 

有时候喜欢翻翻豆瓣的各种小组,很多小组的名字很有创意,这对提高自己的思考维度还挺有帮助的。 我认为小组还有一个作用就是提供一个“个性化”标签。也许很多人,加入小组很多情况并不是为了讨论问题,而是为自己贴上个性化标签。因此我也成立了一个小组“每周五天,信息斋戒”,地址为:http://www.douban.com/group/209222/。欢迎大家加入。给自己贴上这个标签,告诉大家“我要开始信息斋戒运动,现在开始掌控自己的时间”。

 

这个星期对时间管理还有一点小心得,这里和大家分享:
其实我们可以试着最大限度地利用每一点空闲时间,然后使用它们去做现在对我们最重要的事情,或者对将来有很大影响的事情或任务(例如进一步地进行一些深入的学习)。这样其实是挺有用,不要看短短的几分钟时间,可以进行一些很简单的任务,做什么都行只要和现在手头上重要的任务或事情有关就行,这常常会给我们的复杂的任务带来很多意想不到的突破。

2010年1月13日星期三

Notepad++,Eclipse和Visual Studio 2005常用快捷键对比

NP_Eclipse_VS_images 因为常常使用Notepad++,Eclipse和Visual Studio 2005来写程序。三个都有各自定义的快捷键,因为Notepad++最经常使用,所以是常常在使用Eclipse和Visual Studio 2005和Notepad++的快捷键搞混,很头疼,今天花几分钟做一个比较表格。

 

 

 

 

 

Notepad++

Eclipse

Visual Studio 2005

打开Find / Replace 对话框

Ctrl+F, Ctrl+H

Ctrl+F

Ctrl+F

复制当前行

Ctrl+D

Alt+ Ctrl+↓

Ctrl+L (编辑.剪切行)

删除当前行

Ctrl+L

Ctrl+D

Ctrl+Shift+L

上下行交换

Ctrl+T

Alt+↓, Alt+↑

Ctrl+Shift+T

找下一个

F3

F3, Ctrl+J

F3

找上一个

Shift+F3

Shift+F3, Ctrl+Shift+J

Shift+F3

在文件中找

Ctrl+Shift+F

Ctrl+H

Ctrl+H, Ctrl+Shift+F

到前一个书签

F2

Ctrl+Tab

Ctrl+Tab

到下一个书签

Shift+F2

Ctrl+Tab

Ctrl+Tab

打开run对话框

F5

Ctrl+F11

F5:启动;Ctrl+F5:开始执行(不调试);

打开CallTip列表框,代码助手

Ctrl+Space

Ctrl+Space

智能感知:Ctrl+J, 列出成员Ctrl+Shift+空格

加入Space

Tab (selection of several lines)

Tab (selection of several lines)

Tab (selection of several lines)

移除Space

Shift+Tab (selection of several lines)

Shift+Tab (selection of several lines)

Shift+Tab (selection of several lines)

全屏/最大化当前的Edit或View

F11

Ctrl+M

Shift+Alt+Enter

折叠全部

Alt+0

Ctrl+/(小键盘)

Ctrl+M,Ctrl+O

展开全部

Alt+Shift+0

Ctrl+×(小键盘)

Ctrl+M,Ctrl+M

变为小写

Ctrl+U

Ctrl+Shift+X

Ctrl+U

变为大写

Ctrl+Shift+U

Ctrl+Shift+Y

Ctrl+Shift+U

块注释/消除注释

Ctrl+Q

Ctrl+/

Ctrl+K+C,

Ctrl+K+U

关闭当前Editer

Ctrl+W

Ctrl+W

Ctrl+F4

编辑.选择当前字

   

Ctrl+W

2010年1月9日星期六

每周五天,信息斋戒运动


google_reader_tend这个星期我开始了“轰轰烈烈”的“每周五天,信息斋戒运动”,开始这个活动是受到蒂莫西·费里斯的《每周工作4小时》一书的启发。

 

  “养成和保持低信息食谱的习惯。信息的消耗能力显而易见:信息消耗了接收者的注意力。因此,大量的信息造成了有限的注意力的分散,也产生了在过多信息源中合理有效的分配有限注意力的需要。”

“就如同现代人吸收了过多的卡路里和没有营养价值的卡路里一样,信息工作者也从错误的来源吸收了信息数据。输出--大量的输出是生活方式设计的基础。要增加输出,只有减少输入。大多数信息耗时、消极,与目标无关,也在你的能力之外。”


当你把信息之门关上的时候,地球照样转动,更不用说终结。要认识到这一点,最好采用"邦迪"之法而且立即开始:一周的传媒斋戒。戒掉信息有时非常像戒掉冰淇淋。"我只想再上网看一分钟"就和"哦,我只是再吃一勺"一样寻常。必须快刀斩乱麻。”----《每周工作4小时》

 

这五天里我坚持以下原则,(《每周工作4小时》里的原则加入我的一点改进,你也可以根据自的情况进行改进),这个原则是1.0版的:


每周五天,不接触任何报纸、杂志,不上任何新闻门户网站,不读RSS等 等,不接受任何信息。

只进行有意义的阅读,如一些比较好的书。

不看任何电视,视频,最多每天晚上可以看一点“纯娱乐性”节目。

 

其他两天,总共只能接触1到2小时的信息,看多少是多少,如果时间到了,立即停止接触任何信息。

 

坚持了这个“信息斋戒运动”后,我发现,我每天的时间变多了,不接触任何信息,对我的生活没有任何改变。但是我还是每天坚持看一些书,看书比读各种新闻,信息好多了,可以系统地完整地进行真正的知识和深层信息的摄取。

这个星期四和星期五,我休息两天在家,有了大块的时间,很痛快,看了很多书,有电子版的,也有纸质的,把身边有的大前研一的书系统地读了一遍,对我很有触动,转变了我一些思想和观念,也提升了一些世界观,值得推荐一读。这个星期也读了我很久以来很想读的书如《异类》和《美元大崩溃》。下星期就无法拥有那么多时间看书了,下星期要开始项目的收尾阶段。

 

下星期我继续我的“每周五天,信息斋戒运动”,并执行的1.1版规范,在1.0版上加上以下一条,这样可以减少更多无谓时间浪费:

 

上网仅仅读电邮和回电邮和进行一些和工作有关的活动(例如使用google的在线工具,进行一些资料搜索等等),其他无益的网络活动尽量减少。

 

今天的附图为我google reader的阅读记录,看吧,1月4日到8日,5天没有阅读任何博文,这也算是我的“每周五天,信息斋戒运动”的第一个小小的成功的记录吧。

2010年1月5日星期二

扫除你的“垃圾代码”

背影1 最近忙着充电,写读书笔记,很久没写一些关于技术的东西,今天想谈一下最近的编码过程中的一个小感悟。七条广为人知的评判代码质量的基本原则:内聚性、松耦合、零重复、封装、可测试性、可读性以及单一职责。但是,长时间的编程过程中,因为自身长期以来积累的“恶习”,在编程过程中常常并不是真正注意并遵守这些原则。最近在重构一个我很久以前用C++编写的大概1万行左右的小项目,虽然代码整体架构还算OK,这次重构不算是伤筋动骨,只是一些小手术--很多的工作在想尽办法消除代码中的重复,在重构的过程中,发现自己写的“垃圾代码”非常多,真是很“汗颜.....”。

这次重构的过程中使用了一些《软件开发沉思录》里的关于“用精炼的代码表达出简单而优美的抽象”的一些规则,现在重构结束后总算是深有感触,这些规则虽然看似简单,但是如果身体力行有一定的难度,当坚持大部分规则后(暂时实在无法坚持所有规则),代码的质量和可读性会有一个质的飞跃,这也非常大的减轻了后面测试的压力。现在想想,我们给代码测试人员留下的很多bug其实就是我们我们编码“不规范”(没有注意“精炼的代码”的重要性,也就是没有重视编程“简单性”原则)造成的。

 

这里对书中这九条规则做出简单的摘要,和大家一起分享:

规则1:方法只使用一级缩进

一个常见的原则是将方法的行数控制在5 行之内。如果每个方法都只关注一件事,而它们所在的类也只做一件事,那么你的代码就开始变化了。由于应用程序中的每个单元都变得更小了,代码的可重用性开始指数增长。一个100 行的,肩负五种不同职责的方法很难被重用。如果一个很短的方法在设置了上下文后,能够管理一个对象的状态,那么它可以应用在很多不同的上下文中。在这样短小的代码段中查找bug 通常会更加容易。

规则2:拒绝else关键字

适当地使用多态;

规则3:封装所有的原生类型和字符串

规则4:一行代码只有一个“.”运算符

规则5:不要使用缩写

缩写会令人迷惑,也容易隐藏一些更严重的问题。尽量保持类名和方法名中只包含一到两个单词,避免在名字中重复上下文的信息。

规则6:保持实体对象简单清晰

这意味着每个类的长度都不能超过50 行,每个包所包含的文件不超过10 个。代码超过50行的类所做的事情通常都不止一件,这会导致它们难以被理解和重用。小于50行代码的类还有一个妙处:它可以在一屏幕内显示。

随着类变得越来越小,职责越来越少,加之包的大小也受到限制,包中的类越来越集中,它们能够协作完成一个相同的目标。包和类一样,也应该是内聚的,有一个明确的意图。保证这些包足够小,就能让它们有一个真正的标识。

规则7:任何类中的实例变量都不要超过两个

不断应用这条规则,可以快速将一个复杂的大对象分解成为大量简单的小对象。

规则8:使用一流的集合

任何包含集合的类都不能再包含其他的成员变量。每个集合都被封装在自己的类中,这样,与集合相关的行为就有了自己的家。

规则9:不使用任何Getter/Setter/Property

如果可以从对象之外随便询问实例变量的值,那么行为与数据就不可能被封装到一处。

其实以上的9个规则就是关于“编程简单性”一个小总结,努力地拥抱“简单性”,那么开发过程会变得更愉快,代码质量提高了,测试的花费就会少了很多,其实项目的整体开发速度也会相应的提高。

PS:今天的配图,是我最近在网上看到的,个人很喜欢的一张照片,感受阳光,简单,舒服,一切都恰到好处。

2010年1月4日星期一

读书:Nnil Fiore《战胜拖拉》 2

Chapter 5. 克服行动的障碍 

三大障碍:对某项任务无法做、做不成功与完不成的恐惧。 
即时习惯策略的工具:(1) 三维思维与逆向日程,用以战胜无从下手的感觉;(2) 忧心处理,用以应对对失败和缺憾的担忧;(2)坚持不懈的开始,用以应对对完不成任务的担忧。

工具一:三维思维和逆向日程 
应避免的几种情形:(1)坚持要知道从哪里着手开始才是正确的;(2)不在项目进行过程中给自己设定时间学习、在每个步骤中建立自信并向别人寻求帮助;(3)自责于仍处于开始状态的现实,并且告诉自己:“我应该已经完成了。”

Chapter 6. 逆向日程表 

逆向日程:逆向日程从项目的整体最后期限开始,然后一步一步地往回推演,知道你现在所处的能够集中精力着手开始的地方。

逆向日程表开始时,以30分钟为目标。

制度:无忧休闲。高质量工作。逆向日程表。

使用逆向日程表(逆向日程表。可以给各种活动选用不同的颜色。):

1. 只安排下列时间

    a. 先前已经决定好的时间,比如吃饭,睡觉,开会。

    b. 自由时间,休闲,休闲阅读。

    c. 交往,和朋友吃午饭,晚饭。

    d. 健身运动。

    e. 常规事物,比如沟通,上课。

2. 只有当你完成了至少30分钟之后,再把有关项目的工作列入逆向日程表当中。

3. 只对哪些代表着至少30分钟不间断工作的工作时间段予以好评

4. 在每个时段的工作结束之后,奖励自己休息一次,或者是换到另一件更为愉快的工作任务中

5. 跟踪每一天,每一个星期用于高质量工作的时间。

6. 每个星期始终流出一天的时间,用于休闲和处理任何你希望处理的杂务。

7. 在决定前往参加某项休闲活动或者公益活动之前,拿出仅30分钟的时间用于项目中的工作。

8. 集中于开始。(把所有有关完成的思想都去掉,换成对可以何时,何地,以何事开始的考虑。)

9. 着眼于小处。(仅以30分钟的高质量专注工作为目标。)

10. 保持开始状态。(忘记工作的完成。)

11. 别在最后倒下。

Chapter 7. 喷发状态

高效而专注的状态: 
(1)多用大脑:你要进行创造性的工作,那么大脑中的批判与逻辑的功能(通常被归因于左半脑)就必须暂时搁置起来,让创新的功能(通常被归因于右半脑)引发你所需要的创意与灵感。 
(2)只是你的初稿:时刻提醒自己这是初稿,不拿去和理想、终极的目标进行过于苛刻的比较,这样有助于克服因完美主义而造成的拖拉。 
学会集中注意力:进行专注性练习 
(3)专注性练习:(1) 放松:端坐在椅子上,脚掌平放在地面上,双手搁在大腿上,注意力集中在呼吸,深吸一口气,屏住一段时间,再缓慢吐出,如此三次,想象自己的紧张感随空气吐出了。(2)躺下:注意力转移到椅子上,让自己瘫倒,只让椅子支撑自己,放松所有紧张的肌肉,把注意力转移到双脚上。继续呼吸,呼出残余的紧张感,尽量放松,让身体赐予你更多的轻松和支持。(3)眼睑:继续放松,感觉到眼睑的沉重,让它缓慢滑下,当你闭上眼的时候,让放松感向下流动,充盈于整个身体。(4)自我对话:让过去消失(深呼吸3次,过去对于工作的看法、刚刚做的事情、一直告诉自己该做或不该做的事情,你的身心不再被过去牵绊);让未来消失(深呼吸3次,不可预知的后果、对未来工作和最后期限的焦虑,你的身心不再被未来牵绊);集中于当前(深呼吸3次,给自己积极的心理暗示)。 
(4)将喷发状态融入计划

Chapter 8. 对进展进行微调

(1)计划中的倒退:能够帮助反省 
(2)弹性与刚性:(1) 弹性:恢复的能力,从不如意和挫折中迅速恢复,随时准备调整;(2)刚性:决心、控制和挑战三种人格品质的结合,抵抗和避开潜在危险的能力; 
(3)集中注意力——克制杂念:杂念至少存在5种类型:(1)强烈的情绪:这是值得立即关注的,抽出十分钟思考,并处理它。(2)危险的警示:建立起安全网,把威胁清除掉,减轻对压力的反应,减弱它让人分心的警示信号;(3)想着“要做的事情”:突然蹦出来的杂事,将它记在记事本上,等高效率工作完成之后,在做这些杂事当作奖励。(4)逃避现实的幻想:记录下来,等工作完成之后对自己的奖励,记得推迟满足感的能力。(5)模糊的创意:记录下来,或者让它自由发展。——综上:通过辨清和记录这些杂念,能最大程度降低你工作中断的可能性。 
(4)精神演练和预先设计 
(5)有效目标设置:要有能力放弃那些在近期内不可能实现或者开始着手去实现的目标,从而能够专注于当前某个可以实现的、能给你带来成就感的目标。记住,你是目标的主人;不要让不现实的目标成为自我批评,并且把自己当成一个拖拉者的原因。作为一个高效者,你知道哪些目标需要全心全意地去追求,哪些目标需要不屑一顾地放弃。 
(6)避免受挫:保持一种刚性以处理任何目标实现的过程中必然出现的挫折:(1)认清拖拉的付出;(2)自由选择整个目标;(3)树立实用且现实的目标;

Chapter 9. 和拖拉者一起生活

(1)引入承诺,而不是要求顺从。 
(2)专注于开始,而不是专注于结束。 
(3)给予赞扬,而不是批评。 
(4)清晰陈述你的优先事项;果断;回报要公平、频繁;给予建设性意见。

2010年1月3日星期日

读书:Nnil Fiore《战胜拖拉》 1

战胜拖拉读到这本书时,真是爱不释手。我就有拖延症,看了这本书后,才了解到,其实拖延本身只是一系列心理问题的结果。其实,拖延是一种逃避方式,让我们可以暂时远离痛苦和压力。但拖延是极度有害的,去战胜它吧。

看完这本书后,正如书中最后一节所说的,现在我也正试着,“实践本书中的技巧,对它们做一些调整,以适应自身的风格和具体环境。保持开放的心态,保证用即时习惯策略提供的新工具去替换旧有的的拖拉习惯和不太好的工作成绩。把即时习惯策略作为自己的助手,期待对工作拥有一种积极的态度,摈弃拖拉的毛病,经受得起挫折,并拥有一种全新的作为高效者的自我身份加以认知。”

话不多说,以下是部分读书笔记,因为记录比较多,为了提高可读性,这里分两次给出:

 

 

Chapter 1-2. 为何拖拉, 拖拉是如何进行的

能够让我们分散注意力的东西越来越多。把自己从一个拖拉者变成一个工作生活实现平衡的高效者。

那么,拖延的根源是什么呢? 因人而异。包括自卑、完美主义、对工作的负面认知、自我认知不对、无效目标设置、模糊的时间观念、容易放弃的精神等等。 

对于拖拉的原因之一,最严厉的批评者就是自己,内心的冲突造成恐惧和不安全感。要把注意力引导到手头的工作任务中,而不是对自己的能力和价值提出疑问。

要系统的利用即时习惯策略。

我们之所以会拖拉是是因为:当我们把自己的价值与工作等同起来是,出于保护性的防卫心理,我们当然不愿直面挑战并担当风险。如果你相信对你的工作的评价即是对你本人的评判,那么求全责备和拖拉就成为一种自我保护的必要形式。

拖拉常被用来表达憎恨:对上司、当权者的憎恨。
拖拉常被用来抵御对失败的恐惧。
拖拉常被用来逃避对成功的恐惧。

记下花费时间的方式,将会使你注意到许多浪费掉的时间段。

建立安全感:走出拖拉的第一步。

遵循多数成功人士的榜样,你可以摔倒多次,一次次地使用你的安全网使自己重新振作起来,继续为下一次成功而努力。有一张把你兜住的安全网,失败与过错都不能阻止你,因为你不会让它们带走你的自我价值感和采取行动的动力。

Chapter 3 进行自我对话 

反效率的信息:(1) “不得不”——压力信息(2)“应该”——抑郁信息
选择的力量:(1)选择的力量(2)从抵触到承诺(3)学会说“不”
 

发现并使用选择的力量: 每当你发现自己在某个项目上失去干劲时,就是你的思想里找一找隐藏着的“不得不”,然后就在那一刻做出决定,要么是欣欣然接受它,接受它本来的样子,而不是你认为应该如何的样子,要么是放弃他,由你选择。    

拖拉者区别于高效者的五种自我陈述:

拖拉者 高效者
我不得不做 我选择做 
我必须完成 我什么时候开始
这个项目大而且重要 我能走出一小步 
我必须做到十全十美 我完全是个凡人 
我没时间玩 我必须花时间玩

 Chapter 4. 无忧休闲,高质量的工作 

作者关于在加州伯克利大学博士生的研究,令我很有兴趣。书中谈到: 玩得越开心,工作效率越高。

博士生中,进步很快,很快完成论文的人,对于闲暇时间也都很专注和投入。对他们而言,自己的健康和休闲都是很重要的事项,也是高质量完成论文这个计划中不可或缺的一部分。他们必须几乎是天天游泳,跑步或者跳舞。他们必须每个星期都和朋友聚几次餐。从休闲这个词的最初意义上讲他们真的是“重振”了。通过“重振”,他们一直保持着对项目没星期花费15,20或25个小时高质量时间的动力和兴趣。他们的生活是充实的。他们不认为工作对自己有任何损害,相反,一心一意地工作与一心一意地休闲,在享受人生方面是密不可分的。他们现在已经是在享受生活,而不是在等到工作完成之后再去享受。

我们拖拉的原因之一,是因为我们害怕一旦开始工作,就再也没有时间去休闲,工作会剥夺我们玩耍和享受生活的权利。无忧休闲策略强烈要求你在每周的计划中都安排进休闲活动,以此提供一条解决问题的方法。把休闲当成生活中的一个优先事项,是学会战胜拖拉的一个重要部分。

无忧休闲在工作与玩耍之间建立起联系,其中,它们相互推动着各自质量的提高。

2010年1月2日星期六

读书:Kent Beck 《Test Driven Development》

书评:

生动简单的例子和清晰详细的解释分析,读这本书时绝对不会感到有什么困难。个人认为,其实不用把这本书当成一本纯粹的技术书来阅读,大可以当成一本改变思考方式的技术八卦看看,也许在开发中你还是不会使用TDD(test-driven development),但是用一种极为轻松的方式系统地了解一下TDD,也是大有益处的。
如果只是想单纯地了解一下TDD(粗浅了解一下TDD的实现步骤,以及它充满吸引力的优点),那么看看第一部分(Section I: Money Example)就可以。如果正在进行TDD,或已经有了一些TDD实践,那么可以看看这本书的第二,第三部分,这对TDD的在项目中的具体实践和对提高TDD的认识会很有帮助。
看完这本书也改变了我一些固有印象,其实TDD不是绝对和极限编程一样。书中有一句话令人印象深刻:TDD is an awareness of the gap between decision and feedback during programming, and techniques to control that gap.
书中常常提到The goal is clean code that works. 我非常赞同,其实不管使用什么选择的开发策略(或者是否认可使用TDD,我的很多朋友就不是很认可TDD),其实我们的目的都是写出“整洁”的代码得到使我们的软件在质量和产出方面,得到可观的改善。

读书笔记:

简单地记录一下本书中关于TDD的一些概念:

编写TestCase(不可运行) --> 实现TestCase(可运行) --> 重构(重构)

1. Red—write a little test that doesn’t work, perhaps doesn’t even compile at first

2. Green—make the test work quickly, committing whatever sins necessary in the process

3. Refactor—eliminate all the duplication created in just getting the test to work Red/green/refactor. The TDDs mantra.

TDD的节奏大概就是:

1. Quickly add a test

2. Run all tests and see the new one fail

3. Make a little change

4. Run all tests and see them all succeed

5. Refactor to remove duplication

一般而言TDD的周期就是:

• Write a test

• Make it compile, run it to see it fail

• Make it run

• Remove duplication

如果我们读完这本书,其实我们,可以开始,哈:D

• Start simply

• Write automated tests

• Refactor to add design decisions one at a time