Beware fast tools
打开互动全文版(逐段中英对照 + 图/公式 + 论文问答)→本文警告人们不要过度依赖快速工具,指出它们虽然能提高效率,但可能削弱深度思考、创造力和工作质量。作者通过个人经验论证,慢工出细活,并建议在适当时候选择更费时但更扎实的方法。
[](https://www.mynameismartin.co.uk/)- [x]
[](https://www.mynameismartin.co.uk/)- [x]
[](https://www.mynameismartin.co.uk/)- [x]
你可能在设计圈听过这个说法。他们可能是对的。生成式 AI 现在可以用代码制作原型。我们可以跳过设计工具。设计和代码是同一回事。
You might have heard this in design circles. And they could be right. Generative AI can prototype in code now. We can skip the design tool. Design and code are the same thing.
你在 Figma 中设计。五天十个高保真界面。它们看起来已经完成,甚至可能测试结果不错。设计 _感觉_ 完成了。
You design in Figma. Ten high-fidelity screens in five days. They look finished, they might even test well. The design _feels_ done.
组件不能干净地映射到前端结构。响应式行为被证明是隐含的而非定义的。约束出现了。在设计工具中看起来精确的东西,在真实媒介中变得模糊不清。
Components don’t map cleanly to the front-end structure. Responsive behaviour turns out to be implied rather than defined. Constraints emerge. What looked precise in the design tool turns out to be ambiguous in the real medium.
这一步——从设计到生产代码的转换——感觉笨拙。但 Figma 在速度和可控性之间提供了良好的平衡,并且是行业标准。不使用它会带来额外的摩擦,所以我们容忍它。
This step — the translation from design to production code — feels clunky. But Figma offers a good balance of speed and control, and it’s the industry standard. Not using it would add its own friction, so we tolerate it.
这些问题并非随机。它们源于工具本身对网络的理解方式。当你选择一种工具时,你也继承了它的思维方式。
These problems weren’t random. They came from the way the tool itself understood the web. When you choose a tool, you also inherit its way of thinking.
像 Figma 这样的工具并不在网络媒介中工作。它们近似于网络。Figma 有自己的网络工作模型——一个简化且带有偏见的模型。排版、颜色、组件、变量、令牌、自动布局——这些都是该模型的一部分。
Tools like Figma don’t work in the medium of the web itself. They approximate it. Figma has its own model of how the web works — a simplified and opinionated one. Typography, colour, components, variables, tokens, auto-layout — these are all parts of that model.
而隐藏在该模型中的是假设、捷径和偏见,由构建工具的人有意或无意地嵌入。
And hidden inside that model are assumptions, shortcuts, and opinions, embedded deliberately or not by the people who built the tool.
Figma 不是网络,所以最终设计必须在代码中实现。实现过程中出现的问题对任何从事过大规模网络项目的人来说都很熟悉。
Figma wasn’t the web, so eventually the design had to be implemented in code. The problems that appear during implementation are familiar to anyone who has worked on web projects at scale.
多年来,我们将这些问题描述为媒介不匹配。
For years we described those problems as a medium mismatch.
思路很简单:如果 Figma 不是网络,那么解决方案就是在网络本身中设计。
The thinking was simple: if Figma isn’t the web, then the solution is to design in the web itself.
用代码做原型。消除不匹配。直接在目标媒介中设计。当时这个解释令人信服。但也许媒介不匹配并不是真正的问题。真正的问题是工具有偏见。
Prototype in code. Remove the mismatch. Design directly in the target medium. At the time this explanation felt convincing. But maybe the medium mismatch wasn’t the real issue. The real issue was that the tool had opinions.
大型语言模型已经到来。借助 Claude Code 及类似工具,你可以直接通过代码生成原型。智能体式 AI 能够并行工作,而且速度很快。没有 Figma。不会意外采用 Figma 的网页模型。你是在实际的媒介中进行设计。
Large Language Models have arrived. With Claude Code and similar tools you can generate a prototype in code directly. Agentic AI can work in parallel, and it’s fast. No Figma. No accidental adoption of Figma’s model of the web. You’re designing in the actual medium.
你可以理解为什么人们说 Figma 已死。
You can see why people are saying Figma is dead.
但问题并未解决。它们转移了——并且变得更难察觉。
But the problems aren’t solved. They’ve moved — and become harder to see.
LLM 生成的原型看起来像是正确的媒介。它是代码。它能在网页浏览器中打开。它能运行。
An LLM-generated prototype looks like it’s in the right medium. It’s code. It opens in a web browser. It runs.
但它是受训练数据塑造的代码,是一个由训练集生成的统计模式,该训练集针对的是合理性而非正确性。
But it’s code shaped by training data, a statistical pattern generated by a training set tuned for plausibility over correctness.
你消除了从 Figma 到代码的不匹配。但你引入了更糟糕的东西:模型认为解决方案应该是什么样子与实际问题的需求之间的差距。
You’ve eliminated the Figma-to-code mismatch. But you’ve introduced something worse: the gap between what the model thinks a solution looks like and what your actual problem needs.
模型对架构有看法。关于如何组织事物。关于哪些模式有效。这些看法被嵌入它生成的代码中。而这些看法来自从已有内容中获取的训练数据。
The model has opinions about architecture. About how to structure things. About what patterns work. Those opinions are baked into the code it generates. And those opinions come from training data sourced from what already exists.
如果你的问题符合这些模式,那很好。你会得到一个快速的原型。
If your problem fits those patterns, great. You get a fast prototype.
但如果你的问题需要真正新颖的东西——不符合模型训练内容的东西——模型往往会用熟悉的模式掩盖这种细微差别。
But if your problem needs something genuinely new — something that doesn’t fit what the model has been trained on — the model will tend to paper over that nuance with familiar patterns.
这是一种不同的不匹配。一种你看不见的不匹配。
It’s a different kind of mismatch. One you can’t see.
你看不见它,因为代码看起来正确。它处于正确的媒介中。它能运行。它带有经过数百万示例训练的信心。它被设计成默默地填补空白,而不是停下来表示‘我不知道’。
You can’t see it because the code looks right. It’s in the right medium. It works. It has the confidence of something trained on millions of examples. It’s designed to fill gaps silently rather than stop and say ‘I don’t know’.
所以你在它之上构建。你完善它。当你意识到有多少已经被为你决定时,它已经建了一半。现在你不再是从一个工具转换到另一个工具。你是在解开内嵌的假设。
So you build on top of it. You refine it. By the time you realise how much has already been decided for you, it’s half-built. And now you’re not translating from one tool to another. You’re unpicking baked-in assumptions.
这就是快速工具的真正危险。它们让你越过本应质疑其假设的时刻。
And this is the real danger of fast tools. They move you past the moment where their assumptions should be questioned.
使用 Figma 时,不匹配是可见的。你必须从一种媒介切换到另一种。这种摩擦迫使你思考。问“为什么这个组件无法转换?”让你阐明在 Figma 中无意识做出的决定。
With Figma, the mismatch was visible. You had to move from one medium to another. That friction forced you to think. Asking “Why doesn’t this component translate?” made you articulate decisions you’d made unconsciously in Figma.
使用大语言模型代码时,没有摩擦。代码看起来能工作。思考感觉已经完成。
With LLM code, there’s no friction. The code appears to work. The thinking feels done.
但事实并非如此。模型替你做了决定——关于结构、权衡、优先级的决定。而且因为代码能工作,因为它已经处于目标媒介中,因为它看起来已经完成,你不会质疑这些决定,直到它们出问题。
But it’s not. The model made decisions for you — decisions about structure, trade-offs, priorities. And because the code works, because it’s already in the target medium, and because it appears finished, you don’t question those decisions until they break.
问题不仅仅在于媒介。问题在于工具中嵌入的假设。大语言模型并没有消除这些假设——它们将这些假设隐藏在看起来已经完成的代码内部。
The problem wasn’t just the medium. The problem was the assumptions embedded in the tool. LLMs don’t remove those assumptions — they hide them inside code that already looks finished.
Figma 可能已经死了。但根本问题并未消失。
Figma probably is dead. But the underlying problem hasn’t gone away.
多年来,设计与实现之间的摩擦迫使我们直面工具中嵌入的假设。当一个组件无法转换时,我们必须追问原因。
For years, the friction between design and implementation forced us to confront the assumptions embedded in our tools. When a component didn’t translate, we had to ask why.
LLM 生成的原型消除了这种摩擦。代码能运行,看起来已完成,结构似乎也合理。但塑造它的假设是随工具而来的。
LLM-generated prototypes remove that friction. The code runs, it looks finished, and the structure appears to make sense. But the assumptions that shaped it arrived with the tool.
工具不仅帮助你构建东西,它们还塑造了什么是可能的。而现在,进行这种塑造的工具是一个基于已有内容训练的不透明系统。
Tools don’t just help you build things. They shape what feels possible. And now the tool doing that shaping is an opaque system trained on what already exists.
一个快速的工具让你很容易在事情被充分思考之前就得到一个看起来已完成的结果。工具以我们看不见的方式塑造结果并影响决策。当我们意识到时,改变它们已经不再快速。
A fast tool makes it easy to arrive at something that looks finished long before it’s been properly thought through. The tool shapes the outcome and influences decisions in ways we can’t see. By the time we realise, changing them isn’t fast.
上一篇:作为设计师,我如何应对采用 AI 的压力 下一篇:离开 Squarespace
Previous post How I’m dealing with the pressure to adopt AI as a designerNext post Leaving Squarespace
Martin 是一名设计师,致力于为政府、医疗、慈善和私营部门设计复杂的数字服务和产品。
Martin is a designer working on complex digital services and products across government, healthcare, charity, and the private sector.