不是程序员?有了 AI,只要有一个想法就足够了
快速阅读: 据《爱尔兰时报》最新报道,本文作者虽然不是程序员,却通过一种名为“vibecoding”的新AI趋势,创造了多个实用的小型应用程序。这种技术允许用户通过简单输入提示来构建应用,无需编程知识。尽管vibecoding目前更适合爱好项目,但它展示了AI在简化软件开发方面的潜力,同时也引发了关于其潜在负面影响的思考。
我不是程序员,不会写一行Python、JavaScript或C++代码。除了青少年时期短暂地建过网站和玩过Flash动画之外,我从未想过放弃新闻业去从事科技行业。然而,最近几个月我一直在疯狂编程。我创造的东西有:一个能够转录并总结长播客的工具,一个可以整理我的社交媒体书签并使其成为可搜索数据库的工具,一个可以告诉我一件家具是否能放进汽车后备箱的网站,以及一个叫午餐盒小伙伴的应用,它可以分析冰箱里的食物并帮助我决定为儿子的学校午餐打包什么。
这些创作之所以可能,是因为人工智能和一种称为“vibecoding”的新AI趋势。“vibecoding”是AI研究员安德烈·卡帕斯提出的一个术语,它是对当今AI工具的一种简洁表达,即使是非技术爱好者也可以通过在文本框中输入提示来构建功能齐全的应用程序和网站。你不需要懂编程就能进行vibecoding——通常只需要有一个想法和一点耐心就足够了。“这只是看看、说说、运行一下,然后复制粘贴,大多数时候都能成功。”卡帕斯上个月写道。
我自己进行的vibecoding实验是为了制作我所说的“个人软件”——小型、定制的应用程序,解决我生活中的特定问题。这些不是大科技公司会开发的那种工具。它们没有真正市场,功能有限,有些甚至只能勉强运行。但这种方式构建软件——用一两句话描述问题,然后看着强大的AI模型开始工作,构建一个定制工具来解决它——是一种震撼的经历。这让我感受到类似AI眩晕的感觉,类似于我第一次使用ChatGPT时的感受。而且这是我展示当今AI模型能力的最佳方式,这些模型现在可以自动化大量基本的计算机编程,并且很快可能在其他领域也能做到类似的事情。
AI编程工具已经存在多年。它们旨在帮助专业程序员更高效地工作,部分是通过完成他们的代码行来实现的。你仍然需要知道如何编程才能充分利用它们,并在AI卡住时介入。但在过去一两年里,新工具被开发出来,利用更强大的AI模型,即使是新手也能像专业人士一样编程。这些工具包括Cursor(光标)、Replit(重新编译)、Bolt(闪电)和Lovable(可爱的),工作方式相似。给定用户的提示后,工具会生成设计,决定最佳的软件包和编程语言,并开始构建产品。大多数产品提供有限的免费使用,付费层解锁更多功能和构建更多东西。
对于非程序员而言,vibecoding感觉像魔法。输入提示后,神秘代码行快速闪过,如果一切顺利,几秒后会出现一个可工作的原型。用户可以建议修改和修订,当他们满意时,可以将新产品部署到网络上或在电脑上运行。这个过程可能只需几分钟,也可能需要几个小时,具体取决于项目的复杂性。我让Bolt构建了一个应用程序,可以根据上传的冰箱照片帮我为儿子准备学校的午餐。应用程序首先分析任务并将其分解成各部分,然后开始工作。它生成了一个基本的网页界面,选择了一个图像识别工具来识别冰箱里的食物,并开发了一个算法来根据这些物品推荐餐点。如果AI需要我做决定——比如是否希望应用程序列出推荐食物的营养信息——它会给我几个选项。遇到障碍时,它会尝试自行调试代码,或退回前一步骤尝试不同方法。
大约在我输入提示10分钟后,午餐盒小伙伴——这是AI为我的应用起的名字——准备好了。它建议了一个通用的火鸡三明治。并非所有vibecoding实验都成功了。我已经尝试了几周想构建一个能自动回复邮件的“收件箱自动飞行员”工具。当我尝试将AI工作流集成到Google Photos和iOS语音备忘录等应用时遇到了障碍。AI有时也会出错。有一次,当我尝试为附近的轮胎店建网站时,AI编造了商店Yelp页面上的虚假评论并添加到推荐页。另一次,当我尝试将我写的一篇长文变成交互式网站时,AI只包含了一半的内容而忽略了另一半。换句话说,vibecoding仍需有人监督机器人或至少在旁边监督。而且它更适合爱好项目,而非关键任务。这可能不会长久。许多AI公司正在开发完全替代人类程序员的软件工程代理。AI已在编程竞赛中取得世界级成绩,多家大科技公司,包括谷歌,已将大量工程工作外包给AI系统。如果我是初级程序员——AI最可能取代的那种——我可能会担心我的就业前景。但我只是一个喜欢摆弄并构建改善生活工具的人。而vibecoding——或者实际编程——是AI明显提升的领域。
自从上个月在我的播客上讨论vibecoding体验以来,我收到几十人消息,他们也在用AI辅助构建自己的工具。同事们告诉我他们为坚持饮食而开发的营养应用,或者他们用来总结电子邮件新闻通讯的工具。读者们发来他们建立的追踪鸡蛋价格的网站,或刮取洛杉矶Zillow列表以发现帕利塞兹火灾后租金上涨情况的网站。这些工具本身意义不大。新的和值得注意的是,业余爱好者现在只需几次按键就能构建以前需要工程团队才能完成的产品。我对AI并不盲目乐观,也不忽视如果AI编程应用程序继续进步可能会对社会产生的影响。我认为,一个能够自动化构建有用软件的AI也可能自动化创建恶意代码,甚至可能导致自主网络攻击。我也担心软件工程只是AI工具取代白领职业的第一个领域。但现在,构建应用程序以自动化生活中烦人或耗时的任务似乎是对AI最好的用途之一。所以我会继续vibecoding——至少直到我的孩子能自己打包午餐。
——这篇文章最初发表在《纽约时报》上。
(以上内容均由Ai生成)