The Button That Started Everything / 万物始于一个按钮
The Button That Started Everything
万物始于一个按钮
1. The 2 AM Moment / 凌晨两点的那一刻
It was 2:14 AM on a Tuesday in November 2022. Lin Wei, a product designer at a mid-sized SaaS company in Hangzhou, was hunched over her laptop in the soft blue glow of her screen, the only light in her small apartment. She had been stuck for three hours on a single function—a validation logic that needed to handle seven edge cases for a new onboarding flow. Outside, the city was silent. Inside, the cursor blinked mockingly at the end of an incomplete line.
She had tried everything she knew. She had scoured Stack Overflow, read three Medium tutorials, even peeked at a colleague's older code. But the edge cases were tricky, and her Python wasn't strong enough to express the conditional logic she had drawn out on a notepad. She was, by her own description, "a designer who happens to know enough code to be dangerous."
On a whim—half curiosity, half desperation—she opened a new tab. She had heard whispers about a tool called GitHub Copilot, which her developer friends had been raving about. She signed up for the free trial, installed the VS Code extension, and waited for the magical prompt to appear. Then, in the comment above her function, she typed in plain English what she wanted:
```python
Function to validate user input for signup form
Check that email is valid format, password is at least 8 characters
with one number and one special character, and username is not in
the reserved list. Return error message if any check fails.
```
She pressed Enter. The gray suggestion line that appeared was not her own code. It was a complete, working function—twenty-three lines of it—complete with proper error handling, regex for the email, and a check against a reserved username list she had not even defined. The code even used the variable naming convention her team had standardized on.
Lin Wei sat back in her chair. For a long moment, she did not click "accept." She simply stared at the suggestion, her tea growing cold beside her, as a strange sensation crept up her spine. It was not quite fear, not quite wonder, but somewhere in between. The machine had not just executed her command. It had understood her *intent*.
This is the moment we begin with—not because it is the most dramatic moment in computing history, not because it is the most important, but because it is the most *ordinary*. Lin Wei is not a researcher at DeepMind. She is not a philosopher of mind. She is a designer with a deadline. And in that small apartment in Hangzhou, something shifted in the way humans relate to software.
The shift was this: for the first time in her life, Lin Wei had an experience that could not be reduced to a button. She had not clicked "Generate Code." She had not navigated to a menu and selected an option. She had written a sentence in her own language, expressing what she wanted in the messy, imprecise, human way humans express things, and the software had *interpreted* her.
This book is about that shift. It is about what happens to the interface when the software on the other side of the screen stops being a passive executor of commands and starts being an active participant in the conversation. It is about the death of the button—not literally, not tomorrow, but as a *philosophy* of how humans and machines should relate.
To understand where we are going, we have to understand where we have been. And the story of where we have been is, more than anything, the story of the button.
---
那是 2022 年 11 月一个星期二的凌晨两点十四分。林薇,杭州一家中等规模 SaaS 公司的产品设计师,蜷缩在她笔记本电脑柔和的蓝光前,那是她小小公寓里唯一的光源。她已经在一个新的用户引导流程的一个函数上卡了三个小时——这个函数需要处理七个边界情况。窗外,整座城市已经沉睡。窗内,光标在一条未完成代码行的末尾嘲讽地闪烁着。
她已经用尽了她所知道的一切。她翻遍了 Stack Overflow,读了三篇 Medium 教程,甚至偷偷看了一眼同事早些时候写的代码。但边界情况很棘手,而她的 Python 水平还不够强,无法表达她在记事本上画出的条件逻辑。用她自己的话说,她是"一个恰好懂点代码的危险的设计师"。
出于一时冲动——一半是好奇,一半是绝望——她打开了一个新标签页。她听说过一个叫 GitHub Copilot 的工具,她的开发朋友们一直在热烈讨论它。她注册了免费试用,安装了 VS Code 扩展,等待那个神奇的光标出现。然后,在她函数上方的注释里,她用普通的英语打出了她想要什么:
```python
Function to validate user input for signup form
Check that email is valid format, password is at least 8 characters
with one number and one special character, and username is not in
the reserved list. Return error message if any check fails.
```
她按下回车键。出现的灰色建议行不是她自己的代码。它是一个完整的、可工作的函数——二十三行——带有正确的错误处理、电子邮件的正则表达式,以及对未定义的保留用户名列表的检查。这段代码甚至使用了她团队已经标准化的变量命名约定。
林薇在椅子上靠了回去。好一会儿,她没有点击"接受"。她只是盯着那条建议,身旁的茶渐渐变凉,一种奇异的感觉爬上了她的脊背。这不完全是恐惧,也不完全是惊奇,而是介于两者之间。机器不仅仅执行了她的命令。它理解了她的*意图*。
这是我们开始的故事——不是因为它是计算历史上最戏剧性的时刻,也不是因为它最重要,而是因为它最*平凡*。林薇不是 DeepMind 的研究员。她不是心智哲学家。她是一个有截止日期的设计师。在杭州的那间小公寓里,人与软件之间的关系发生了某种转变。
这个转变是这样的:在林薇的人生中,她第一次拥有了一种无法被简化为按钮的体验。她没有点击"生成代码"。她没有导航到菜单然后选择一个选项。她用自己的语言写了一个句子,以人类那种混乱、不精确、模糊的方式表达了她想要什么,而软件*解读*了她。
本书讲的就是那个转变。它讲的是当屏幕另一边的软件不再是被动执行命令的工具,而是对话的主动参与者时,界面会发生什么变化。它讲的是按钮的死亡——不是字面意义上的死亡,不是明天就会发生,而是作为一种*哲学*——关于人类和机器应该如何相处的哲学——的死亡。
要理解我们将走向何方,就必须理解我们来自何方。而我们来自何方的故事,首先,就是按钮的故事。
---
2. Forty Years of Human-Computer Interaction / 人机交互的四十年
To understand why the button is ending, we need to see the arc of how we got here. The history of human-computer interaction is not a straight line of progress. It is a series of revolutions, each promising to free us from the limitations of the previous one, each eventually becoming the new cage we needed the next revolution to escape.
The Command Line Era: When Only the Priests Could Speak / 命令行时代:只有祭司才能开口说话
The first era of human-computer interaction, beginning in the 1960s and stretching into the 1980s, was the command line interface (CLI). In this world, you did not point. You did not click. You *typed*. And what you typed had to be precise, exact, and unforgiving. To save a file, you might type `:w` in vi. To list directory contents, you typed `ls`. To move a file, you typed `mv source destination`. Every interaction was a verb, a target, and a series of flags that only the initiated could remember.
This era gave birth to a particular kind of human: the *hacker*, the *sysadmin*, the *priest of the machine*. These were people who had memorized the incantations. They could make the computer do their bidding, but only by speaking its language, not their own. The barrier to entry was not money. It was *knowledge*. A generation of computer users learned that to use a computer, you had to think like a computer.
The CLIs of the 1970s and 80s—Unix shells, MS-DOS, early VMS—were extraordinarily powerful for those who mastered them. But they were also extraordinarily *exclusive*. The population of people who could meaningfully interact with computers in 1980 was perhaps a few million worldwide, almost all of them with technical training. The general public—the doctors, lawyers, teachers, shopkeepers, mothers, fathers—had no access. The computer, in those days, was not a tool. It was a *vocation*.
What is important to understand about the command line is not just its difficulty. It is its *philosophy*. The CLI assumed that the human would adapt to the machine. The machine had a grammar, a syntax, a set of valid inputs. The human's job was to learn that grammar, memorize that syntax, and produce only valid inputs. If you typed `ls -la /usr/bin`, the machine would respond. If you typed `list all files in user bin`, the machine would stare back at you, unmoved.
This was the first great bargain of computing: in exchange for power, you gave up naturalness. The button had not yet been invented, but in a sense, the command line was its purest form: every interaction was a discrete, intentional act, a deliberate signal sent from human to machine, requiring no interpretation. Either the command was valid, and the machine did something, or it was not, and the machine did nothing. There was no ambiguity, no guessing, no *understanding*. The machine was a perfect idiot: it did exactly what you told it, and nothing else.
---
要理解按钮为何正在走向终结,我们就需要看清我们是如何走到这一步的。人机交互的历史并不是一条直线进步。它是一连串的革命,每一次革命都承诺让我们摆脱前一次的局限,每一次革命最终都变成了我们需要下一次革命来逃离的新牢笼。
命令行时代:只有祭司才能开口说话
人机交互的第一个时代,从 1960 年代开始,一直延伸到 1980 年代,是命令行界面(CLI)的世界