最近 Paul Graham 发了一篇关于写作的文章。 对于我来说写还是不写并不是问题,一直困扰我的是怎么写下来,我也刚好有了自己的答案。
从九月份开始我就一直在构建 Eidos 的桌面客户端,因为很多东西需要适配,这个战线拉的很长,花了一个多月才勉强能用。看着 git 暂存区一天天增长的文件,会生出一种焦虑。如果是平时小修小改,很快就会有一条意义明确的 commit message。但是每逢大改之时,就会因为混乱不知道该写什么。如何写 commit message 总是让人头疼,项目大起来之后,每改一个东西都可能牵扯到另外的东西,这种“牵一发动全身” 的复杂度导致一次修改其实做了很多事情,commit message 自然也不知道怎么写。如果放任其增长,最后只会留下一句 “what can i say”。
对抗这类问题的简单策略,就是每做一次小的变动就提交一次。分而治之是对付复杂度的好方法,总是行之有效,尽管历史遗留问题和现实世界的复杂会让人在严格遵守这个策略时遇到一些困难,但是最大的阻碍其实是内心里总有“搞个大的”的想法,一种我能 hold 住复杂问题的自大。
“搞个大的”的想法一直充斥着我的内心,我写 Eidos 已经一年多了,以一种懒散的状态逐步推进,目前开了个头,堪堪能用,距离我心中的预期还有一些差距。我一直想写一些介绍其愿景的文章,但是一推再推。
这种想写长文的冲动持续了很久,似乎简短的几句话不足以表达我的观点,最后发现想要表达的东西其实就是几句话而已,但是需要铺垫一堆论据才算完整。在脑海中思绪的长度,大概就是几条推文,真正写起来又发现自己没理清楚,无法将其逻辑畅通的串起来。然后积压的思考越来越多,最后长文没有写出来,自己的脑子成了一坨浆糊。
不断冒出来的 idea 就像一个个 app,投入思考就会不断地蚕食着捉襟见肘的内存,最后导致整体运行卡顿。生理上的表现是情绪低落、嗜睡。睡觉能重启,但是每次重启还是把之前的 app 都打开了,并没有起到好的效果。及时的写下来,就像是把投入运行资源的 app 状态持久化存储到硬盘上,这样能释放内存,也能在下次恢复时保持原样。
一直思考但是不写下来是很危险的状态。保罗大叔在文中引用了 Leslie Lamport 的经典总结:
If you're thinking without writing, you only think you're thinking.
我想对这句话最贴切的翻译应该是:思而不写则殆
我开始和自己和解了,不要老想着写长文,提高写短文的频率。分而治之的法子依旧好使,写作是门不写就会退化的技能。落笔为安也能一定程度上消解精神内耗。