大一统效率利器 Notion,我的使用技巧 | 年度征文
编注:本文是「少数派 2019 年度征文活动」的入围文章,本篇征文的投稿赛道为:效率有心得。本文仅代表作者本人观点,少数派对标题和排版略作调整。
想了解如何参与本次征文,赢取各种丰厚奖品,你可以 点此查看 活动规则和奖品清单。
从 2018 年秋天给 Notion 发申请邮件,成功成(bai)为(piao)高级用户之后,我一直以来使用的记录、管理应用都是 Notion。虽然少数派文章中、评论区以及其他社区中,总会有同学对这类希望帮你揽下全部使用场景的「大一统」应用产生抵触心理,但于我而言,Notion 它就是实实在在地将我的清单整理、进度安排、笔记收纳等等功能都囊括在内。也正因如此,我才不离不弃使用 Notion 规划整理我学习过程中的几乎全部内容。
在这快有两年的时间里,我不仅拥有「单机玩家」使用 Notion 的普遍感受,还真切体验到了作为「多人合作游戏」时 Notion 的强大之处。这篇文章,主要希望和大家分享一下:作为一名学生,如何将 Notion 这款大一统的效率利器,在「整理」与「合作」这两个维度中,实际应用到我们学习之中。
最初关注 Notion 正是因为其笔记记录的功能。我从初中开始就使用印象笔记整理作文素材、归档错题照片……云端笔记对我来说几乎是必需的功能。作为单机玩家,Notion 令人印象深刻的体验就是它基于 Web 的简洁 UI 和轻快用户体验。没有类似印象笔记多年的历史包袱让 Notion 从用户界面角度来说无可挑剔,也让 Notion 能够支持全部操作系统的几乎所有设备 —— 只要能用浏览器上网,就能用 Notion。作为一名在 macOS 和 Windows(以及偶尔的 Linux)系统之间反复横跳的用户来说,Notion 是我最佳的选择。
Notion 以 Block 为基础的笔记数据存储方式也格外特别,Block 让我能够自由拖动笔记中的「段落」、「附件」、「嵌入内容」等其他元件,让我对笔记的格式有更细致的操控。Notion 借助于 Block,在 Markdown 纯文本笔记和类似 Word 的富文本多重格式笔记之间找到一个微妙的平衡点,并在之基础上提供了一定的高亮、颜色与背景的自定义功能。这一功能也得到了市场的赞同和效仿 —— 可以看到之后印象笔记以及 Coda 等应用的 Web 服务都使用 Block 进行排版。
在学习过程中,我使用 Notion 主要做下面的两件事情:整理知识点、收集文章和链接。
任何一门学科的知识点都凌乱复杂,需要进行整理回顾才能真正掌握。我在每一门专业课考试复习时,都会使用 Notion 对课程涉及到的知识点进行梳理,将之「电子化」,整理为可以在任何设备上都随时查看的参考文档。
不得不说,将知识点本身整理成类似的「文档」的过程,实际上就是我自己对知识点加深巩固的过程。很多时候我在整理课程知识的过程中,就会非常自然的将知识点记忆下来。对不清楚的知识点,我在整理的过程中也会直接发现,这样在知识点电子化的过程中,我就将知识点本身弄清楚了。
不论是搜索资料还是浏览 Inbox,我们都不停的处理海量的文章内容。将看到的好文章进行沉淀,留作日后查看是一项相当重要的整理工作。之前我使用过印象笔记剪藏、Pocket、Instapaper 等等的稍后阅读功能,不过去年年初 Notion 推出自己的浏览器剪藏插件之后,我觉得使用 Notion 和这些专门的文章收藏平台相比,对我来说几乎没有使用差异。
Notion 网页剪藏会将当前网页以及它捕捉到的内容自动整理到一个 Notion 数据库之中,并为之添加相应的标题、内容和添加日期。Notion 数据库是一个拥有超多高效功能的存储空间,接下来我有更多利用 Notion 数据库实现的功能效果。
关联阅读:Notion Web Clipper - Notion Help & Support
除了学习,我还会在少数派、我的博客、Medium、公众号等等地方撰写各种选题的文章。如何进行选题的整理规划是一个相当重要的问题。在少数派编辑们给我提供选题以外,我自己偶尔也会有灵光闪现 —— 在折腾的过程中,到处都是选题的身影。(≧∇≦)ノ
前面我就提到了:Notion 的数据库模块是比 Notion 默认文章模块更为高阶,拥有更多功能的一个模块。目前我的选题工作全部利用「Notion 数据库模块」进行整理、安排与进度追踪。
我自己用 Notion 实现的选题管理是我近几个月才钻研出来的功能。(这学期有一门软件工程的课程,其中结课项目设计的就是类似的稿件管理系统。🤣)可以看到,Notion 的数据库实际上就相当于一个增强版本的表格,我在 Post Inbox(稿件收集箱)数据库中,定义了:稿件主题、标签、添加时间和截止日期这四个维度的数据,每次收到新稿件或自己发现新的选题时,我就会向这一数据库中添加相应的字段。统一将所有稿件一字排开,不论是查阅还是整理起来,都相当方便。
事实上,一个稿件 / 选题的「生命周期」是这样的:
你可能已经发现上面稿件数据库中的「标签」我就是按照类似的思路进行定义的,上面截图中实际上是 Notion 数据库的默认视图模式 —— Table(表格)视图。我们可以点击左上角的「视图切换」,添加一个叫做 Kanban(看板)的视图,就可以得到类似下面按照标签进行分类的列表视图。
为了整齐风格,我们还可以将与「生命周期」不想关的标签(比如稿件归属标签和「归档」标签)进行隐藏。另外,我们也可以在这一视图下点击右上方的 Properties,将卡片预览(Card Preview)改为 Page Content,将卡片大小(Card Size)改为 Small,并在下方勾选显示标签的选项,这样我们的「看板」视图就整理完成了。当我们的稿件进入下一生命周期阶段时,我们只需要将相应的卡片进行简单的拖拽,即可将稿件的生命周期「标签」相应的修改。这种类 Trello 风格的视图尤为适合进行选题策划的跟踪安排,用在我自己的稿件管理之中体验相当不错。
笔记应用千千万,能像 Notion 这样实现多人合作、并发编辑体验的真不多。Notion 作为一款笔记的最大优势我觉得就是其多人协作的编辑功能。这一功能在我和我的同学们的课程设计、小组项目之中发挥了举足轻重的作用。
首先,Notion 支持对某个页面、某一套页面的直接公开分享。这一功能不需要对方注册 Notion 账号,不需要邀请对方进入自己的工作区,直接将页面设置为「公开」即可得到任何人都可以访问的链接。Notion 还支持细粒度的权限控制,包括:是否允许搜索引擎爬取页面,与是否允许将页面复制为模板。
目前我自己维护有一个频道,每天会发布一些我自己看到的有意思的内容。但是频道糟糕的搜索功能让我们几乎无法直接检索发布内容,手动设置 #<标签内容>
格式的标签也聊胜于无。为了让我自己发布的内容有沉淀、可检索,我用 Notion 制作了一个列表形式的数据库,用来整理归档我全部发布过的信息。之后我将页面公开,方便所有订阅我频道的用户直接查看搜索,默认情况下拥有只读权限的用户也可以通过搜索对数据库中的内容进行筛选。
另外,Notion 的公开页面目前并不支持原生的自定义域名,但是我们可以通过 Cloudflare 的 Web Worker 对 HTTP 请求手动重写,实现「曲线救国」形式的「自定义域名」。这里我将这一页面的域名自定义为我自己的二级域名,使得访问我的域名时也可以直接显示 Notion 公开页面。
关联阅读:如何为 Notion 公开页面自定义域名 | 一日一技
除了直接将页面设置为公开,我们还可以通过「邀请 Notion 用户」的方式将其他同学加入到我们自己的工作区之中,或只加入到某一共享协作页面之中。
Notion 这样的细粒度权限管理特点,让我能够在各项课程设计、小组项目之中使用 Notion 和我的同学们进行同步协调工作。我将经常跟我密切配合工作的几个好朋友加入到我自己的 Notion 工作区之中,并将他们加入到 Notion 的 Groups(小组)里面,将其他偶尔与我一组的同学通过「访客」的形式邀请进入特定的项目页面进行协作。
在共享页面中,我可以和我的同学们共同编辑同一个文档,Notion 会妥善处理我们各自的编辑内容,尽量不造成编辑冲突。这一特点不论是在共同编辑项目报告,还是在进行会议记录的时候,都发挥着相当的作用。
在编辑的过程中,页面发生的全部变动 Notion 也都会记录在案,形成基础的版本控制功能。访客成员等邀请协作的用户也可以直接对页面之中的某个元素进行评论,提出意见。在协作方面,Notion 几乎没有可挑剔的地方。
另外,为了让我的小组同学们有一个任务进度的总体一栏,我在工作区制作了一个工作区成员可直接访问的「进度一览」数据库。借助于 @Linmi 在这篇文章 —— 如何打造个性化 Notion 进度条? —— 中提到的思路,我在数据库中制作了各项任务的进度显示。这样有助于帮助我的所有组员清晰哪些任务需要给予重点关注。可以看到,其中我是使用「当前进度」Current 与「总任务长度」Total 来手动定义我的任务进度条的。
与此同时,我在数据库中还定义了任务的「截止日期」、任务的「剩余时间」以及任务的「动态优先级」这三个显示维度,以及任务「是否完成」与任务「优先级数学模型」这两个隐藏维度。其中仅有「截止日期」是我手动设置的,剩余的参数都是利用 Notion 数据库中的 Formula(公式)自动化计算得到的。
利用 Notion 公式自动化计算中最为常用的就是「三目运算符」,也就是 Notion 的条件公式语句 boolean ? value : value
。实际上这一算法理解起来非常简单:
如果?
前面的条件boolean
满足,则赋值:
前面的value
,否则赋值:
后面的value
。(boolean
是一个只能取值「真」或「假」的特殊变量。)
我们可以多层级嵌套使用这一「三目运算符」来形成比较复杂的判断逻辑,上面提到的每个自动化计算的参数的算法中我几乎都用到了「三目运算符」。这里我简单介绍一下上面这几个自动化计算的公式算法的具体设计:
prop("Current") >= prop("Total")
and(prop("Deadline") <= now(), prop("Done") == false) ?"💥 Overdue!" :
((prop("Done") == true) ? "✔ Done" :
concat("⏱ ", format(dateBetween(prop("Deadline"), now(), "days")), " days left"))
另外我还定义了「任务的动态优先级」,这是一个相对复杂的算法:
(prop("Done") ? 0 :
((prop("Current") == 0) ? 1 :
(round(1 / (prop("Current") / prop("Total") * dateBetween(prop("Deadline"), now(), "days")) * 100) / 100))) * 3
我们简单画出这一二元函数的图像,可以看到随着 a 轴正方向任务的完成(进度的增加)任务优先级是逐渐降低的,而随着 b 轴负方向任务离截止日期越来越近任务的优先级是飞速上升的。这一参数可以非常清晰的动态显示我们任务的「优先级」。
(prop("Done") == true) ? "✅" : slice("❗❗❗", 3 - prop("Priority Math Model"))
整个任务进度一览数据库中我定义了 8 个任务参数,而其中仅有任务当前进度、任务总长度与任务截止日期是我手动输入的,其余均是利用 Notion 公式 Formula 自动化计算的,而 Formula 计算得到的不仅仅是冷冰冰的数字,还可以直接显示一定的用户界面(比如进度条与表示优先级的 ❗),这足以见得 Notion 数据库拥有多么强大的自动化功能。
用 Notion 对个人项目进行规划整理的体验非常不错,对多人项目进行团队管理、小组协作与任务追踪更是完美,这也是我如此推崇 Notion 的原因所在。
我非常喜欢 Notion,喜欢它在 Web 上部署、任意设备随时访问,喜欢它 Block 格式的排版系统、格式克制前提下能极大自定义,也喜欢它实时多人协作、同步编辑、并行作战。我使用了 2019 年一整年的 Notion,一直到今天,我几乎所有的任务、事情、安排……都交给了 Notion 帮我整理。快两年的时间里,我的的确确得到了「单机玩家」使用 Notion 的普遍感受,也真真切切体验到了作为「多人合作游戏」时 Notion 的强大之处。
Notion 自己的确有着许许多多等待优化改进的地方:比如它移动端缓慢的访问速度、不支持行内数学公式的闹心特性、跳票不知几年的官方 API 等等等等,但是这些都不妨碍我将 Notion 作为我笔记应用的 daily driver。以上就是我使用大一统效率利器 Notion 的场景技巧。#效率有心得,感谢大家阅读。
> 下载少数派 客户端、关注 少数派公众号,找到数字时代更好的生活方式 🎊
> 特惠、好用的硬件产品,尽在 少数派 sspai 官方店铺 🛒