目录

  1. DHH大神写的书
    1. “没时间”不是借口 (no time is no excuse)
    2. 赞同的错觉
    3. 打岔是效率的敌人
      1. 关于打岔的感想
      2. 工作日的效率问题

DHH大神写的书

DHH大神书的非技术类的书籍,不过我觉得大神写一些非技术类的比纯写技术更走心,更有指导借鉴意义。
大神在这本书里写的很多东西都体现了高效程序员的必备素质。
顺便,我总觉得我老板应该是看过这本书的,因为他运营公司的很多风格和这本书神似。。或者这本书里写的确实是比较在理,通理。

如果对DHH大神不了解的,可以自行科普一下
http://www.niugebbs.com/xiankelitina/783789.html

大神的主页
http://david.heinemeierhansson.com

我其实最崇拜的除了他技术牛外,还有超强的第二技能,职业赛车手,而且还长的超级帅,然后还是创始人和作家。。。

Ruby 是由日本电脑科学家松本行弘设计的,以简洁优雅闻名,而来自丹麦的 David Heinemeier Hansson(DHH)为 Ruby 语言开发了框架(Rails),让 Ruby 在全球爆发性成长,成为最受欢迎的网站后端语言之一。2005年被 Google 评选为「年度黑客」。他除了写程序,还是个赛车手,2012年参加过 Le Mans 24 小时耐力赛,2014年夺得冠军。DHH 也是项目软体开发公司 Basecamp(原名37 Signals)的合伙人。

程序员的另类境界:Rails创始人DHH驾驶保时捷赛车参加职业赛事
http://www.iteye.com/news/20392-DHH-driving-racing-car/

所以我觉得优秀的程序员绝对不是堆时间堆出来的,高效,不重复做事情,突破性思维是必要的。
并且并不是程序员只能苦逼的一直码代码,还是有时间可以发展第二技能的,所以也坚定了我跳好舞的决心

因为是非技术类读书笔记,所以是对书中某些触发我思考的点进行一些扩展,谈谈自己的想法,记录下现在的状态

“没时间”不是借口 (no time is no excuse)

这节看点我觉得对我最有深意的是动机和时间的关系。
书里提到:

当你拥有某种极强烈的渴望时,你就能挤出时间来— 不管你身上是否还背负着其他责任。

这句话我觉得可以用日常生活中很多例子来验证,比如很多人工作再忙,再没时间,结果发现他最近上映的电影一部没落,美剧没有没看过的。
上通琅琊榜,下知好先生。
每天的日常新闻基本都知晓,体育新闻,社会热点,天气,八卦,无所不知。
但如果聊聊看书的问题,基本都说现在太忙了,没时间看,一年都看不了几本。
腾讯的手游基本都试过,LOL每日必玩,PS4,XBOX一应俱全

那么问题来了,其实很多事情都大量消耗着人的时间,只不过人主观上接受去做这些事情,并且意识不到这些事情牺牲掉的时间成本。
再简单不过了,一部40集的电视剧,够看两三本书了吧。
所以我觉得这句话很在理,人其实是有时间做很多更有意义的事情,主要是看怎么选择和坚持了

赞同的错觉

书中提到:

商业世界中充斥着各种无用的文件,这些文件出了浪费人们的时间外,一点意义都没有。没有人读的报告,没有人看的图标,无法完成的细则,这些东西做起来颇费功夫,但是人们一回头就能把它给忘了。

基本上这节都是讨论这个论题的正确性和应该怎么做。

这激发我的思考,我是比较喜欢写东西的人,在公司里用confluence写wiki,写report,写design文档,管理项目喜欢写JIRA
这确实浪费我不少时间,但是会不会只是造成我表面上很专业的错觉?
仔细回想自己写的东西,确实自己都很少看。并且随着项目成长,时效性也很差。
但是我不全认同这一点,我觉得日常总结还是需要的,写作的过程也是一次很好的反思机会。

总之,对于这一点,是得好好斟酌一下,时间花掉就花掉了,如果做的并没有意义,那应该用它做更有意义的事情,比如多琢磨琢磨代码。

打岔是效率的敌人

我真想把这节原封不动的抄上来,不过这样会不会不太尊重作者。
但是看到网上摘引这一节的很多,那么我也借鉴一下吧。

如果你总是为了工作而熬夜或者牺牲周末时光的,其实并不是因为你又很多工作要做,而是因为你的工作状态不佳。而工作状态不佳就是由打岔引起的。
仔细想想:你大部分工作是什么时候完成的?如果你和大多数人一样,选的是夜里或凌晨,那就绝不是巧合,这些时段通常都是身边没人的时候
下午两点,人们通常自爱开会或者回复邮件,或者与同事聊天。有人会拍拍你的肩膀,也会有些临时的小集会,这些看上去好像都是无害的,实际上这些行为在腐蚀你的生产力,这都是打岔。一旦你的思路被打断,你的工作就完不成
打岔事件吧你的工作日切割成一段一段的。5分钟后你又一个电话,15分钟后你得去午餐,不知不觉就到了下午5点,而你只有一两个小时能够不被打扰地去工作。在这种不断的开始、暂停开始、暂停的状态,你根本没时间做正事。
反之,你应该达到这种旁若无人的境界。长时间的单独工作能使你达到最高效率。当你不再为了不同的任务去切换思维时,你能干完一整车的活儿。
要达到这种旁若无人的境界是需要时间的。而且还要不被打扰,就像快速动眼睡眠一样(一种多梦的钱睡眠状态):人不会直接进入快速动眼睡眠状态,你得睡着才行,一旦在这种浅睡眠状态中受到打扰,你就彻底醒过来,又得重新入睡。快速动眼睡眠是真正神器的梦幻睡眠时段,于此同理,人们处于那种旁落无人的境界时,效率也会出去的高。)
当然,你不必非得在凌晨去享受这种灵感迸发、精神高度集中的独立境界。你可以再工作中定下规矩,比如上午十点到下午两点捡,任何人不得出岗闲聊(午餐时间例外)也可以把整个上午或者整个下午射程你自己的独立时间。或者把“休闲星期五”改成“噤声星期三”,你要做的是保证整个工作时段完全不受大绕,缺保彻底消灭以任何借口扼杀生产力的打岔。
就这样一直下去,一个成功的独立时段意味着戒掉八卦瘾。在整个时间段内,封锁即时聊天攻击,挂掉电话,关闭邮箱,叫停会议。唯一能做的就是闭嘴,干活。你会惊讶于自己居然这样能干。
同样,当你需要与人合作时,就采取被动交流工具,比如用电子邮件这种不需要立即回复的交流方式,去替代哪些会打断别人工作的方式,比如电话、开会之类。这样一来,别人能在方便的时候回复你,而不是被迫放下手头的事情来回复你。
你的生活被各种干扰包围着,只有你自己自己能去发动反击。
– 摘自《Rework重来》

我注意观察过我身边高效厉害的程序员,基本都有这一特质,上班时间很少主动打岔,别人在身边聊什么根本不闻不问,安心做事情。
其实我觉得DHH能有多重身份,他肯定这一点也做的特别好。

关于打岔的感想

不过打岔确实太影响了,并且后来我还找到了科学依据,这个依据就是思考阀值
关于思考阀值的讨论,参见以下下面这个文章,建议仔细看看
https://www.zhihu.com/question/38588444

思考阀值就是启动或维持一件事情所需要动用的脑细胞数。
思考阈值”之上代表的是“有效的思考”,而在阈值之下,则是“无效的思考”。

虽然我没在其他地方看到更多的讨论,但是我觉得就我自己的体验,这个是确实存在的.
我们把这个抽象的概念具体化以下,假设总阀值是10:

  • 假设我做一个帮别人传文件的事情,我需要找到文件,然后选个工具传给他,这个事情很简单,假设阀值是1,基本不需要思考就可以做
  • 需要写一个工具,能从DB找出最近一周登陆过的用户,用户表里有最后一次登陆的时间信息,这个任务对于已经具备数据库知识和脚本知识的人来说可以是3,对于新手可以是5,对于新手,如果大脑不能进入状态,达到6的状态,无法进行这件事情
  • 需要在一个复杂的项目上做一个功能,当前模块的框架很复杂,并且改动涉及到需要了解到的代码量很大,这种事情是程序员的典型场景,需要了解业务场景,需要了解各种case,周边代码,框架等,假设思考阀值是8,那么不达到8基本无法展开,或者在8的时候,正在理清一些code和逻辑,但是突然被开会打断半个小时,回来又得重新积累思维力,重新理清。

所以从这一点来说,打岔是非常可恶的。我们要堤防被打岔,优雅的回绝并不紧急的时间,并且把一切im软件调成非提醒,防止被打岔

工作日的效率问题

说实在的,我真是做不到一周5天工作日都非常高效,可能有那么几天非常有状态,但有时又莫名其妙的懈怠,磨洋工不像干活。
我觉得上班时间还是得逼着自己达到最高效,最高输出,因为工作日做的更多,实际上是给自己业余积累更多的时间,能做更多自己想做的事情。
所以,如果不被打岔,那就不应该不高效
如果觉得提不起干劲,我觉得可以多做做一些重要的事情,在高效能人士的7个习惯里,也提到,能经常有时间做重要的事情的人,会更有发展。
如果一直忙于紧急的事情,其实只是被动型的高效,职场人士基本都具备这能力。
但是如果在无紧急时间时还能高效的做重要的事情,才是差异化的体现。

未完…先写到这里,睡觉。。。。ZZZZ