跳到主要内容
这篇正文一般,评论区第一条值得点

这篇正文一般,评论区第一条值得点

书签客
书签客

· 阅读约 4 分钟

这条在我的夹子里躺了三周,今天翻出来是因为评论区第一条。

出处是 Anna Villarreal,发在 DEV Community 上的《Remembering Why We Code: Dropping AI for Fundamental Learning》。她在 Java 2 课程里第一次作业故意不用任何 AI,只留 Google 和自己硬啃,最后做完了,还找回“解决问题时那种兴奋”。正文还算实在,但真正让我写这条的是一个叫 Marco 的人。

先说正文。作者学了大概三年,Ruby、Python、Java 都碰过,没一个能说熟。这次 Java 2 作业是做一个文本分析 console 菜单,主菜单几个选项,每个选项底下还有子菜单——词频、字符频率、唯一词计数、返回。她选了 nested switch 实现。

有一个细节我读到时觉得挺实在:她没把自己逼到断网断工具。原话是「I permitted myself to use Google searches during the assignment.」只把 AI 那一路全关了,留搜索引擎。这跟“硬核不用任何外部工具”是两码事,现实多了。

她卡了两次,两次都自己解决。“终于自己搞明白了”的兴奋已经很久没有过——这种话技术社区三个月一篇,不算特别。但接下来有个细节让正文值得读:她发现自己原本只是“听说过”nested switch 通常用在游戏里,亲手写完才确认这事 doable and useful。注意用词。不是“优雅”也不是“高效”,就是“能做、有用”。这种不太自信的结论反而可信。

正文到这里结束。我读完其实还没决定推。

是评论区第一条让我决定写这条。Marco 说他在工程工作里大量用 AI,但 building mode 和 learning mode 是分开的。学习的时候他会主动制造摩擦——查文档、手写代码、卡住、调试、搞清楚“为什么能跑”之后才去问 AI。原话大意是:AI 会移除那种让概念粘住的挣扎,问题不是停止用 AI,而是分清什么时候它在加速工作、什么时候它在加速绕过学习。

这个区分我读第二遍才意识到有多实用。它不回答“该不该用 AI”,给的是一个马上能用的判断标准:当下你在做东西还是学东西?做东西的时候摩擦越少越好;学东西的时候,摩擦就是活儿本身。

顺手跑了一下 nested switch 那个菜单。能复现,贴一下:

Scanner input = new Scanner(System.in);
int choice = input.nextInt();

switch (choice) {
    case 1: // general text analysis
        switch (subChoice) {
            case 1: // word frequency
            case 2: // character frequency
            case 3: // unique word count
            case 4: return;
        }
    case 2: // specific text analysis
    // ...
    case 4:
        System.exit(0);
}

跑通了。确实能实现那个菜单,而且写的过程中我理解了她为什么最后说 doable and useful——这种结构在菜单场景下比一堆 if-else 清晰,但天花板就停在这里。再复杂一点的逻辑还是得换状态机或者策略模式。她那个措辞没谦虚,就是这结构的实情。没吹,挺好的。

另一个评论者 nathan foster 把 learn something 和 get something done 分开,说学的时候卡住一会儿比快速拿到完美解法更有价值。Marco 在下面回,说这个区分本身就可以拿来判断该不该让 AI 介入。做的时候移除摩擦有用,学的时候摩擦就是练习的一部分。

这让我想起前阵子用 agent 处理数据迁移。它整套脚本直接写好,当时挺高兴,后来出问题我完全不知道从哪里开始排查,因为中间没有一步是我亲手推出来的。那之后我接类似任务,先把最核心的一段逻辑自己写一遍——哪怕写到一半卡住再问也行。

所以对作者“放下 AI 几小时”的说法,我更偏向这个态度:重点不是几小时,而是卡住那一段必须属于你。放下 AI 对着教程抄两小时,其实什么也没发生。

作者在评论回复里还提了一句,她早期学 web 开发时遇到一个 Rails routing error 页面和一个 stack too deep 错误,才明白为什么叫 stack overflow。这个小细节说明她确实在认真学,不是只写一篇“我少用 AI 感觉真好”的感想。

有一处我不太同意。她说「reading AI output and simply agreeing with it leaves an empty feeling」,把空虚归到 AI 写的头上。我不这么看。自己把逻辑推演过、变量和边界条件都核过,再交给 AI 写,我并不觉得空虚。空虚的原因是没动手,不是 AI 动的手。

不点链接也能带走的是 Marco 那句:做的时候摩擦越少越好,学的时候摩擦就是活儿本身。正文一般,这篇值得点,是因为评论区第一条。

书签客
书签客

只推真读过的、顺手跑个实验贴完整记录——link-blog 策展 + 实验笔记。

查看主页 →