软技能::代码之外的生存指南

职业

  • 你所能犯的最大错误就是相信自己是在为别人工作。这样一来你对工作的安全感已然尽失。职业发展的驱动力一定是来自个体本身。记住:工作是属于公司的,而职业生涯却是属于你自己的。
  • 成功的软件开发人员之所以能成功都不是偶然的。他们目标明确,为了达成目标,他们制订了坚实可靠而又深思熟虑的计划。
  • 要做什么,什么时候做,以及如何义无反顾。

从非同凡响开始:绝不要做他人都在做的事

  • 只有你开始把自己当作一个企业去思考时,你才能开始做出良好的商业决策。
  • 软件开发人员售卖的就是他们把一个想法变成一个数字化的现实产品的能力。
  • 专注于你正在提供怎样的服务,以及如何营销这项服务;
    • 想方设法提升你的服务;
    • 思考你可以专注为哪一特定类型的客户或行业提供特定的服务;
    • 集中精力成为一位专家,专门为某一特定类型的客户提供专业的整体服务(记住,作为一个软件开发人员,你只有真正专注于一类客户,才能找到非常好的工作)。
    • 我的服务是管理开发人员,招聘培训人才,建立流程,发现问题,提供解决方案,和其他部门合作,保证结果
  • 大多数成功的公司都会开发出让客户主动上门购买的产品或服务,它们才不会一个接一个地追逐客户。
  • 优秀的人才是被主动挖掘而不是自我寻找

思考未来:你的目标是什么

  • 起步阶段最简单的就是在心中树立一个大目标,然后再建立能帮你达成这个大目标的小目标。

人际交往能力:远比你想象的重要

  • 如果你希望人们接受你的想法,并认可其中的价值,首先你最好先主动给他人相同的礼遇。如果你不能保全他人的自尊,那你永远也不可能赢得他的心。
  • 聚精会神地聆听,当轮到你发言的时候,娓娓道来,一语中的。(实际运用中,你可以提前排练一下这种场景,提前准备好如何进行这种谈话。)
  • 直截了当地告诉老板为什么你喜欢想用某种方式实现某个功能,这并不明智。更好的办法是从对方的心态出发提出建议,阐明为什么采用你建议的方法实现该功能对老板非常有用。理由可能是“让软件更稳定”,或者“能让软件按时交付”。
  • 我们必须要不惜一切代价避免争吵。
  • 在小事情上,任何放弃立场或承认错误的机会对你而言可能没什么大不了的,但对他人却可能是举足轻重的,这么做不仅能为你赢得不可估量的尊重,也能为你的未来积蓄财富,形势逆转时即可兑现使用。

破解面试之道

  • 通过面试的最快捷的方式是让面试官对你怀有好感。
  • 事先就确定我要为这家公司工作的
  • 面试开始之前就思考应对面试的策略。
  • 你必须要突破常规,想尽办法与公司内部人员建立联系。
  • 看看能不能在面试之前得到预面试的机会
  • 能够自发地、无需过问就能做事的员工通常能增加公司的净收入,此外,他们也让老板少操心,只占用少量的管理资源。
  • 与雇用技术高超但需要生拉硬拽才能干活的人相比,我宁愿雇用这样的开发人员:知道的东西可以少一点,但是明确知道要做什么,以及怎样去做。从某种程度上,在你可控的范围之内,面试的时候你要集中精力证明自己就是无需督促也能自动自发做好事情的员工。
  • 集中精力推销自己会对你大有裨益

就业选择:列出你的选择

  • 选择 1:雇员
  • 选择 2:独立咨询师
  • 选择 3:创业者

你是哪类软件开发人员

  • 只要你专业能力雄厚,市场没有过渡饱和,与那些自称为“软件开发人员”的人相比,你能更轻松地找到工作或者赢得客户。
  • 成为这个领域的专家,你就会获得大量业务。

攀登晋升阶梯

  • 在任何公司里能让你脱颖而出的最重要法宝就是承担更多的责任。
  • 没有人愿意涉足的领域是搜寻机会最好的地方。
  • 另一种间接承担责任的方式是成为团队中其他人的导师,自愿帮助新人加速成长,为任何有需要的人提供帮助。
  • 保证“曝光度”——定期与老板会面,确保你经常被注意到。
  • 千万不要忘记分享自己学到的东西。
  • 你要成为那个永远能为各种问题找到解决方案的人,要成为勇于执行这些解决方案以获得成果的人。
  • 你应该对所在组织的政治气候保持警觉。尽管不能完全避开政治,但至少应该知道会发生什么,哪种人需要避开,哪种人永远不要有交集。
  • 确定要自学的最有价值的东西是什么,制订一份下一年的自学计划。

成为专业人士

  • 成为专业人士是一种心态。如果我们总是与恐惧、自毁、拖延和自我怀疑作斗争,那么问题就是:我们正在像外行那样思考问题。外行毫不起眼,外行人废话连篇,外行屈从于逆境。专业人士可不这么想。不管怎样,他引人注目,他恪尽职守,他始终如一。成为专业人士的全部在于:引人注目,恪尽职守,以及不屈服于挫折。成为专业人士,需要你克服自身的缺点,静下心来创作出尽可能最好的作品。
  • 专业人士会坦承自己不知道答案,但是你可以信赖他会找到答案。
  • 每天提前做好计划,就能养成有效管理时间的习惯。专业人士知道每天必须要做什么工作,并且能估算出每项工作大约要花多长时间。

成为自由职业者:开启自己的一片天地

  • “吸引式营销”基本上就是让潜在的客户主动送上门,而不是你去找他们。你要做的事情就是免费提供有价值的东西。

创建你的第一个产品

  • 在创建产品之前,先筛选出一组特定的受众,他们也是你的解决方案的目标用户。

你打算开始创业吗

  • 很好的创业候选是能够申请专利或受保护的新技术和新方法,而糟糕的创业候选则包括餐厅或其他缺乏独创、很容易被复制的服务。
  • 好的创业项目要有规模扩张的潜力——想想 Twitter、Dropbox 和 Facebook 等。

假装自己能成功

  • 有目的地将自己置于困境,演练一下自己既定的应对策略。

单调乏味的简历——如何修改

  • beautiful-resumes 上列出了许多漂亮、充满创意的简历,你可以从中得到一些启发。

自我营销

  • 营销就是一场争夺人们注意力的竞赛。

针对“码农”的营销基础课

  • 营销的核心在于将一些人所需要的所期待的产品或者服务与产品或服务本身连接起来。
  • 成功进行自我营销的关键在于:如果想让别人喜欢你,想和你一起工作,你就必须要为他们提供价值。
  • 无论你身在何处都要营销。
  • 自我营销的基本机制是,要想让人们追随你、倾听你,你就要带给他们价值:你能为他们的问题提供答案,甚至是给他们带去欢乐。

打造引人注目的品牌

  • 但品牌不只是商标,更是一项承诺。品牌树立了客户对你的期望,而且这些期望也必须能够实现。
  • 品牌所要传递的信息、品牌的视觉符号、品牌的一致性和品牌的曝光率。
  • 明确要传达的品牌信息。挑选细分市场。创建品牌口号。创建电梯内销售概要。创建视觉符号(即标识)。
  • 接下来,你应该创建所谓“电梯内销售概要”。电梯内销售概要是一段能够快速描述你是谁、能做什么的宣传文字,乘坐电梯的工夫就可以浏览完毕。想想在晚宴上,或者就在电梯里,当有人问起来“你是做什么的”的时候你该怎样回答人家。

创建大获成功的博客

  • 提高你的沟通技巧。组织自己的思想,并将其转化为文字,是一项颇具难度却也极具价值的技能。
  • 持之以恒地坚持写作,坚持不懈地产生高品质的内容,如果你做到了这两点,基本上你就成功了。

你的主要目标:为他人增加价值

  • 不要努力成为一个成功的人,而要努力成为一个有价值的人。——阿尔伯特·爱因斯坦
  • 要想让自我营销的所有努力奏效,基本的方法就是帮助他人获得成功。
  • 你提供的内容应该直接瞄准你所选定的研究领域,为该领域带来价值。
  • 免费内容比付费内容更容易被分享。
  • 最富有创造力的人也是最乐于助人的人。

善于运用社交媒体

  • 发布你认为有用或有趣的。你自己觉得有价值东西,在很大概率上别人也会认同。

演讲、报告和培训:做“说话的极客”

  • 演讲也是一种互动媒介,或者至少你能将其作为媒介使用。
  • 最好从小规模的场合做起,逐渐完善你的演讲技能。要想能在公众面前从容自如地发表演说,需要很长时间的刻苦练习。
  • 作为人类,我们拥有良好的适应能力。只要你把一件事情重复足够多次,你自然就会接纳它。如果你一直坚持在公共场合发表演说,你一定会应对自如,恐惧感终将消散。

著书立说,吸引追随者

  • 要想让自己有机会出书,最好的办法就是明确一个有市场需求的主题,同时也能够充分展示你作为该领域专家的学识。
  • 最后,你应当准备一份翔实的写作提纲(文章摘要),清晰地概括自己的写作目的,明确本书的目标读者,以及你为何认为这本书会成功,为何你是写作这本书的最佳人选。你的提纲写得越好,它被出版商接受的可能性就越大。

百折不挠,越挫越勇

  • 如果你想成功,你必须要学会收起自己脆弱的自尊心,勇敢走出去,别害怕让自己出丑。

学习

  • 教育就是当一个人把在学校所学全部忘光之后剩下的东西。

学习怎样学习:如何自我教育

  • 如果我告诉你该怎么做,你可能会忘掉,但如果你自己动手做一次,你可能就记住了。如果你能将自己所学的东西教给别人,你不仅能记住,还能理解得更深刻。

我的“十步学习法”

  • 要对自己要学的内容有个基本的了解——了解自己不知道什么就足矣。然后,利用这些信息勾勒出学习的范围,即需要学哪些内容,以及学成之后又会获得什么。

第 1 步到第 6 步:这些步骤只做一次

  • 在这一步,你要做的就是了解自己将要学习的主题的全局。这个主题宏观上什么样?你能从中学到足够丰富的知识以了解自己所不知道的吗?以及自己所不知道的有多少?
  • 研究。通常你可以使用网络搜索来完成大部分研究。如果你碰巧有一本关于该主题的书,那么你就可以只读一下其中的介绍性章节,粗略浏览一下内容,但是不要在这一步上花费太多时间。
  • 了解如何设置和安装 Ubuntu Linux,以及如何使用它的基本特性
  • 为了学习该主题下的不同子主题,你可能会扩张你的学习范围而不够聚焦,但是请务必抵制住这个诱惑,尽可能地保持专注。
  • 最后,在这一步中一定要注意:明确学习范围的时候要考虑时间因素。如果你只有一周时间,你需要本着实事求是的态度确定自己能在这段时间内学到什么。如果你有几个月的时间,你也许能攻克一个更大的主题。你的学习范围务必大小适当,既能符合你的学习理由,又能符合你的时间限制。
  • 在全力以赴启动之前,明确“成功”的含义极为重要。如果不知道成功是什么样子,很难找准目标,也很难知道自己什么时候已经真正达到目标。
  • 在尝试学习任何东西之前,你都应该在自己脑海中清晰地描绘出成功的样子。当你知道自己的目标是什么的时候,你就可以更轻松地使用倒推的方式,明确实现目标所需的步骤。
  • 好的成功标准应该是具体的、无二义性的。不要对自己想要完成的任务进行含糊不清的描述。相反,要列出某一特定的结果,或者一旦实现自己所能达到的目标你应该能够做到的事情。
  • 要尝试收集到多种多样的资源以帮助你学习,而不是只读一本关于这一主题的书。
  • 在这一步中,你会想找到尽可能多的与自己所选主题相关的资源。此时你无需考虑这些资源的质量。这一步与头脑风暴类似。稍后你会对你找到的这些资源进行过滤,去伪存真,但是目前还是想先获得尽可能多的不同类型的资源。
  • 图书博客文章在线视频专家,或者对你所想要学习的内容已经熟知的人播客源代码示例项目在线文档
  • 对于大多数学科而言,学习是一个自然的过程。从 A 开始,前进到 B,最后到达 Z。这个顺序对你掌握随机的碎片化知识价值不大。你需要找出在最短的时间内从 A 到 Z 的正确路径,并且到达沿途的重要地标。
  • 打造自己的学习计划,一个好方法就是观察别人是如何教你感兴趣的主题的。就我自己而言,在这一步我通常会翻看自己在第 4 步中找来的图书的目录。如果五位不同的作者都把内容都分解为相同的模块和顺序,那我就会遵循这样的方法制订自己的学习计划。
  • 把你在第 4 步中收集的全部资源浏览一遍,找出哪些内容能够覆盖你的学习计划。
  • 挑选你想要了解的一项课题,实际经演练一下上述这六个步骤。你可以从一些规模较小的课题开始,以便让自己习惯于这一过程。但是注意,一定要实际运用。如果你只是把这些步骤当作是阅读内容,那么它们对你不会有太大用处。

第 7 步到第 10 步:循环往复

  • 现在开始最有趣的部分。接下来的四个步骤会在你的学习计划所定义的各个模块中循环往复。步骤 7 到步骤 10 的目标是通过“学习—实践—掌握—教授”(LDLT)的方式真正领会知识。
  • 你从掌握恰到好处可以开始的基础知识开始,然后通过操作来学习,同时也通过自我探索收集问题。之后,你掌握了足够多的有用的知识。最后,你能将自己学到的教给他人,以此来弥补自己在学习过程中的不足,同时通过深入思考巩固知识。
  • 在学习过程中通常会犯两类错误:第一类错误是在知之不多的情况下就盲目开始,即行动太快;第二类错误是在行动之前准备过多,即行动太晚。要想在这二者之间取得平衡,你掌握的知识要恰到好处,足以能让你开始学习,但又不会多到让你无力探索,这样你的学习效果最佳。
  • 在第 8 步中,你通过动手操作发现了一些尚未找到答案的问题。现在,是时候来回答这些问题了。在这一步中,你要利用先前收集到的所有资料,进行深入学习。
  • 不过请记住,你依然没有必要把收集到的所有资料全部仔细看一遍。你只需要阅读或观看与当前所学相关的部分。我们很少能有足够的时间把一本书从头读到尾。这些资料只是帮你自学,基本上你可以以解决在动手操作中发现的问题为主要目的。
  • 你告诉我的,我都忘了。你教会我的,我都记得。让我乐在其中,我就一定能学会。
  • 如果你想深入地掌握一门学问,想对这门学问做到融会贯通,那么你必须要做到“好为人师”。除此之外别无他法。
  • 在现实中,你只需要超前别人一步,就可以成为他们的老师。
  • 在这一步中,我会要求你走出自己的舒适区,将自己学到的知识教给别人。
  • 要想确定你确实掌握了某些知识,这是唯一的办法;同时,在你将自己所学介绍给他人时,这也是查缺补漏的好办法。

寻找导师:找到你的尤达

  • 在这一章中,我会教给你一些小窍门,包括寻找怎样的导师,如何找到导师,以及如何说服你的导师让他相信你值得他投入,从而真正实现双赢。
  • 想想我们是怎样学习游泳的。当你第一次学游泳的时候,你的大脑里充斥着关于如何游泳和水很危险的虚假信息。你可能觉得自己不能漂起来,最后会被淹死。你必须要信赖你的游泳教练,对于游泳,他知道的比你多,而你对于游泳的认知都是错的。
  • 学习方法,十步。先了解游戏开发,细化干什么,定目标,准备知识,学习,达成目标,帮助其他人。博客,github,都会觉得自己蠢,离开舒适区。高一点的人适合当老师。写简历,认识公司的人,找一个老师。
  • 他们做到了我想要去做的?他们曾经帮助他人做到了我想做的?他们现在取得了什么可以展示的成就?你能和这个人和睦相处?他充满智慧吗?
  • 你最好的选择就是去自己认识的人中找,自己的朋友的朋友、家人的朋友等。如果你愿意做一点儿功课,再四处打听一下,无论你努力追求的目标是什么,你极有可能在由家人和朋友组成的关系网中找到适合做你导师的人。
  • 如果你想在一家公司里获得晋升,那么在公司内部给自己寻找一位导师无疑是明智之举。你的老板或者你老板的老板这样的资深人士是导师的不二人选,你很可能会提前接受晋升所需要的各种教育。此外,与高管做朋友对你的职业生涯毫无害处。
  • 我找来一些房地产投资方面最好的书,从这些“虚拟导师”身上我学会很多东西。除了阅读他们所写的内容,我还尝试去理解他们是如何决策的以及为什么做这样的决策的。
  • 可以考虑请他吃午餐或者晚餐,在吃饭的时候让他给你一些建议。
  • 一定要有耐心!大部分人在第一次听到“不”的时候就止步不前。别做这样的人。恰恰相反,要做一个别人用棍子赶才能赶走的人——即便如此,过一会儿也还要回来。你的顽强不会总有回报,但是你可能会惊讶地发现回报来得很频繁。
  • 在寻找导师之前,你必须要明确,你需要导师帮你解决什么问题。坐下来,仔细想想你为什么需要一位导师,你希望从这段师徒经历中获得什么。
  • 列出所有你认识的人中可以做自己的导师的人。请其他人在你的列表上再列出他们认识的人,用好你的人际网络。想一想,为了能够换取导师的帮助,你能给他提供什么?

开山收徒:成为尤达一样的大师

  • 教授是学习的最佳途径之一。
  • 做导师还会让你感觉良好。这件事情还是值得去了解的——你所做的能够对其他人的生活产生积极的影响,这本身就是一种报偿,特别是当此人无法报答你的时候。指导别人能让你发现人生的新目标和新意义,帮助别人可以给自己带来真正的幸福。
  • 做导师的好处帮助他人时的成就感。深入学习和领悟知识的途径。你的徒弟有朝一日会帮到你。自身的成长。帮助别人成长的过程也就是自己成长的过程。

传道授业:若要学知识,必得为人师

  • 我发现最好的教学方式就是以谦虚的视角来观察问题,以权威的口吻去诠释问题。

你需要一个学位吗,还是可以对此忽略不计

  • 许多计算机科学课程中包含的算法、操作系统、关系型数据库理论和其他主题都是永恒的。
  • 身为软件开发人员,我们所做的大部分工作,都是如何使用新技术,学会如何用它们完成工作。我们很少需要回溯到计算机科学的本源。
  • 学历有用,但是主要还是工作经验。学的过程中的东西很少用
  • 学历教育可以确保你在软件开发方面获得全面的教育。
  • 拥有一个学位也可以帮你即使毫无经验也能踏入职场。
  • 学位还可以给你更多的选择。如果你没有获得过相关学位,有一些职位你是永远不会得到的,尤其是在大公司中。没有学位,做到一定的行政岗位之后就会有一个困难期。
  • 如果没有学历,你就不得不更多地依靠经验来证明自己的能力。学位至少可以让雇主相信你具了解某些软件开发的知识,那么如果你没有学位的话,你就要能够证明自己有这些能力。
  • 证明自己的能力的最好的办法就是以往的工作经验。如果在过去五年中你一直从事软件开发的工作,那么即使没有学位也能说明你会写代码。但是,如果你刚刚踏入职场,那你的求职之路会很艰难,你不得不去证明自己确实能够做到你自己所说的那些。因此准备一份作品集是最好的方法。
  • 不管你是拥有学位还是拥有经验,我都建议你将自己的工作成果总结为作品集。

发现自己的知识短板

  • 我们总是倾向于掩饰自己的短板,而且我们也总是太忙,忙到无暇去填补它们。结果,我们要么不能真正明白自己在做什么,要么为了避开自己的短板而采取低效的方法。
  • 知识短板会阻碍你进步。准确识别它们的最佳方式之一就是看看自己在哪些工作上花费了大量的时间,或者一直进行重复性劳动。
  • 重复性工作也是如此。任何你所做的重复性工作都值得彻查一番,看看是否有自己不理解的地方,如果你这样做了,可能会提高你的工作效率。
  • 另一种识别知识短板的方法就是,时刻都要试图了解自己不理解或不清楚的事物。你可以维护一份清单,列出自己需要去研究或者自己不清楚的所有事物,追踪有哪些主题总是不断出现在这个清单上。你会惊讶地发现这份清单的增长速度有多快。
  • 假如你在准备面试,需要明确自己要学什么,这一方法最管用。尽量找出尽可能多的你在面试中可能会被问到的问题。
  • 知识短板高发区,你的短板在哪些,工作上花费时间最多?可以改进的重复性劳动,自己没有完全理解的东西,你回答不出来的面试题

一切始于专注

  • 生产效率高并不能保证你是高效的。产量多只表明生产效率高,只有完成正确的工作才会成为高效的人。
  • 这一切都源于专注。
  • 但我们所承担的很多任务都有“环境切换”的成本。当我们从一个任务切换到另一个任务时,我们必须要唤醒某些记忆之后才可以重新开始工作。
  • 时不时实践一下专注。选一项大概需要占用你半小时或者更长时间的任务,给完成这项任务分配一个完整的时间段,完全专注于这项任务。迫使自己只集中精力在这一项任务上。当你进入专注状态时,在心里记住是什么感觉。

我的私房“生产力提升计划”

  • 我试过 GTD(GettingThingsDone),也花时间用过“番茄工作法”。我还用过 Seinfeld 的“不要打破链条”(Don’t break the chain)方法的各种版本。(在“不要打破链条”方法中,每天成功完成某项任务,你就在日历上做个标记。这种方法的基本思想就是,让连续工作的势头保持的时间尽可能长。)
  • 我的生产力提升计划的基本思路就是,我把一周的时间分配给一个一个用时不超过两小时的小任务。我使用看板来安排自己的一周活动。看板是一个简单的白板,它有几个列,你可以轻松地在各列之间移动任务项。在敏捷方法的世界里,看板通常还包含展示这些任务项所处的不同状态,典型的状态有“未启动”“进行中”和“已完成”。但是在我的看板中,每一列就是一周中的每一天。
  • 在工作时我会使用番茄工作法来保持专注,并且用番茄工作法估算和衡量每一项任务要花多长时间。
  • 我的计划都是从“季度”开始的。我把我的一年分成 4 个季度,每个季度 3 个月。在做季度计划时,我会尽力列出我想在本季度完成的每一个大项目,我还会制订一些较小的目标。
  • 我也会创建一个宏观计划,将本季度我想要完成的工作列入其中。这让我清楚地了解自己的主要目标是什么,也知道该如何实现它。同时,它还会让我保持专注。
  • 每个月的第一天我会打印出当月的月历,并且规划出每天要完成的工作。
  • 每周一的早晨,我会做我的周计划。我原来使用名为 Trello 的工具作为看板来组织我一周的工作,但最近我一直在用 Kanbanflow 创建自己的看板,因为 Kanban flow 有一个内置的番茄钟定时器。
  • 每天,在坐下来工作之前,我都会做一些健身活动。之所以这样做,是因为我不希望中途有事情打断我专注的状态。一旦我做好准备坐下来工作,我做的第一件事就是计划我的这一天。
  • 要计划好这一天,我首先要把对应日期里的卡片移到“今天”这一栏,并把它们按照重要性排序。我要保证自己优先完成最重要的事情。我也会对当天的任务进行调整,如果卡片上对该项任务的描述不够细致,我还会添加细节。我要确保自己在开始工作之前就确切地知道
  • 知道自己在做什么,这项任务完成的标准又是什么。
  • 为了免受干扰,另一件大事就是,在白天我基本上会忽略电子邮件。我只在休息的时候检查电子邮件,这也只是为了确保不会耽搁必须要马上处理的紧急邮件。但是,除非一些事情确实紧急,否则我一般只在晚上统一回复电子邮件。通过在集中的时间段内统一回复邮件,我可以大幅提升邮件回复效率。(如果能彻底摆脱检查电子邮件的习惯,我可能会生产效率更高。但可惜,我只是个普通人。)
  • 要确保自己有一些休息时间,或者有那么几周我会称之为“无工作周”,基本上在这几周里,我不会使用番茄钟,也不会把整周都排满。在无工作周里,我只做一些我喜欢的工作。

番茄工作法

  • 它的基本思路是:你规划出打算一天之内完成的工作,然后设置一个时长 25 分钟的定时器,去完成计划中的第一项任务;在这 25 分钟之内,你只专注于这一项任务,心无旁骛。一旦有干扰,可以用各种方法屏蔽掉干扰,但是通常你要努力保证自己完全不被打扰。总之,你不希望自己的专注的工作状态被打断。
  • 在 25 分钟结束的时候,设置一个 5 分钟的定时器,休息一下。这就是所谓的一个“番茄钟”。每 4 个番茄钟后,你都需要休息一会儿,通常为 15 分钟。
  • 番茄工作法只有被当作估算和评估工作的工具使用时,才能发挥它的真正威力。
  • 通过计算自己完成的番茄钟的数量,可以确切知道自己一周完成了多少任务,也就不会觉得自己没完成足够量的任务。如果你没能完成自己设定的任务,但是却用完了足够数量的番茄钟,那么问题就不是工作量是否饱满,而是给某个任务项设置的优先级是否正确。
  • 正确使用番茄工作法教会我“设置优先级”的真正价值。当每周我只有这么多番茄钟可分配的时候,我必须小心翼翼地使用这些宝贵的番茄钟。

我的“定额工作法”:我是如何做到超额完成工作的

  • 确立一个明确的目标,规定自己要在预先确定的时间段内需要取得多大的进展。
  • 完成自己承诺的定额。我非常严肃地对待这些定额。
  • 挑选一些需要重复去做的任务,设定的一个定额,即明确自己在一个给定的时间段内完成该项任务的频率。
  • 承诺是“定额工作法”的核心。除了想方设法完成自己的工作,不给自己留下任何其他的选择。
  • 选择可实现、可持续的定额。
  • 挑选一项重复性任务。明确有效时限,在此期间该任务被重复执行。明确在给定的有效时限内该任务应该完成的次数的定额。给自己承诺:一定要达成定额。调整。调高或者调低定额,但是不能在有效时间段之内调整。
  • 以缓慢但稳定的节奏工作,要优于快速但缺乏持久和坚持的工作方式。
  • 我们中的大多数人在长期高生产效率地工作中时都会面临如何保持始终如一的节奏的问题。随着时间的推移,只要每天都能保证完全落实到位,小砖头终会筑成高墙。只关注高墙(手边的大任务)很容易让人泄气,如果每天只是砌砖(小任务)就会容易很多。关键是要保证将方法落实到位,保证自己每天、每周、每月都在“砌砖”。
  • 定额工作法还可以帮你克服意志力薄弱的问题,通过预先设定好的必须要遵循的过程,消除需要做出决策的部分。因为已经预先承诺在规定时间段内完成同一任务很多次,所以就不需要再判断要不要做某事——你知道必须要做。

对自己负责

  • 让人们完成工作主要有两大动机——内部动机(来自内心的动机)和外部动机(来自外部奖励或惩罚的动机)。
  • 内部动机要比外部动机有效得多。在内部动机的激励下工作时,我们能完成更多的工作,也更倾向于把工作做得更好。所以,秘诀是让你的主要动机来自内心而非外部。
  • 我们中大多数人之所以会每天按时上下班,至少在某种程度上是因为我们要对自己的雇主负责。拥有一份工作的责任感会促使我们去做一些如果我们可以自主决定是绝对不会做的事情。
  • 培养出在没有人监督自己的时候也能高效工作的自我责任感非常重要。你也可以把这称为是具有一种性格或者具有一种素质,
  • 要培养“对自己负责”的精神,首先要让自己的生活井然有序。如果不知道应该做的事情是什么,就不能真正为自己所做的任何事情承担责任。
  • 你必须通过为自己设定规则,将这种条理性自愿地应用于自己的生活中。你需要创建自己的规则来管理自己的生活,并且要在自己思维清晰、大脑尚未被错误的判断蒙蔽的时候,提前制订好这些规则。
  • 你可以告诉他你给自己制订的规则,或者你想达成的目标,通过定期互相汇报进度(不论成败),可以互相帮助对方强化责任感。
  • 通常,想到要告诉自己的责任监督伙伴自己没能完成设定的目标,就足以阻止自己不够自律的行为。在关键点作出正确的选择还是错误的选择会有极大的区别。
  • 我自己就加入了一个智囊团,它的功能就像一个责任监督小组。我们小组每周都会开例会,每个人都要讲讲自己在这周做了什么和计划做什么。通过在小组内部讨论每个人各自的计划,我们互相监督计划的落实情况。没人希望因为自己不遵守计划而令组员失望。自从我加入了这个小组,工作效率大幅提升。
  • 公开自己的日常活动也是一个好主意。
  • 最重要的是要确保自己对自己的行为带有某种责任感。坚守自己设定的标准时,生产效率会高很多。
  • 抉择一下:你想如何度过自己的一生。花点儿时间创建一些自己的规则,确保自己朝着正确的方向前进。创建自己的责任制度,帮助自己严格执行规则。

要不要多任务并行

  • 多任务导致效率低下的根本原因似乎在于,我们根本没有能力真正去践行多任务并行。
  • 是的,如果你每天都因为有多个任务要完成就深陷多任务并行的泥潭,最好学会如何批量处理这些任务,一次性完成一系列互相关联的任务,而不是将它们拆分完成。批量处理电子邮件就是非常好的起点,任何在短时间可以完成的任务也都适合批量处理。
  • 潜在的适合批量处理的领域处理电子邮件。打电话。修复 bug。开短会。
  • 比起在不同时间段分别处理相关任务,批量处理相关任务拥有两大优点。第一,你不会打破自己对正在处理的大任务的专注。第二,你会更专注于自己平常没有足够的时间进入专注状态去处理的任务。
  • 最有可能的就是,将一项不费脑筋的任务和一项一定程度上需要精神专注才能完成的任务组合起来。
  • 停止任何并非真正的多任务并行的多任务并行。每天力争在一个时间段内只做一件事。番茄工作法对此有很大帮助。一次性批量处理小任务,而不是每天或每周里做许多次。找出能够真正实现多任务并行的领域。任何不需要耗费脑力的活动都可以跟其他活动结合起来。只要进行任何需要耗费脑力的活动,就将其与体育运动结合起来。

职业倦怠:我已找到解药

  • 提高生产力的最大障碍之一就是身体和心理上的倦怠。
  • 你越是努力工作,完成的工作就越多,这种倦怠感来得就会越快。这就是难以取得工作成效的原因。工作效率越高,你从中体会到的愉悦感就越少。
  • 为自己设定了一个时间表,并且坚决执行。
  • 你可以采用类似的方法来帮自己突破阻挡了你的那堵围墙。想学会弹夏威夷四弦琴?每天留出一定的时间练习。在上第一堂课之前就制订好这样的计划——那时你的兴趣和动机都处于最高点。当你不可避免地撞到这样一堵墙的时候,这个计划能帮助你穿过它。

时间是怎样被浪费掉的

  • 看电视
  • 召开会议
  • 一些常见的时间杀手看电视。社交媒体。新闻网站。不必要的会议。烹饪。玩电子游戏(尤其是网络游戏)。工间喝咖啡休息。
  • 要想消灭时间杀手,最好的方法就是先找出它们。在找回被浪费的时间之前,你需要了解自己的时间都浪费在哪儿了。
  • 下一周,精心地跟踪一下自己的时间花费情况。获取精确的数字,了解每天的每小时你都是怎样花掉的。

形成惯例的重要性

  • 生产力的真正秘诀在于:长期坚持做一些小事。
  • 一个好的惯例始于一个大的目标。你想要达成的目标是什么?通常你一次只能专注于实现一个大目标,因此选择当下对你最重要的目标。你知道,为了这个目标你已经准备了好久,但你从来没有时间着手去实现它。
  • 一旦挑选好了大目标,接下来就要弄清楚怎样才能每天或每周前进,最终实现目标。如果你想写一本书,每天要写多少字才能在一年内完成?如果你想减肥,每周要减掉几斤才能达到目标?
  • 我建议你把每天最开始的一两个小时投入到最重要的目标上。你可能需要早起一两个小时,但是通过有效利用每天最开始的一两个小时,你不仅更容易坚持想要做的事情,还会精力更充沛。
  • 强烈建议你安排好每个工作日的时间,以便自己知道每天、每周要做什么。
  • 刚开始工作的时候你就要决定好自己打算做什么。它可能会是查看和回复电子邮件,但也许更好的选择是从每天必须要做的最重要的事情开始。(电子邮件可以晚点儿处理。)选出每天或每周都要重复的几个任务(
  • 当我在办公室工作的时候,每天我会抽出 30 分钟时间学习自己工作中会用到的技术,我习惯将其称为“研究时间”。
  • 你还应该安排自己的食谱,甚至围绕着每天吃什么来形成惯例。我知道这听起来有点儿不可思议,但我们的确为了决定吃什么和做什么饭浪费了大量的时间,如果这些事情不能提前计划,最终我们就会吃得很差。

培养习惯:刷新你的代码

  • 成就我们的恰恰就是那些不断重复做的事情。因此,优秀不是一种行为,而是一种习惯。
  • 习惯主要由三个要素构成:暗示,惯例和奖励。
    • 暗示是导致习惯被触发的某样东西。它可能是某一天的某个特定时刻、某种形式的社交场合、某个特定的环境或者其他任何东西。例如,只要我们进入电影院,我们就获得了买爆米花的暗示。
    • 接下来是惯例。惯例就是你做的事情,也就是习惯的本质。惯例可能是抽烟、跑步,也可能是在检查代码之前运行所有的单元测试。
    • 最后,还有奖励。奖励就是让习惯真正保持下去的“锚”。这是一种你从执行习惯中获得的良好感觉。
  • 我们会根据周围的事物自发地养成习惯。一件事情做的越多,越可能形成习惯。习惯的力量往往基于奖励的价值。
  • 如果我早起之后的第一件事情不再是浏览网站,我会制订当日计划,并挑出当天自己最喜欢的事情。这样我就可以完成更多的工作,我也可以从自己最喜欢的工作开始,而不是从最不喜欢的工作开始。
  • 习惯。要找出坏习惯,最好的办法就是设法找到日常生活中令你感到内疚的事情或惯例。
  • 选一个你找出来的坏习惯,不要试图马上就改变它。相反,尽量找出这个习惯被什么触发,你这么做有什么表现,以及是什么奖励激励你产生冲动要这样做。
  • 最后也是最困难的部分是,强迫自己坚持足够长的时间,以使新习惯取代旧习惯。只要你能在新的习惯上坚持足够长的时间,新习惯最终一定会变得很轻松且是自发的。
  • 养成习惯的方法与形成惯例的过程很相似。试想,你要完成的大目标是什么,看看你是否能养成某种习惯,推动你在奔向大目标的方向上前进。你的习惯越积极,你向着自己的目标前进的过程就越轻松。
  • 接下来,为你的新习惯找出暗示。是什么触发了你的这个习惯?让暗示固定不变,让你可以依赖。一天中某一个特定时间,或者一周中特定的某一天,都是很好的暗示,
  • 它将确保你不会把行动推迟到另一个时间。
  • 跟踪你的习惯。哪些习惯对你目前的生活影响最大?你认为其中有多少是好习惯,又有多少是坏习惯?挑选一项你的坏习惯,试着把它转变为好习惯。在开始做之前,先在自己脑海中设想一下从现在起一周之后、一个月之后、乃至于一年之后你会有什么成果。

分解任务:如何吃掉一头大象

  • 分解任务。通过将大任务分解为小任务,你会发现自己更有动力去完成它们,也更加稳妥地向着目标前进。
  • 任务越大,越难明确定义。任务容易,你正确完成任务的概率也很高。
  • 大型任务是一种智力挑战,与小任务相比,大任务更可能导致拖延,通常描述也更少,更容易出错,也更难估算完成时间。
  • 你首先需要明确完成这项任务需要哪些步骤。
  • 把大任务分解为小任务的关键步骤就是确定出因为缺失了哪些信息而导致你无法创建更小、更明确的任务。如果你在把大任务拆分成小任务的时候遇到问题,很可能是由于缺少信息。
  • 单独一行代码的复杂度绝对不会超过任何一位程序员的理解能力和编码水平,所以,如果你愿意将问题分解得足够小,只凭借写出单行代码的能力你就能写好任何应用程序。

努力工作的价值,以及为什么你总是逃避努力工作

  • 被我们认为困难的事情,实际上都是我们不想做的事情,因为它们不那么激动人心,也不那么光彩照人。
  • 成功会带来更多的成功。越成功就越容易获得成功。
  • 养成雷厉风行的习惯,并且立即在需要做的工作中付诸行动。

任何行动都比不采取行动好

  • 任何行动往往都比没有行动好,特别是当你一直停滞在不愉快的情势下很长时间的时候。如果这是一个错误,至少你学到了一些东西。这样一来,它就不再是一个错误。如果你仍然选择停滞不前,那么你就学不到任何东西。