
一
我最近总睡不好。
不是因为缺什么。该有的我都有了。是脑子停不下来——半夜醒来,里面像开了十几个标签页,每一个都在转。这个项目的架构没定,那个东西的法典还差两条,某个仓库的 issue 没回,某篇文章写了一半卡住了。我这辈子好像一直在搭东西,搭完一个又一个,从来没有"搭完了"的那一刻。
但真正让我睡不着的,是一块硬盘。
是我自己的硬盘。里面是我自己的东西。我都快忘了它的存在。它跟着我换了好几台电脑,搬了好几次家,像一件我不记得为什么留着、又始终没删的旧物。
前阵子我把它翻出来,让机器帮我把那堆老掉牙的数据库迁移成今天能用的格式。
迁移完,它给我报了个数。
我盯着那个数字,半天没动。
我以为我了解我自己。我不了解。
二
如果肯低头认输,是否就能换一段平的日子。不再被抛上浪尖,不再被高高举起、重重摔下。
像窗台上那盆花,自己长,自己开,没人看,也没人扰。
我养死过两盆。一盆忘了浇,一盆记得浇。后来我明白,有些东西活不活,跟你尽没尽力,关系不大。
但下一盆,我还是会浇。
三
那个数字是:两亿零四百八十二万八千二百九十四个字符。
两亿字。
不是我写的。我一个字都没写。这些是我用十几年,一条一条从各处搬进来的中医资料——药典、医案、教材、期刊、论述、偏方、栏目。我是搬运工。但搬运工自己也不知道,他这辈子到底搬了多少。
直到机器替我数了一遍。
三十一万八千八百一十一条记录。
《四库全书》收书三千四百六十一种,总字数约八亿。也就是说,我硬盘里这堆东西,是《四库全书》的四分之一。
我不知道该高兴还是该发慌。我只知道,我用人生里很长的一段时间,攒下了一座我自己都没见过全貌的城。然后我把它锁进硬盘,转身去搭别的城了。
我那时候二十四岁。我以为我有的是时间。
四
我二十四岁那年,往这个库里录进了第一条。
是一篇讲话稿,标题叫「转变观念 依法行政 努力做好药品监督管理工作」。措辞干巴,公文腔调,没有任何文学性。
但它是第一条。一个二十四岁的人,要给一座中医的库打地基,没从《黄帝内经》起,没从哪位名医起,从一篇干巴巴的公文起。也许是随手,也许是想先把架子搭起来,再慢慢往里填肉。
最后录进去的一条内容,记录的时间是凌晨三点零四分。
标题是「安神解郁合欢花」。
凌晨三点,我还在录。合欢花治的,正是失眠。
《神农本草经》记载它的功能:「安五脏,和心志,令人欢乐无忧。」
我录的两亿字,第一条是一篇讲药品监管的公文,最后一条是一味治焦虑的花。从二十四岁起手,一直录到我自己都忘了它的存在。
我只是把散在各处的东西,一条一条归拢到了一起。
五
这两亿字里有什么。
七万零三百五十味中药。每一味摆着三十八个字段——名称、性味、归经、功效、主治、用法、用量、化学成分、药理、毒性、炮制、各家论述、临床应用。不是每条都填满,框架在那里。
十六万六千四百二十三条论著和方剂。从《伤寒论》的逐条注释,到现代期刊的临床报道,从民间偏方到院士论文。
八万零八百零九篇综合文献。新闻、政策、动态、科普,什么都往里塞。
还有一千二百二十九个栏目,撑起一棵导航树。
这是一个人,用十几年的下班时间,一条一条贴进去、归进去的。
那些夜晚我还记得。白天有正经事,深夜才是自己的。屏幕亮着,茶凉了,眼睛花了,但不想睡——因为只有这几个小时,我是这堆东西的主人,而不是某个角色、某个身份、某个别人需要的工具人。
六
数据库里还有图片。一万多张,大半是扫描的书页——几十本医书、教材、典籍,一页一页扫进来的。《针灸大成》一百三十七页,一页不缺。
但这些图,只是图。里面的字,搜不出来,引不出来,程序碰不到。
我想把它们变成文字。我试了很多办法,一个又一个多模态模型,最新的、最贵的都喂了进去,连 Claude 都试了。
它们都能"看懂"这些图,会用很流畅的现代汉语复述给我听。但那是转述,不是还原。它们把「麻黄三两」说成「麻黄用量大约三两」,把「覆取微似汗」解释成「盖被子让自己微微出汗」——意思都对,张仲景的原话却没了。碰到模糊的地方,它们不肯说看不清,而是顺着自己见过的东西,编一段填进去。差之毫厘,谬以千里。
机器学会了"理解",却丢掉了"忠实"。
两亿字的正文,是干净的、能搜的、活的。但那些扫描页背后的字,始终困在像素里。我看得见它们,我够不着它们。
像琥珀里的虫子。形状完好,已经不再是活的。
七
我在这两亿字里读到最多的一味药,叫当归。
补血;活血;调经止痛;润燥滑肠。
「当归」这两个字,就是"该回去了"的意思。
李时珍说,当归是女人的要药,「有思夫之意,故有当归之名」——丈夫远行在外,妻子在家把身子调养好,等他回来。另一个说法更朴素:当归能让气血「各归其所」。该去哪里的血,去到哪里。气逆了就降,血瘀了就活,寒了就温,热了就凉。
各归其所。
我想,这也是我现在想做的事。让这些数据,各归其所。
不该躺在我硬盘上发霉。不该锁在一个没人维护的老格式里。不该只属于我一台机器、一个人。
回到学中医的学生那里。回到深山义诊的村医那里。回到研究药理的实验室。回到某个半夜失眠、随手搜"安神助眠"的普通人那里。
当归。该回去了。
八
另一味让我想很久的,是青蒿。
苦,寒。入肝、胆经。清热解暑,退虚热。
底下有一句论述:「化湿而不伤阴。」
五个字。一千多年前某位不知名的医生写下的。他不知道青蒿里有什么成分,不知道青蒿素,不知道疟原虫。他只知道:这味药治这种病,而且不伤病人的阴液。
后来屠呦呦从葛洪那句「青蒿一握,以水二升渍,绞取汁,尽服之」里得到启发,用低温萃取出了青蒿素。二〇一五,诺贝尔奖。救了几百万人。
一个古人随手写下的偏方。一千年后被人读到了。
而我这七万味药、十六万篇论著里——谁知道哪一条藏着下一个青蒿素。
只是你不去翻,它就永远是死的。
九
数据里有张仲景《伤寒论》的第一方,麻黄汤。
麻黄三两,桂枝二两,杏仁七十个,甘草一两。上四味,以水九升,先煮麻黄减二升,去上沫……覆取微似汗。
一千八百年前的煎药法,精确到「水九升」「减二升」。每个数字都是一个病人一个病人试出来的。
「去上沫」——煮麻黄会浮起一层沫,要撇掉。为什么撇,张仲景没说。一千八百年来无数医家想替他解释这个"去沫",到今天也没定论。
但没人敢不撇。
中医的脾气就是这样:它不告诉你为什么,只告诉你怎么做。你照做了,病好了。至于为什么好,那是后人的事。
数据里有一句论《伤寒论》的话,击中了我:
古人因病以施方,无编方以待病。
古人是有了病,才去拟方。不是先拟好方子,等着病来。
张仲景写这本书,写的是病历——被庸医误治过、他接手来救的病历。他的家族原本两百多人,不到十年死了三分之二,「伤寒十居其七」。他「感往昔之沦丧,伤横夭之莫救」,才发愤写下这些救误之法。
一个亲眼看着至亲大批死去的人写下来的东西,和坐在实验室里写论文的人,心境不一样。
十
我做了二十年开源。
站群、系统、框架、工具,一个一个写出来,一个一个免费交出去。我搭过一座只装得下我一个人的城堡,然后把门拆了,告诉所有人随便进。
技术会被复制,我早就认了。有一天我发现,我守了二十年的护城河,是水做的。一个比我小十几岁的人,把我的东西原样端走,代码一个字节不差。
他没端走的,是另一样东西。可那样东西,我也送不出去——它压根不是能打包的文件。
我跟一个老朋友通电话,说起这些年。他问我,那你图什么。
我说我也不知道。
我交出去那么多。到头来,我自己到底得到了什么。
十一
所以我想清楚了,这堆东西也开源。
但我说不出"文化传承"这种话。这词太重,我扛不起。喊"守正创新""传承精华"的人,文章发在核心期刊上,拿着国家课题的钱。我不是。我没那么大。
我图什么,其实自己也答不上来。大概只是不甘心——不甘心它烂在我硬盘里,不甘心一堆有用的东西,因为没人去翻,就一直是死的。这种不甘心不需要理由,不需要口号,不需要使命感。就是觉得可惜,然后就做了。
说到底,我只是在整理我自己的东西。 一个人收拾自己堆了十几年的旧物,不需要开发布会。
下面是我打算怎么做,写实一点,免得显得像情怀。
迁移已经做完了。三十一万八千八百一十一条记录,一行不差,转成了四种格式,交叉对账,零误差。
- SQLite 单文件,六百五十一兆。 一个文件就是一座完整的药房。下载下来,不装任何软件,任何能开 SQLite 的工具都能查七万味药的性味归经功效主治。这是给个人和离线用的。
- PostgreSQL 备份,五百五十九兆。 导入就是一个完整的知识库后端。想搭搜索、搭 API、搭手机应用,从这里起。
- MySQL 脚本,五百六十六兆。 一条命令,老系统无缝对接。
- CSV 和 JSON。 用 Excel 打开是表格,用 Python 读是数组。给做数据分析和二次开发的人。
不开源的部分我也说清楚:那一万多张扫描书页不放出来。那些是出版社的版权,几十本现代教材,不是我的,也不是公有的。我只放文本数据、元数据索引,和迁移用的工具代码,附上来源说明。古籍、药材数据、公有的那部分,够做研究,够做应用了。
许可证我倾向 CC BY 4.0,署名给来源本身。我大概不会专门搞一个漂漂亮亮的仓库,挂上我的名字、写一篇 README 告诉全世界"看,这是我做的"。我做不出那个动作。这些知识本来就不是我的,我只是把它从一块旧硬盘上,搬到一个谁都进得来的地方。
我做的,是一座桥。桥的价值不在桥本身,在有人从上面走过去。
十二
这个库里,我建的最后一个栏目,名字只有三个字——
傅青主。
明末清初的奇人。医学家、书法家、思想家、反清义士。他的《傅青主女科》到今天还是中医妇科的必读书。
他活了七十八岁,前半生明朝秀才,后半生清朝遗民。明亡之后出家做道士,穿道袍,住土窑,行医为生,拒绝仕清。康熙征召博学鸿儒,地方官把他强抬到北京,他卧床不起,拒考。朝廷没办法,放他回了山西老家,继续给人看病,不收钱,或者只收一点点。
他的字极好,尤其草书,后人评「宕逸浑脱」。用药奇特,剂量大胆,不拘常法,「认证真切,用药峻猛」。
在乱世里,他守住了自己的东西。医术、气节、学问、字。
录到傅青主,我就停下了。我不太记得为什么。也许是没精力了,也许是别的事来了,也许只是累了。
而我们呢。在这个一切都在飞快更迭、人人忙着刷短视频的时代——有什么东西,是我们愿意花十几年去守的。
我没有答案。但我知道有人守过。我自己也守过一点。守了十几年,守了三十一万条,守了两亿字。
然后差点把它忘在硬盘里。
十三
合欢花。朝开暮合。白天张开,夜晚合拢。
「小叶两列,日暮相叠如睡,及朝,又渐分离,故有合欢、夜合之名。」
日暮相叠如睡。及朝,又渐分离。
这些数据也像合欢花。它们在这个时代张开过——散在服务器上、硬盘上、网盘上。但终有一天会合拢:服务器关停,链接失效,格式淘汰,然后又是漫长的黑夜。
每一代人都觉得自己活在"信息时代"。但每一代人的载体都在被淘汰。软盘没了,光盘没了,当年那套数据库格式,今天的年轻人已经不会打开了。数据不会腐烂,读数据的工具会消失。
我想做的,只是在合拢之前,把花瓣夹进书页里。压平。用最笨、最通用的格式留下来,让它在下一个白天到来时,还能被读出来。
不是为我自己的白天。是为那些我没见过、还没出生的人。
十四
最后跟看到这里的各位说一句。
我有点忙。手上的东西一直没断过,这个也一样,我不会一口气把它推完。我会一点一点来——这周整理一块,下个月放出一批,什么时候弄好,什么时候算。没有 deadline,没有发布会,没有众筹,没有"求转发"。
它不会有名字,也不会有我的名字。等它好了,会有个地方,谁都能下载。
也许只有几十个人会下。也许只有一个学中医的学生,某个半夜打开那个 SQLite 文件,查一味药。也许只有一个写论文的研究生,在某个角落找到它,引了其中几条。
够了。
一个人找到一条有用的东西,这件事本身就值了。
我还是不太清楚,我这二十年到底得到了什么。
但今晚我想,至少这两亿字,我没让它烂掉。
记下来,就不会丢了。
记下来,就不会丢了。
数据统计:中药材 70,350 味 · 医方论著 166,423 篇 · 综合文献 80,809 篇 · 栏目 1,229 项。总计 318,811 条记录,约 2.05 亿字。
第一条:我二十四岁那年录的,「转变观念 依法行政 努力做好药品监督管理工作」。
最后一条内容:记录时间凌晨 3 时 04 分,「安神解郁合欢花」。
最后一个栏目:「傅青主」。
我生于 1989 年,二十四岁那年开始,把这些一条一条收了起来。直到机器替我数完,我才知道,自己攒了这么多。