高效率工具 004 -- 夺回对数据的控制权,试试用 Markdown 打造文本处理工作流

一早起来看到朋友抱怨笔记文件迁移起来非常麻烦,所以放弃从 Evernote 迁移数据到 Notion。也许大家都有类似的困境:用了很久的文本处理工具越来越难以适应新的需求,可是迁移到新工具的成本又非常高(主要是数据导出和格式转换),所以到底迁移还是不迁移?

差不多十年前,当我开始写学位论文的时候,也遇到类似的问题:最终提交的版本是 PDF,老板评阅的时候希望通过 Google Docs,而我写的时候又要考虑插入引用的问题。最主流的选择可能是使用 Latex,除了给我老板看的时候要转换成其他格式贴到 Google Docs,好像没啥大问题?可惜,我比较懒,Latex 的学习曲线太陡峭,我也没有很多公式要处理,所以最后我选择 Pandoc Markdown (Markdown 的一种方言)写完了三百页的学位论文。当时用 Markdown 写论文有以下几个优点:

  1. 可以在 Vim 里写作/编辑;
  2. 可以用 Git 做版本控制;
  3. 可以用 Pandoc 方便地转换成 PDF 等格式;
  4. 可以使用 Papers 的 citation key,引用管理的问题也解决了;
  5. 可以任意选用备份方式,我当时使用了 Dropbox + Github 的双保险,在不同的地方至少有五个备份,绝对不会出现没了电脑就没了论文的窘境。

简而言之,使用 Markdown 这种简单的标记语言,我将数据牢牢掌控在自己手中。十年后的今天,我依旧庆幸自己当初做了这个选择。这么多年,虽然工具变化了很多,但是数据都是基于 Markdown 格式存储的,所以这些数据都还躺在我的硬盘里。新工具不断诞生,旧工具不断消失(比如当年大红大紫的 Mou),我的文本处理工作流也发生了很大的变化,所以在此梳理一下。

什么是 Markdown?

Markdown 是一门非常轻量的标记语言,比如上面提到的 Latex 也是一门标记语言,但是它非常重。既然是标记语言, Markdown 可以通过各种方式渲染成好看的格式,或者轻松地转换成其他语言。而 Markdown 最大的特点就是轻量,任何人只要短短几分钟就可以轻松上手这门语言,具体的语法我们就不展开了,如果你还不太了解它的语法,可以去它的联合创造者 John Gruber 的网站上查看语法(另一位是英年早逝的联网之子 Arron Swartz 联)。随着时间的推移,各种方言不断衍生,比如 MultiMarkdown,Github Markdown 等等,大家可以根据自己的需求选择适合自己的 Markdown 语言。

为什么是 Markdown?

正因为 Markdown 十分轻巧,所以它成为了我们打造文本处理工作流的不二选择:

  1. Markdown 在硬盘上占用的空间很小,比如这篇文章,在我的硬盘上,md 格式的文件只有14kB,存成 PDF 就是160kB,十倍大小都不止。
  2. Markdown 非常容易上手,并且它用简单的符号就能处理加粗/多级标题等格式,可以让我们在写作的时候减少分心;
  3. Markdown 转换起来方便,后文会介绍几款转换工具。比如我有一位在传统媒体工作的朋友,因为憎恶 MS Word,所以在 Ulysses 里用 Markdown 写稿,然后用内置的工具转换成 Pages/Docx 发给其他同事。

如何使用 Markdown 打造文本处理工作流?

诚如知名生产力博主 Ali Abdaal 最近的介绍,他使用不同的工具处理不同的任务,所以最佳的工具其实是最合适的工具。我们有各种处理文本的需求,所以也有可能需要不同的任务来应对这些续期,所以我们在下面根据不同的需求来推荐对应的 Markdown 工具:

  1. 收集点子;
  2. 笔记整理;
  3. 严肃写作;
  4. 时间管理;
  5. 脑图;
  6. 格式转换。

    每个分类下的工具需要满足两个要求:1. 可以处理 markdown 文件,2. 可以由用户选择数据存储位置。基于这两点,我们可以通过 Markdown 这种格式来掌控自己的文本数据。当然,不少优秀的工具也因此落选,比如 SimpleNote 是非常简洁好用的跨平台笔记工具,但是它的数据都是通过 Wordpress 母公司的服务器同步,用户无法选择本地数据,所以不在我们的推荐之列。

    另外,推荐的工具主要集中在 macOS/iOS/iPadOS 生态下,部分也有 Linux / Windows 的版本,因为我只熟悉 Apple 生态。如果你熟悉 Windows / Android / Windows 上的笔记工具,也欢迎在评论里补充。

    收集点子

    不关你在构建自己的 Second Brain ,还是使用 Zettelkasten 来构建自己的笔记系统,收集点子都是重要的第一步。比如我会看大量生产力视频来学习新方法,我新养成的习惯就是在观看这些视频的同时,随手记录他们的要点,并把自己的想法记录下来,因此一款趁手的收集点子的工具就非常重要。

    Drafts

    Drafts 原先是一款 iOS only 的工具,去年增加了 MacOS 版本,并且由买断改为了订阅,好在免费版本的功能已经十分强大,所以成为了我们收集点子的最佳选择。

    1. 基于 iCloud Sync 的同步功能,方便在 iPhone / iPad / Mac 之间同步数据;
    2. 官方提供了脚本库,我们可以根据需要安装;
    3. 支持听写,所以我们可以口述笔记,它能自动转换为文本;
    4. 支持多种 Markdown 语法,除了 md 本身,还有 MultiMarkdown ,github markdown 等。

    nvALT

    nvALT 是一款老牌的轻量笔记工具,主打的就是快,目前这一版本的 UI 设计还延续着古老的 macOS 设计语言。

    1. 不用的时候它就在状态栏里,即用即走;
    2. 丰富的快捷键支持,基本上可以只使用键盘操作;
    3. 丰富的接口支持,用户可以自行拓展工作流,比如直接用外部编辑器打开长文档;

    它的维护者 Brett Terpstra 说他们(MultiMarkdown 的作者 Fletcher Penney)正在开发基于 nvALT 的新一代笔记工具 nvUltra

    笔记管理

    如果你有非常多的笔记,那么可能就需要一款笔记管理工具来组织管理这些宝藏。比如 OneNote,Notion 就是这一类工具的代表,可惜使用它们的用户对于没有完全的掌控,所以我们推荐的是 Obsidian 和 Foam 这两款工具,它们是近来这类工具的代表之作。

    Obsidian

    这是 Dynalist 的作者开发的新工具,目前正在活跃地开发 beta 版本,面向个人免费,当然你也可以付费支持。

    1. 支持双向链接,这可能是目前笔记管理类软件最红的功能了吧;
    2. 快速的迭代,目前开发者非常专注地迭代,基本每周都有版本更新;
    3. 活跃的社区,社区十分活跃,而且开发者经常在里面收集反馈,并在新版本中实施;

    Foam

    Foam 是一款参考 Roam Resarch 的开源文本管理工具。它本身不是独立工具,可以用插件的形式借助 VS Code 实现,我们可以在 VS Code 内安装 Foam for VSCode 来使用这一工具。

    1. 支持双向链接;
    2. 我们可以非常方便地定制自己的 Foam 工作环境,比如可以在 VS Code 里加上 Git,可以绑定 Vim 快捷键等等。

    严肃写作

    前面提到的 Drafts 和 nvALT 比较适合短文本的记录,但是一旦要撰写比较长的笔记或者文章,它们就显得捉襟见肘。所以在严肃写作的时候,我们需要更加专业的工具,这里推荐 Ulysses 和 Typora。当然这个分类下类似的工具还有很多,比如 MWeb,你也可以根据自己的需求来选择。

    Ulysses

    Ulysses 是非常知名的严肃写作工具,甚至有大量的作家使用这一工具。既然如此,一定有不少特性是它独有的:

    1. 可以将文档设定为 material sheet ,类似卡片写作中的卡片,等到一系列的卡片完成之后,一键就可以将它们合并成完整的文档;
    2. 有各种写作辅助工具,比如目标设定,语法检查等;
    3. 丰富的导出接口,这些内置的导出工具极大地方便了用户使用;

    Typora

    相较于 Ulysses 的高价,Typora 的免费使用可能是它最吸引人的一点。当然免费不等于廉价,Typora 的开发质量非常高,使用体验也非常棒:

    1. 即时渲染,当用户使用 md 写作的时候,它立即会渲染成相应的格式;
    2. 支持创建 md 表格;
    3. 支持 Latex 语法;
    4. 复制文本的格式默认为 HTML;

    时间管理

    市面上的时间管理工具五花八门,层出不穷。绝大多数的时间管理工具都将数据牢牢掌握在自己手里,用户对它们失去了掌控。好在 NotePlan 和 Mak 都是基于 md 文件打造的时间管理工具,所以用户可以很方便地管理自己的数据。

    NotePlan 2

    NotePlan 是一款将日历和笔记结合到一起的工具,跨 macOS/iOS/iPadOS 三个平台。德国独立开发者 Eduard Metzger 凭一己之力从 2016 年开始开发这一工具。

    1. 默认支持 markdown 语法,这样一下子将上手成本降低了很多。比如它会自动将 - 开头的行识别为一条任务;
    2. 内置了笔记和日历模块,很好地将待办列表,日历和笔记三者结合到一起;
    3. 支持无线级别的标签,用户可以使用 / 对标签分级,方便对标签分组;

    Edward 还公开了数据在用户硬盘上的地址,这样用户可以非常方便地迁移数据或者对数据进行再加工。

    iCloud Drive Paths

    General, standalone Notes:
    ~/Library/Mobile Documents/iCloud~co~noteplan~NotePlan/Documents/Notes
    Calendar, daily notes:
    ~/Library/Mobile Documents/iCloud~co~noteplan~NotePlan/Documents/Calendar

    Mak

    这是我的好朋友 Shu 的独立制作,与 nvALT 的概念类似,不过这款工具对于待办列表的支持更棒,所以我就把它放在这一分类下了。具体的使用方法可以参考这篇文章

    1. 默认使用 gist 存储数据,所以我们可以方便地同步数据,按照 Shu 的说法,Mak 可以当作是 gist 的 GUI;
    2. 即开即用,用完即走,非常轻量;
    3. 包含了内链,非常方便关联相关文件;

    如果你想将 gist 同步到本地,可以使用这款工具 gister

    Format Conversion

    当我刚开始用 md 的时候,很多工具只是一个纯粹的 md 编辑器,只支持读取/存储 md 格式。想要把 md 转换为其他格式,其实很不方便。幸好,我们有几乎全能的 Pandoc 和优雅的 Marked 2。

    Pandoc

    Pandoc 是一款无比强大的文件格式转换工具,它是由 Berkeley 哲学教授 John MacFarlane 独立开发的。至于这款工具到底能转换多少格式,请看这幅图片

    Pandoc 其实有自己的 md 变体,这套 md 方言更好地支持了学术写作,方便把 md 转换为 Latex。如果你打算和我一样,利用 md 来写学术论文,请参考 Pandoc Markdown写作规范

    Marked 2

    如果你不习惯使用命令行工具,那么 Marked 2 是你的最佳选择。

    Mindmap

    Mindnode

    严格来说,Mindnode 并不是一款 md 工具,但是它支持 md 输入/输出,所以我们可以拿它转换脑图和 md 文件。举个例子,MarginNote 是一款很棒的阅读工具,可以生成框架化的阅读笔记,但最大的缺点就是不支持 md 格式导出。所以我们可以先导出 mmap 的文件格式,这是一个通用的 mindmap 文件格式;然后我们用 Mindnode 读取这一 mmap 文件,并导出为 md 格式。所以 Mindnode 就变成了一个文件格式转换工具。

    Recap

    上面这些基于 md 的工具不仅极大地方便了我们的文本处理工作流,也让我们重新掌控了自己的数据。如果你也希望掌控自己的数据,希望上面这些推荐能够对你有所帮助。

    名称 付费使用 免费使用 支持平台 分类
    Draft 订阅 Yes macOS, iOS, iPadOS 收集点子
    Mak
    Yes macOS, Windows 收集点子/时间管理
    nvALT
    Yes macOS 收集点子
    Obsidian
    Yes macOS, Windows, Linux 笔记管理
    Typora
    Yes macOS, Windows, Linux 严肃写作
    Ulysses 订阅
    macOS, iOS, iPadOS 严肃写作
    MindNode 订阅
    macOS, iOS, iPadOS 脑图制作
    NotePlan 2 Yes
    macOS, iOS, iPadOS 时间管理
    Pandoc
    Yes macOS, Windows, Linux 格式转换
    Marked 2 Yes
    macOS 格式转换
    MindNote
    Yes macOS, Windows, Linux 笔记管理

    我们刚刚发布了提高可持续生产力的工具 BRNR List
    如果你也想成为更高效的人,欢迎加入我们的 TG 群
    也欢迎订阅我们的 TG 频道!


    高效率思维 000 -- 可持续生产力

    当我们开始这个项目的时候,我们设定的目标是帮助大家用自己的方式管理时间 -- 管理时间的工具太多了,但是有没有可能创造一个大一统的工具--比如像 Notion 对于笔记一样--来管理时间?换句话说,我们是否可以只在一个工具中建立自己的时间管理工作流程?技术上是有可能的,但目前这个目标可能过于宏大。出乎意料的是,在邀请了很多朋友分享他们的时间管理经验后,我们从他们的分享中得到了很大的启发。

    其中一个关键问题是如何长期保持生产力

    是的,我们可能会沉迷于各种生产力的小技巧,甚至有所谓的 productivity porn 。然而,这些对我们的整体生产力有帮助吗? 对我们的心理健康有益吗?答案可就不那么乐观了:我们听到很多人陷于这样的困境:当他们追求极致的生产力时,他们会更容易落后、自责。

    因此,我们的目标是帮助人们维持生产力,可持续的生产力是:

    1. 专注的

    2. 精简的

    3. 系统的

    4. 敏捷的

    5. 健康的

    什么是可持续生产力?

    • 可持续生产力是专注的。

      1. 我们可以设置一定的限制,让我们的注意力集中。例如,借助 Burner List,我们可以设定每天待办事项的限制,以帮助我们专注于真正重要的事情。

      2. 我们可以对任何分心的事情说 "不"。保持专注的最好方法就是对任何分心的事情说不,包括他人的不合理要求等。

    • 可持续的生产力是精简的

      1. 我们可以灵活地制定计划,因为我们可以设置一个缓冲区。这和 OKR 的概念中是类似的:我们有承诺的目标(committed goals)和理想的目标(aspirational goals):我们优先实现承诺的目标,我们用理想的目标来达到更高的水平。理想的目标即使失败了也没关系,但实现它们更有意义。

      2. 我们可以随时取消或改期,因此我们可以减轻压力。

    • 可持续的生产力是系统的

      1. 可持续的生产力是一个长期的游戏,是一个无限的游戏。我们的目标是长期提高生产力,因此我们需要一个系统来实现这个目标。

      2. 系统的可持续生产力不是只专注于一些短期生产力提升的技巧,而是始终关注长期的整体生产力。

    • 可持续的生产力是敏捷的

      1. 有了可持续的生产力的系统,我们将更容易收到反馈,比如我们的生产力是否高效,如何才能提高长期的生产力。

      2. 据此,我们可以调整我们的可持续生产力,使之更加集中、更加精益、更加系统。

    • 可持续生产力是健康的

      1. 追求可持续的生产力可以提高我们的心理健康水平。

      2. 由于可持续生产力是专注的、精益的、系统的、敏捷的,所以它本身就是健康的。

    如何实现可持续的生产力?

    那么问题就来了。如何才能实现可持续的生产力?以下是一些建议。

    1. 优先和专注;

    2. 设定理想目标;

    3. 学会说不;

    4. 取消或重新安排是可以接受的;

    5. 跟踪和回顾进度;

    6. 偶尔放松也是可以接受的。

    优先和专注

    我们的时间和注意力都是有限的,因此,我们应该优先考虑重要事项,以保持专注。这一点说起来容易,但实践起来很难。在现实中,有无数让我们分心的事。因此,我们应该时刻避免分心,保持专注。

    设定理想目标

    如上文所建议的,我们在制定目标的时候,可以在优先级目标之外,设置一些额外的理想目标。如果我们只能完成承诺目标,已经很棒了;如果我们能实现额外的奖金目标,那就更好了。我们为什么不庆祝这些额外的胜利呢?

    学会说不

    意识到分心是第一步,接下来就是对分心说不。对自己的内在干扰说不,比如手机、社交网站,很难;对外在干扰说不,比如别人的要求、邮件,可能更具挑战性。

    如果我们不对这些内在和外在的干扰说不,只会损害我们的工作效率。为了生产力,请勇于对它们说不。

    取消或重新安排时间是可以接受的。

    有时候,我们可能会对取消或重新安排时间感到内疚或有压力。然而,大多数的目标都是由我们自己设定的。如果我们真的觉得实现这些人为的目标有困难,我们为什么不对自己更有耐心呢?

    追踪你的进度

    为了获得生产力的反馈,我们最好追踪自己的进展。这样,我们就可以客观地了解自己的生产力,从而帮助我们调整未来的目标。

    此外,有了进展记录,我们可以更好地回顾自己的工作。

    偶尔放松也是可以接受的

    我们偶尔会陷入毫无效率的境地,英文中称为 rut (恰好是 really unproductive time 的首字母缩写组合)。请不要觉得太糟糕,因为这很正常。著名的生产力博主 Thoms Frank 也有类似的问题

    如果我们遇到困境,就休息一下,让生产力回来。更好的选项是,我们可以主动设定假期以避免这一的情况。

    Recap

    可持续发展的生产力是帮助我们赢得长远发展的不二法门。因此,我们最好让它变得更加专注的、靖江的、系统的、敏捷的、并且健康的。

    --

    我们刚刚发布了提高可持续生产力的工具 BRNR List

    如果你也想成为更高效的人,欢迎加入我们的 TG 群

    也欢迎订阅我们的 TG 频道


    高效率技巧 014 -- 如果你也自我怀疑,请不要担心

    昨天和朋友聊起了自我焦虑这一问题。聊开来之后,我觉得轻松不少,所以把这些内容记录下来,和大家分享一下,希望对大家有帮助。

    自我怀疑极其普遍

    自我怀疑极为普遍,严重的甚至会发展成冒名頂替症候群( imposter syndrome ),这种症状的体现在于,人们会把自己的成功完全归因于运气,自己不值得成功。研究这一症状的权威 Valerie Young 曾经归纳了几种典型的表现,完美主义就是其中之一。 比如我们在发布某样作品时,总是会觉得这个作品不够好,所以迟迟不肯发布,越是不肯发布,就越焦虑;越焦虑就越不肯发布。一个很典型的自我焦虑恶性循环。

    所以当我们意识到自我焦虑存在的时候,不需要太紧张,因为很多人都有类似的状况,甚至比我们更严重。所以我们需要做的就是如何面对和处理这一状况。

    如何对待自我怀疑才是关键

    Valerie Young 在这一这个 TED 视频里提到,有没有冒名頂替症候群的最大区别在于自己怎么看待。同理,自我怀疑在很大程度上取决于我们如何面对它。

    类似地,Derek Draper 在 Create Space 一书中写道:

    A little self-doubt or performance anxiety can be a motivating force. But taken too far such feelings become distinctly unhealthy. (一点点自我怀疑可以变成激励,但是过多的自我怀疑并不健康。)

    所以,如何对待自我怀疑才是重中之重。如果视自我怀疑为一种保护机制,我们就能化焦虑为激励。就比如我天天焦虑文章没有获得推荐怎么办,我只有不停地写,才能提高被推荐的几率,这样一来,我的写作焦虑就转化为写作激励:我不再焦虑最后会不会推荐,反倒专注在写好每一篇文章。这样不仅降低了我的焦虑感,而且更加激励我继续写作。

    如果你也有持续的自我焦虑,不妨想想焦虑的根源是什么?这一根源能否被转化为目标,从而把焦虑转化为动力推动自己前行。

    从客观渠道获得反馈

    当我们自我怀疑时,很大的一个原因是因为,我们找不到一个合适的渠道获得反馈,脑子中一直有一个不客观的渠道,我们只好集中在这一渠道来获得反馈。如此一来,不客观的反馈会持续加剧我们的自我怀疑。所以当我们持续地怀疑自我时,就需要寻找一个客观渠道来获得反馈。

    比如目前身处创业阶段的我,时常会担心这次创业能不能成功,毕竟这和打工完全不一样。打工的时候,老板同事都时不时地会给你反馈,而在创业阶段,产品发布之前,其实非常难获得反馈,很多都是靠自己的直觉/经验。所以对这些直觉经验的怀疑就在所难免。所以这次我做出了一些改变,从一开始就坚持写作,比如我介绍了什么是 Burner list,如何使用这一方法来管理自己的日程。没想到,很多朋友读了之后立即就用上了,这大大出乎我的意料。所以尽管我们的产品还在开发,我也不确定最终能不能帮到大家,但是写作从另一个渠道给予了我反馈,而且是积极的反馈。正因为如此,我知道自己正在往正确的方向前行。

    一个更加简单易行的方式就是建立一个追踪系统,就像 James Clear 在 Atomic Habits 一书中提及,

    Tracking can become its own form of reward. (追踪系统本身就是一种激励)

    举个简单的例子,我们写毕业论文的时候,面对的是一个遥远而宏大的目标:要在单位时间内完成几万字的论文。不少人就会陷入一个无尽的自我怀疑之中:从来没写过这么长的论文,我怎么可能写得出来?这种怀疑很普遍也很正常。如果我们建立一个追踪系统来记录每天或者每周完成了多少长度的草稿,这样一来,一个客观的反馈系统就存在了。接下来我们需要做的就是,努力每天多写一点,让这个追踪系统的趋势一直往上走。只要这个趋势往上走,就说明我们一直在进步,也许我们就会少怀疑一点自己。

    和人聊聊

    其实我早就意识到自己有持续的自我焦虑,也试图通过很多方法来对抗它。直到昨天,和朋友聊起这事之后,我才感觉好多了。这种变化并不完全是由朋友给到的反馈所造成的,更多的可能在于我终于把脑子中很多混乱的想法,通过沟通这一途径表达出来,而表达的过程帮助我自己理清了思路。特别是在这样的沟通中,我可以跳出自己的视线,以旁观者的身份来观察自己的思维,所以可以相对客观地来和自己讨论。

    如果你身边也有靠谱的朋友,你可以试着可以和他们聊聊,也许他们会给予你肯定,也许谈话本身就能帮助你降低自我焦虑。同样地,我们也可以试着把这些想法写下来,而写作本身就能帮助我们理清思路。

    有界游戏还是无界游戏

    当我们在一个有界游戏里,我们关注的是目标,只要达成目标,游戏就结束了。然而这个目标可能很庞大,可能很遥远,所以我们就会陷入自我焦虑的泥潭。倘若我们把同样的游戏当作一个无界游戏的话,那么我们关注的就是过程,就是系统。我们不再那么关注目标,我们关注如何过程中的细节,我们关注如何建立系统。因为过程和系统都是渐进的,所以我们可以时不时地获得外界反馈,从而帮助我们改进。当我们有了外界反馈之后,我们就不再执着于自己脑子里的反馈,自我焦虑自然就减轻了。只要方向正确,我们要做的就是持续努力,持续改进,最终我们会离成功越来越近。

    Recap

    自我焦虑恐怕是非常普遍的现象,轻一点的就是自我觉醒,重一点的可能就是冒名頂替症候群。有这样的问题完全是一件可以接受的事,我们所要做的不是去对抗它,而是如何改变对这一问题的看法,如何把它转化为动力,如何建立更客观的反馈机制,从而帮助我们自己达到成功的彼岸。

    如果你也想成为更高效的人,欢迎加入我们的 TG 群

    也欢迎订阅我们的 TG 频道