跟着运来兄搭建自己的生物信息小书房。趁年轻,读几本硬书,到老了慢慢反刍。
《Vibe编程:探索AI时代编程新范式》是咱们生信书房介绍的第79本书。
今年我关掉了很多自动续费,省下来体验层出不穷的模型,微信阅读的会员续费留了下来,因为咱们这个系列还需要呐。而且自从Agent出来之后,觉得更加需要通过阅读来补充大块知识。尽管体验可以很快,但是回味却经久绵长。
在高铁上,我打开《Vibe编程:探索AI时代编程新范式》,想从生信角度看看,编程这次范式变化,讲如何影响生物信息的日常工作。

屏幕暗下去的时候,我盯着那支看不见的笔想:一个天天和单细胞数据、Python脚本打交道的生信人,什么时候也开始操心"编程范式"了?
这不是我操心,是编程这个把很多人卡在生信门口的技能,如今已经变了。让我回顾一下编程这件事的发展历史,清晰明了:
从机械穿孔卡片到结构化编程,从面向对象到函数式范式,每一次变革都重塑了人类与机器对话的方式。如今,我们面临一场新的革命——Vibe编程。
那么,什么是Vibe编程?
得益于大语言模型技术的持续突破,开发者已不再需要逐行敲击代码,而是通过自然语言表达意图,与AI协作完成从创意到落地的全流程。
说白了,就是“意图驱动、人机协作”为核心的新开发范式。它不需要我们在键盘上一行一行写代码了。
这让我想起今年回家收麦子的场景。之前在麦田用镰刀一行一行连同秸秆一起割,割成一把一把的,再用脱粒机打成小麦。现在直接上联合收割机,农民伯伯在路边看着,别割到别人家的就行了。割完一块地,就装袋子拉回家了。

一棵麦子没动手,麦子就拉回家了。这不就是“Vibe收麦”吗?
所以对我们生物信息人来说,是不是就可以快乐拥抱Vibe编程了?别着急,多年不回家的你,还知道自己的田在哪吗?还知道地边子在哪吗?
AI生成代码虽然高效,却经常忽略
代码质量 可维护性 安全性 性能等长期稳定交付
这些关键因素,主要原因是AI总是着急快速交付,又为了保持局部正确,加入过度的判断和重复的代码。所以一个经验老道的生物信息分析工程师,在处理自己熟悉的数据时,更愿意用自己已经写好的代码,而不是让AI来写。
书中用了一个很有意思的比喻,AI写的代码,是面条式代码(spaghetti code):向面条一样混乱、职责交织、难以理解与维护。看上去也是一条一条的,但是没有人会一根一根地吃面条。
然而,范式的变换不以人的意志为转移。
荀子在《劝学》里写:"君子生非异也,善假于物也。"
我当初读这句,只当是劝人借力。做了几年生信才慢慢懂:所谓善假于物,不是懒,是把精力从"怎么使工具"挪到"使工具去做什么"。
Vibe编程也是这个理。它没让生信人变轻松,是让我们把最贵的注意力,从"写对一行代码"转移到"判对一个结论"。
那支清晨划线的笔,最后停在了"善假于物"四个字上。
生信人的核心竞争力,正在悄悄迁移:从"会写脚本",到"会验收脚本"。工具越来越能写,越来越需要有人,稳稳地坐在验收的位置上。
这就是我们的核心竞争力。
# 《Vibe编程:探索AI时代编程新范式》目录- 封面- 版权信息- 内容提要- 自序- 前言 - 本书的适用对象- 资源与支持 - 提交勘误 - 与我们联系 - 关于异步社区和异步图书- 第1章 起源 - 1.1 走进Vibe编程 - 1.1.1 让想法落地 - 1.1.2 让创意优先于技术 - 1.2 从"命令式"到"意图式"的转变 - 1.2.1 回顾命令式编程 - 1.2.2 从命令到意图 - 1.2.3 开发流程对比 - 1.3 Vibe编程的基石 - 1.3.1 大语言模型技术的成熟 - 1.3.2 市场需求的催化 - 1.3.3 开发者的核心痛点 - 1.4 小结- 第2章 编程方式的演变 - 2.1 编程语言的进化 - 2.1.1 与机器对话 - 2.1.2 从二进制到符号语言 - 2.1.3 高级编程语言的兴起 - 2.1.4 结构化编程与面向对象编程的突破 - 2.1.5 现代编程范式的多元化 - 2.2 编程交互的进化 - 2.2.1 物理介质上的编程雏形 - 2.2.2 从行编辑到全屏交互的突破 - 2.2.3 编辑·编译·调试一体化的集成化时代 - 2.2.4 跨平台生态与插件化架构革新 - 2.3 低代码开发与无代码开发的崛起 - 2.3.1 图灵完备理论体系 - 2.3.2 早期技术探索 - 2.3.3 概念形成与初步实践 - 2.3.4 市场发展期 - 2.3.5 传统低代码与无代码平台的局限性 - 2.3.6 AI赋能低代码和无代码平台 - 2.4 小结- 第3章 Vibe编程应用生态 - 3.1 通用大语言模型辅助编程 - 3.1.1 大语言模型问答 - 3.1.2 大语言模型的编程能力 - 3.1.3 对话式辅助编程的优缺点 - 3.2 IDE辅助编程 - 3.2.1 IDE插件集成AI - 3.2.2 AI原生集成IDE - 3.2.3 IDE的AI集成对比 - 3.3 端到端Agent编程 - 3.3.1 端到端Agent编程理念 - 3.3.2 端到端Agent编程产品 - 3.3.3 运作机制与系统架构 - 3.4 应用形态的未来 - 3.4.1 新的应用形态 - 3.4.2 应用形态与用户分层 - 3.5 小结- 第4章 Vibe编程应用场景与实践案例 - 4.1 应用场景剖析 - 4.1.1 产品原型快速构建 - 4.1.2 "全民开发"兴起 - 4.1.3 启蒙利器与进阶阻碍 - 4.1.4 企业内部流程自动化:效率提升与整合难题 - 4.2 实践案例详解 - 4.2.1 独立开发者的成功案例 - 4.2.2 创业公司的应用实践 - 4.2.3 大型企业的转型 - 4.2.4 开源社区的适应与创新 - 4.3 小结- 第5章 最佳实践 - 5.1 提示词工程技巧 - 5.1.1 为什么好的提示词很重要 - 5.1.2 提示词工程的核心原则 - 5.1.3 提示词优化实例 - 5.1.4 实用提示词模板合集 - 5.1.5 为Cursor配置提示词 - 5.2 需求规划 - 5.2.1 需求分析 - 5.2.2 编写产品需求文档 - 5.2.3 选择AI友好的技术栈 - 5.2.4 使用AI生成需求文档 - 5.3 代码审查与优化 - 5.3.1 AI的局限 - 5.3.2 常见质量缺陷 - 5.3.3 低劣代码可能导致项目失败 - 5.3.4 AI时代的代码审查指南 - 5.3.5 建立代码审查体系 - 5.4 工程化管理 - 5.4.1 工程化简介 - 5.4.2 适用于Vibe编程的轻量级工程化体系 - 5.5 小结- 第6章 实战案例 - 6.1 环境配置 - 6.1.1 准备工具 - 6.1.2 项目脚手架 - 6.2 项目需求梳理 - 6.2.1 梳理需求说明文档 - 6.2.2 梳理技术设计文档 - 6.2.3 梳理项目执行计划文档 - 6.3 后端开发 - 6.3.1 实现思路 - 6.3.2 开发后端服务程序 - 6.3.3 代码审查 - 6.3.4 接口测试 - 6.3.5 补充完善更多功能 - 6.4 Web端系统开发 - 6.4.1 实现思路 - 6.4.2 开发Web页面 - 6.4.3 代码审查 - 6.4.4 让AI按预期输出Web页面 - 6.4.5 调用服务器端真实接口 - 6.5 应用部署 - 6.5.1 理解代码部署逻辑 - 6.5.2 将应用部署到Vercel - 6.5.3 借助GitHub Actions实现持续部署 - 6.6 小结- 第7章 局限与挑战 - 7.1 用户视角 - 7.1.1 普通用户 - 7.1.2 专业开发者 - 7.2 产品视角 - 7.2.1 尴尬的产品定位 - 7.2.2 成本困境 - 7.2.3 不同的用户体验 - 7.3 开发者的心智革命,普通人的技术平权 - 7.3.1 旧时代开发者的思维转变 - 7.3.2 新时代开发者的核心技能 - 7.3.3 一深多广,跨学科能力的崛起 - 7.3.4 普通人的技术平权 - 7.3.5 职业发展与教育路径的调整 - 7.4 小结- 后记
夜雨聆风