数字时代的警示故事
在斯坦尼斯瓦夫·莱姆的一部小说《浴缸中的回忆录》中,所有的书面材料突然化为尘土。虽然这只是科幻情节,但在我们的数字世界里,类似的场景却真实存在。
数字的“死亡警告”
如果你在网络上发布了一些内容,那么它迟早会消失。最理想的情况是,网站重组时链接发生了变化;更常见的是,这些内容完全丢失了。唯一的希望是有人在互联网档案馆(Wayback Machine)中保存了它们。
需要登录才能访问的内容更加脆弱——当这些平台关闭时,里面的所有东西都会永远消失。即使没有关闭,任何服务(无论是免费还是付费)都可能随时限制你对内容的访问,甚至让你无法找到你需要的东西。比如几年前你在Twitter上发布的内容,现在可能已经转移到X平台上,再过几年,可能只有登录、订阅付费账户才能看到,或者干脆完全无法访问。
即使你自己托管内容也并非万无一失——忘记续费服务器费用或遭遇硬件故障,你的内容依然会消失。即便数据幸存下来,访问它也可能很困难。例如,WordPress博客将文章存储在数据库中,如果服务器升级失败,数据可能无法恢复。我曾经有过一个PHP照片画廊崩溃的经历,幸好所有照片我都以简单JPG格式按日期组织保存了下来。
唯一可靠的解决方案是将内容保存在无需专用软件即可打开的格式中——这种格式在未来几十年内仍能保持可用性。
为什么内容值得保存?
保存内容有很多理由,从象征个人“永生”的数字遗产到实用性的需求,甚至仅仅是为了归档本身。对我而言,关键原因包括:
- 我想保存和拥有自己写下的东西,它们是我的一部分,是我的历史和个人经历。
- 我希望将所有东西集中在一个地方,并且方便搜索。
- 我希望通过人工智能工具来利用这些内容(例如查找相似笔记、总结、作为上下文使用)。
- 我希望能够随意重用或分享这些内容(电子邮件、博客文章、电子书等)。
纯文本的力量
作为一名数据科学家,我习惯于将事物转化为向量。但作为一个狂热的档案爱好者,我更喜欢将它们转化为Markdown格式。
最持久的保存方式当然是将内容刻在石头上——它可以保存数千年。然而,这种方式既不实际,也无法轻松搜索或分享。次优的选择是使用UTF-8编码的纯文本文件和Markdown格式。只要计算机存在,我们就能够轻松读取纯文本文件。
Markdown文件本质上是带有一些额外语法的纯文本文件,用于定义段落、列表和链接等常见元素。这种格式故意避免精确控制字体等显示细节。根据“最少能力原则”,我认为这是一个优点。相比之下,PDF是一种功能强大的格式,强大到可以运行《毁灭战士》游戏。
我个人使用Obsidian这款笔记应用,这是我每天都会用到的工具。尽管它有许多强大的插件,让我忠于它的核心原因是它的简单性——所有内容都存储在普通文件中。没有专有格式的束缚,正是它吸引人的地方。
对于博客写作,大多数静态网站生成器都支持Markdown格式。本文也正是用Markdown撰写的。无论是在记笔记还是发布文章时使用相同的标记语言,都能让分享变得顺畅。
我的实践方法
我梦想着能够自动将我写下的或遇到的一切内容转换成Markdown格式。然而现实并不那么完美——在想要归档一切的自闭症冲动和因注意力缺陷多动障碍而难以维护系统之间,总有一种矛盾。
因此,我采取了一种务实的方法:当我发现值得保存的内容时,我会将其复制到Markdown文件中,并添加元数据,如发布日期、来源和相关标签。

特别是我会保存那些将来可能有用的内容,比如会议演讲摘要、桑拿活动描述、技术解释等。这样未来更容易找到和重用。
当我发现自己正在搜索旧内容(比如想分享或重温的Facebook帖子)时,我会立即保存它。如果发现某篇博客文章消失了,我会从Wayback Machine中检索并保存它。当转发带有详细说明的邮件时,你也猜到了,我会保存它。
一次值得搜索的内容就是值得永久保存的内容。
担心保存太多?别担心,磁盘存储很便宜,而对于文本文件来说,几乎是免费的。
助我一臂之力的工具
有时手动复制就足够了。但对于更复杂的格式,AI工具非常有价值。经过Markdown训练的AI模型擅长处理和提取内容。你可以用它们将在线文本或PDF(如幻灯片)转换为Markdown格式。例如,文章处理数百万个PDF以及为什么Gemini 2.0改变了这一切展示了这一过程。
针对某些来源,我创建了半自动化的解决方案。例如,我编写了一个Python脚本,将Kindle高亮和笔记转换为Markdown格式。
还有许多工具可以帮助转换不同格式。其中最灵活的是pandoc,它可以将数十种格式互相转换,从Word文档到LaTeX再到其他中间格式。
社区还为特定平台开发了专用工具。例如,有工具可以将Medium帖子转换为Markdown(通过导出或直接通过URL),还有归档Reddit讨论的工具等等。
由于我们处理的是轻量级的文本文件,备份的方式也有很多。Git特别适合管理这些内容的版本控制和同步。
此外,在我使用的每个服务中,我都会定期下载自己的数据。即使是JSON、XML、HTML、CSV等格式的混合数据,我也会有。即使我暂时没有时间将它们整理成Markdown格式,至少数据还在那里。
下一步计划
我渴望有一个全面的工具,可以导出所有内容,尤其是社交媒体上的内容。无论是引发许多人共鸣的帖子,还是具有个人意义的内容,都值得保存。
虽然Facebook提供了一些有限的数据导出功能,但并不完整。例如,无法保存整个讨论线程,而这往往是帖子中最宝贵的部分。
至于你呢?你经常搜索哪些内容?你已经归档了什么,又希望保存什么呢?
注释
- 链接腐烂问题可以通过类似Perma.cc的服务解决,但它们也可能最终消失。研究表明,法律文件中一半的链接会在5年内失效。本文的重点在于个人内容的保存和搜索。↩
- 出于实际原因和囤积癖好,我在Pinboard中收集了超过14,000个链接。是的,我已经下载了这些数据的JSON格式副本。↩
- 我并不声称Markdown是唯一解决方案,其他格式也有其合理之处。我的重点是UTF-8编码的纯文本。如果你更喜欢其他标记语言(如reStructuredText、AsciiDoc、Org-Mode)或纯粹的未格式化文本,原则仍然适用。在某些情况下,原始格式也可以工作,例如JSON或代码。↩
- HTML(超文本标记语言)是一个反例。它原本旨在丰富文本语义,但现在主要被用作构建用户界面的工具。尽管这种演变带来了许多好处,但HTML已不再适合作为纯内容存储格式。↩
- 本博客使用Nuxt 3 Content构建,源码托管在GitHub。这是我对Jekyll和Gridsome版本的延续。得益于Markdown的支持,平台之间的迁移非常顺利——参见新博客:从Medium迁移到Gridsome。从Gridsome迁移到Nuxt 3 Content的过程中,Cursor IDE提供了很大帮助。Astro是另一个逐渐流行起来的静态站点生成器。↩

