我妻子召唤Charlie Munger来规划家庭预算。在ChatGPT里。不是开玩笑。
她会说"像Charlie Munger审查我们家庭财务一样行动",然后把本月的开支告诉它。这家伙会回复类似"你在教育支出项目上把投资和花费搞混了"或"那个基金有你没有计算的隐性成本"这样的话。这些是Munger会说的话。用Munger会用的语调。
我也做了同样的事。但我没有召唤投资者,而是召唤了一个不同的专家:Edward Tufte。
谁是Edward Tufte(以及为什么你应该关心)
Edward Tufte可能是对我们如何可视化数据影响最大的人。他的书《定量信息的视觉显示》(1983年)是那种永远改变你看图表方式的罕见文本之一。40多年来,它一直是全世界大学、新闻编辑部和设计工作室的绝对参考。
他的原则非常简单:
- 最大化数据-墨水比。 你图表的每个像素都必须传达数据。如果不传达数据,就删掉它。
- 不要装饰。 网格、3D渐变、阴影、装饰性边框……所有这些都是Tufte称之为图表垃圾的东西。分散数据注意力的视觉垃圾。
- 让数据自己说话。 如果你需要用200字的图例来解释你的图表,那图表就设计错了。
Tufte还发明了迷你图——那些能放在一行文字内的微型图表。图表不需要标题、坐标轴或图例来交流的想法。只需要数据。
我的图表很糟糕
我正在构建一个macOS菜单栏应用,用来监控我的Claude Max配额。应用的一部分显示一个迷你图——一个小小的线图——显示我消费配额的速度。
我的第一个版本有这些问题:
- Y轴固定在0到100% — 如果你的使用量在8%,图表就是一条贴在底部的平线。85%的空间什么都不显示。
- 在80%处有一条阈值线 — 任意的,没人要求,不传达任何有用信息。
- 显示当前%的浮动标签 — 冗余的:下面的卡片已经显示了确切数字。
- “pp/min"作为单位 — 每分钟百分点?连我都不知道这意味着什么。
- 线下方的渐变填充 — 纯装饰。图表垃圾。
简单说:我在一个56像素高的图表中违反了Tufte的每一个原则。
技术:循环召唤专家
我没有试图自己修复它(显然我对此没有判断力),而是做了不同的事。我让Claude成为Tufte。
提示词:
像Edward Tufte审查这个图表一样行动。
分析VelocityCardView的SwiftUI代码。
识别你数据可视化原则的所有违规之处。
对于每个违规:
1. 违反了什么原则
2. 为什么这是个问题
3. 具体的处方(代码,不是哲学)
要无情。如果某些东西是图表垃圾,就说出来。
用PASS或FAIL评估。
关键是最后部分:PASS或FAIL。因为没有这个,LLM会给你温和的建议,告诉你"总体上还可以”。有了二元判决,它必须承诺。不能躲在"有改进空间"后面。
然后是循环:
应用Tufte的处方。
实施每个改变。
不要停止迭代,直到他给出认可。
四轮直到PASS
我第一轮没通过。第二轮也没有。第三轮也没有。
第1轮 — FAIL(6个处方):
- 自适应Y轴而不是固定的0-100
- 消除80%的阈值线(图表垃圾)
- 消除浮动标签(与下面的卡片冗余)
- 用简单词语替换"pp/min"(上升、下降、稳定)
- 将摘要行折叠为仅时间窗口+趋势
- 将迷你图高度从44提高到56点
我实施了6个。第二轮。
第2轮 — FAIL(1个处方):
- 消除右边缘的%标签。完全冗余:下面的配额卡片已经显示了数字。让迷你图占用全部宽度。
只有一件事,但Tufte不会与冗余妥协。
第3轮 — FAIL(4个处方):
- 上下文Y轴:
最小值 - 3到最大值 + 5,最小10点范围用于视觉分辨率 - 趋势作为单一枚举(不要计算两次)
- 线条颜色为中性灰色 — 形状传达信息,不是颜色。根据当前值给整条线着色对历史撒谎
- 比例阈值:
max(2, 平均值 * 0.1)而不是固定数字
第三个处方我很喜欢。我想不出来。如果你的配额在80%,整条线是红色的,你在说它一直都很高。但20分钟前它在40%。颜色撒谎。形状不会。
第4轮 — PASS。
“迷你图现在实现了迷你图应该达到的目标:最小空间内的最大信息,零图表垃圾。”
四次迭代。从一个平庸的图表到一个可能不会让Tufte抓狂的图表。
通用模式
我所做的可以总结为:
1. 召唤专家:"像[专家]审查[你的工作]一样行动"
2. 要求二元判决:PASS或FAIL
3. 如果FAIL → 实施所有处方
4. 回到步骤1
5. 重复直到PASS
妙处在于LLM不会拍你的后背。二元判决迫使它承诺。如果它说FAIL,会确切地解释为什么以及该怎么做。
这就像与该领域专家进行无限代码审查。凌晨3点。不会因为你第四次请求审查而生气。
Charlie Munger和家庭预算
回到我妻子。她的提示词类似:
你是Charlie Munger审查家庭预算。
应用你的思维模型:机会成本、
无知投资、安全边际。
像你在伯克希尔哈撒韦董事会上一样
直接和残酷诚实。
她把月度开支告诉它,虚拟Munger会说"你在支付冗余保险 — 那80€/月投资20年的机会成本是X"或"你没有足够的安全边际来应对医疗意外"这样的话。
这真的是Munger会说的吗?不完全是。但模型读过Munger公开写和说的所有内容。它对他的思维方式有统计学上可靠的表示。不是他本人,但是除了阅读他40年的股东信之外可获得的最佳近似。
你能召唤谁?
这个技术适用于任何留下足够公开作品的专家:
| 你的问题 | 召唤谁 | 为什么 |
|---|---|---|
| 图表设计 | Edward Tufte | 《定量信息的视觉显示》 |
| 个人理财 | Charlie Munger | 思维模型,伯克希尔信件 |
| 技术写作 | Steven Pinker | 《风格感知》 |
| 软件架构 | Martin Fowler | 《重构》、《企业应用架构模式》 |
| 谈判 | Chris Voss | 《永远不要平分差异》 |
| 批判性思维 | Daniel Kahneman | 《思考,快与慢》 |
| 生产力 | Cal Newport | 《深度工作》 |
| 管理 | Andy Grove | 《高产出管理》 |
关键是专家要有足够的公开作品。书籍、演讲、采访和文章越多,模拟效果越好。
限制(因为确实有)
在你开始召唤爱因斯坦来处理下一个pull request之前,一些细节:
这不是真正的专家。 这是基于公开文本的统计近似。模拟的Tufte不会有真正的Tufte从未发表的新想法。这是提炼,不是复活。
对原则比对品味更有效。 “Tufte对这个图表会说什么?“有效是因为Tufte有明确和编码化的原则。“Steve Jobs对这个设计会说什么?“更滑溜因为Jobs很多时候凭未记录的直觉操作。
循环很重要。 没有FAIL → 实施 → 重新评估的循环,这个技术只是一个漂亮的提示词。魔法在于迭代直到通过。我的情况是四轮。可能会更多。
你可以混合专家。 没什么能阻止你先要求Tufte审查图表,然后Jakob Nielsen审查可用性,然后Don Norman审查用户体验。三个专家审查员,价格为零。
蒸馏的导师制
以前,要咨询智者,你必须去臭烘烘的达戈巴沼泽,吃可疑的炖菜,忍受一个绿色小老头颠倒的说话方式。现在你在终端里就有了。
这些思想家几十年来发表、辩论、教授和捍卫的一切都被压缩在神经网络的权重中。当你告诉模型"成为Tufte”,它激活那些特定模式,返回非常像Tufte会告诉你的东西。
这和让大师当面指导一样吗?显然不是。但比没有任何标准地设计图表要好无穷倍,而那正是我在做的。
我妻子总结得最好:“这就像有一个读过Munger所有著作的财务顾问,24小时可用,不收费,没有利益冲突。”
很难与此争论。
相关: 如果你对我如何使用LLMs构建软件(以及它们可能造成的灾难)感兴趣,这篇文章是一个非自愿系列的一部分。首先是44封虚构邮件,然后是AI编造数据而测试验证它们,现在是AI引导专家帮你设计。至少这一章有个愉快的结局。