每个人都有自己的一个工作流,或者说自己的工作习惯。我也有自己的一套工作流程,不过这个工作流一定只会是一个历史产物,我们永远要与时俱进。《随机漫步的傻瓜》这本书里面提到索罗斯,专门说到他这类股市大鳄完全不受过去的行为束缚,摆脱了路径依赖,每一天对他来说都是一张白纸。工作流这事可以借鉴,当你低效工作的时候,可能却感觉一切恰到好处,那你很可能有了路径依赖。

我的工作流,其实完全是围绕分心这件事做的努力。静气,定力,专注,这些听上去像是一个人的个人品质或者能力,真的是一件不可训练的事情吗?我们在信息裹挟的年代,一定要在信息的洪流中随波逐流吗?未必。

知己知彼,百战不殆。我先根据我相对狭隘的研发工作场景来聊聊造成分心的来源。

首先肯定是和信息相关,社交信息,新闻资讯,生活琐事。这些碎片化的内容,随时在挑战我们的专注力。凭自己的意志力,真的就很难去和大数据和人工智能搏斗。

其次就是研发工作本身,虽然交流和沟通不算特别频繁密集,但是工作过程中涉及到的材料是多方面的。包括Gitlab,Tapd,CoDesign等等。我们经常在切换窗口和切换桌面中迷失,或者突然会发现忘记自己要找的是什么文件。这种因为频繁切换上下文导致的分心,不是像你关闭手机通知这样简单粗暴就能处理,更是棘手的一大问题。

最后是一个过载问题。比较简单,一个是需求加塞,一个是多项目穿插,一个是非常短的时间需要交付。我总结的比较简单,但是让一个人大脑过载的场景真的会让人在焦虑中分心和低效。就像电脑内存不够用一样,换电脑是一个选择,对程序的性能优化可能是一个更高技术活的高性价比(当然可能未必高)之选。人脑做不到,你要求它随便扩容,那处理过载问题导致的分心,肯定是绕不过的一个问题。

工作流核心

既然已经抽丝剥茧了,那我接下了说说我的解决方案,终于谈到工作流的内核了。

信息批量处理

应对碎片信息和通知,我的方法很简单,应该大家都用过。用批处理的方式处理碎片信息。我就是用定时检查的方式来处理随机出现的通知。比如每隔两个小时,让手机推送一个通知摘要。这个时间频率根据个人实际情况去定。

IMG_0185.png

只要你像大公司分析你的使用行为一样,去反过来分析这些大公司的产品对你的影响渗透,那要排除这些产品对你的干扰,就有了方向。

针对微信对我的干扰,我还专门做过一次小总结,我发现我日均推送的次数100次左右,但是重要信息的占比可能接近0。免费的东西永远是最贵的,我的注意力之前一天被打断近100次,收获的是100条不重要的即时信息通知。可能已经过了简单化处理问题的年龄,如果是以前,我会直接选择退出微信或者不看手机解决。现在为了在接受信息和排除干扰之间做到平衡,我选择定时推送摘要。

资料高效聚合

工作中,面对一个项目涉及到的多个文件,最简单的方式当然是做好文件夹管理。好,当关联内容涉及到URL的时候,简单的方法是,我们要做好书签管理。那问题来了,我要找到这个项目所有关联的内容,我得在浏览器找书签,得在资源管理器找文件,在IDE打开一个项目。如果你每天都熟悉了,可以非常快速的执行这些重复的动作,但是搜索和切换的过程实在不能说是高效和专注了。

只要你像一个领导一样考虑你的自己的核心需求,去反过来分析自己工作中所有的生产工具要怎么就位,那你离抓住重点就更进一步。领导在视察的时候,需要有一个好看美观的数据大屏看到汇总数据,为什么你在工作的时候不考虑一个总览所有项目相关的总入口呢?一个人对自己的定位决定了自己的高度,哪怕现在你是坐在电脑面前的代码搬运工,你有没有能力对自己的工作流程提出高质量要求?服务好公司之前,请服务好自己。

我的思路是使用Raycast写了一个项目聚合插件

如上图所示,每一项都是一个项目。我可以快速搜索,也可以打开子菜单,查看项目相关的资料。使用这个插件,我可以非常快速做到任何项目相关的链接并直达。比如,快速找到A项目的开发流水线,然后打开A项目的IDE,这个事情再也不需要去手忙脚乱处理了。我们的时间,应该用在更高质量的事情上,不是吗?

基于同样的原理,我还使用了Hook软件,快速关联文件或者网址。

比如我在一个Todo的项目上,钩上了两个URL,对应这个任务需要打开的网址(当然,如果是文件也是支持)。这样聚合之后,我可以在做一件事情的时候,快速打开关联的网站或者是文件。

任务合理规划

面对过载的问题,任务规划是一个非常重要的解决基础。合理规划和拆解你的任务,然后根据多种维度,自己去合理安排,实在是一件考验你对自己的认知的事。

一个合理的任务规划有三个好处,一个是可以起到缓冲的作用,其次是可以做到大事化小,小事不做,最后是让你的工作生活更加有弹性。

要做到千万件事在你面前摊开,也丝毫不慌乱,就需要有缓冲机制。有一个收件箱的功能,还有多入口、低成本收集任务,就成了一个任务管理工具必备的素质。当你开始收集你的任务,你就开始给自己的大脑清理空间和降低压力。因此,不管你是使用任何方法,都要有一个收集任务的地方。

接着我们聊聊大事化小的问题。一款可以方便拆解任务的软件非常重要,我们只有把所有动作都拆解到尽可能小,才可能更专注当下去执行。我经历了所有的方法论和工具的沉淀,最简单归纳起来就是键盘上有两个按键可以解决所有的任务。一个是Enter按键,一个是Tab按键。

  • Enter:负责任务的枚举或拆解
  • Tab:负责任务的层级分类

我的想法是,任何一个不支持无限层级嵌套和拆分的任务管理工具,都不如你自己在记事本上,用Enter和Tab记录。当你遇到一个卡点问题的时候,优先想想这个事情可以继续拆解成一个更小的事情去执行吗?

最后是弹性的问题。清单和任务管理,从来不是限制你自由发挥主观能动性的枷锁。工具永远是辅助。那我们如何在自己的规划中保持弹性呢?我觉得有三点很重要。

  • 定时复盘
  • 机动变更
  • 重新规划

复盘的重要性我觉得不用详细说明了。机动变更是需要你在复盘中对自己的任务管理做即时性和准确性的调整,这样你才能不会被昨天的自己拖累,永远有今天的主动性。最后是重新规划,面对一塌糊涂的安排,想也别想,重头再来吧。

说到任务管理,我并不想举任何软件相关的例子。我个人认为,面对日新月异的挑战,研究工具本身早已经不是高性价比的事情。所有的工具都可能更新,但是方法论可以做到不断优化和更符合你自己的性格。

思考

万丈高楼平地起,勿在浮沙筑高台。架构好项目之前,我很想先架构好自己。不要在错综复杂的问题中迷失,而忽略了本质的需求。

我们在面对问题的时候,可以培养好敏锐的知觉,可以从下面三个方向思考

  • 知识管理体系
  • 任务管理体系
  • 进度管理体系

如果在没有高屋建瓴的本事之前,我们就疲于工作生活的琐事,那么很可能既找不到根,也长不出参天大树。