重磅体验:AI编程不能取代程序员,但程序员会用的话确实很爽

 目前AI不能完全代替人类,但能与AI打配合的人做事的效率会大大提升。

01

Cursor真的很行

最近,通过Cursor的AI编程能力,帮助我在几个小时内在不需要自己写一行代码的情况下,创建了一个帮助我整理投资持仓数据的网页应用。过去很多年,我都要定期花费起码半小时的时间,依赖手工维护Excel来整理这些数据。这个应用完全解决了这个问题。

9cb0e6be843a55a82fac37e429f3b6ce.jpeg

图中为测试数据


使用Cursor最爽的地方是,从官网下载安装后,只要用一个邮箱注册一下就可以免费使用了。不需要梯子,也不需要提供大模型的API Key(光这两项就可以拦下很多人的尝试)。我们知道万事开头难。对于一个程序员来说,对于非必要性的开发,搭建开发环境的时间和过程就能让人打退堂鼓。而Cursor的AI编程能力开箱即用,背后已经连接好多款主流大模型,本身就是IDE,非常便捷。

我按照教程,简单试了几个Prompt,比如“帮我搭建一个自我介绍的网页”,它立即生成了一个HTML网页的代码。当然,网页里自我介绍的实际内容需要我在代码中补充和修改。

通过尝试,结合Prompt Engineering的知识,Prompt里的需求描述得更精准和具体,它能生成的代码就更能贴近目标。

抱着试一试的心态,我准备了以下的Prompt,作为帮助我整理投资持仓数据的网页应用的具体需求(PS: 在书写这段需求的过程中,Cursor也会根据上文自动提示下文,如果判断它提示的下文是合适的,按tab键就可以让它自动补全内容):

bd106471ecefa360991e7fc40b73fb4a.png

神奇的事情发生了。它很快就帮我生成了具备我需要的大部分的功能的网页应用,它包含html、css和JavaScript。

我打开这个网页,并尝试输入一些真实的股票和基金代码、买入数量和买入价格,它能帮我保存这些持仓数据。但发现它不能根据输入的代码查询到正确的股票或基金名称和现价。

我查看代码,发现它并没有实现实时获取股票和基金现价的功能。我跟Cursor对话,让它提供相关方法的实现。它生成了新的代码,我一键把它应用到原代码文件中。

再测试,发现它还是不能根据输入的代码查询到正确的股票或基金名称和现价。手动尝试它使用的API链接,发现API本身就不可用。我跟Cursor对话,告诉它原来的API不可用,有没有替换的。它生成了新的代码,我一键把它应用到原代码文件中。

再测试,成了。

在我的需求里,提出了要根据持仓数据画一个饼图和折线图,它需要引用一个外部的js包。我测试打开网页时发现加载很慢,饼图和折线图没有显示出来。调试发现是代码里的js包链接无法访问。我告诉Cursor这个问题,让它给出替换方案,它给出了几个方案,我尝试其中一个解决了问题。

当我发现它画的饼图的切分维度不是我想要的,我也只需要告诉Cursor我想要的切分维度,它就会生成修改代码,实现我想要的。

我一开始所需要的基本功能,在一小时内已经得到实现。这个期间,我没有写一行代码,一直是通过跟Cursor对话来完成。加上一些测试、读代码、调试的过程。

在这个基础上,我不断地有增加功能的想法,继续通过对话来实现。它厉害的地方是,新增功能的代码需要正确嵌入到已有代码中。而它的一键应用功能大部分时候可以准确无误地应用到原代码中,实现安全地无缝升级。随着功能越来越多,原始代码越来越复杂,这个能力非常重要。

保险起见,在每新增一个功能前,我都会在Git里commit一个版本,方便回退。而Git也是Cursor自带的功能,非常方便。以下是到目前为止,增加的功能:

94db7a7730ec10255155087d4a3c080d.png

通过几个小时的对话,在没有自己写一行代码的情况下,我已经基本得到了一个我所需要的整理投资持仓数据完整功能的网页应用。

ac0cdae57f8d4997a39a90ed2ed62d00.png

它就是一个html文件,可以在没有任何外部依赖的情况下独立运行。数据目前是保存在浏览器的localStorage里。

如果需要把数据保存在独立文件中,Cursor也能根据这个需求生成相应的代码,不过实现这个功能需要起一个Node.js的后端服务,增加了依赖,使用起来变得复杂。

我的替代方案是让原来的html网页增加导出和导入的功能,这样就有手动备份数据,也不怕丢数据了。


02


感悟

经过使用Cursor创建一个完整功能的网页应用的经历,我认为AI编程能力确实很强,它非常聪明,对我的需求的理解非常精准。但要完成我想要的产品,我作为程序员还是起主导作用,AI编程就像辅助驾驶,它能让我的工作变得轻松很多,而人的编程、调试、测试的能力还是需要的。

目前国产新能源车的辅助驾驶也进入了AI时代,取代原来靠人工写规则的方式,在端到端大模型技术的加持下,通过数据驱动的训练,在短短几个月内实现了突飞猛进的进步,比如理想汽车已经在2024年10月份实现了从A点车位到B点车位的全场景有监督的智能驾驶能力,人类可以从司机转换成监工,除了偶尔需要接管一下,其余大部分时间都不用自己开车。

目前智能驾驶也离不开司机,但对司机的要求会大大降低。主动安全能力(遇到前方突发情况的紧急刹停、紧急绕行)也是减少交通事故的重要手段。这些都是体验过就回不去的功能。

同理,AI编程并不适合完全不懂编程的小白,使用它的还得是能读懂代码、会调试和测试的程序员,也不适合所有场景。但对于通用需求的开发,它萃取了这么多年来无数程序员积累的精华,确实可以极大地提升效率,降低编程门槛,保障代码质量,保证相同问题的最优解,避免反复重复造轮子,编程水平也比大部分水平一般的程序员优秀。

想象一下,同样的那个需求,如果我靠自己从零开始写,不光要花多几倍时间,对于已经没有编程一段时间的我来说,熟悉相关的编程语言都需要花不少时间,在开发过程中,也需要不断搜索资料学习大量不熟悉的库和框架的使用,肯定是一个龟速的过程,也大概率会虎头蛇尾,没有信心做下去。

当然,我相信我用的那么顺利还是因为我的需求比较通用,互联网上有大量现成的代码实现。

对于公司业务需求的开发,它肯定没有上下文去理解很多业务需求,也自然无法生成相应的代码。不过在业务系统开发过程中,也会有很多通用功能的开发。除此之外,根据代码写注释、写测试代码、代码重构、修复漏洞、修Bug、创建测试数据等方面,AI编程都有大量用武之地。

目前AI不能完全代替人类,但能与AI打配合的人做事的效率会大大提升。

作为一种提效技术,特别是它学习了巨量的人类知识和经验,实现了知识认知和能力的平权,我们每个人都应该拥抱AI。只不过每个人拥抱的方式不一样。有些人是做AI研发的,绝大多数人是使用者。使用AI的人不必懂相关的技术和原理,就像一个优秀的司机并不需要是Car Engineer一样。

目前AI已经是非常聪明的助手,这么好的助手,不好好利用真的是浪费生命。

建议找一个具体想做的事情,找一个合适的工具,动手用起来。行动是最好的老师,不管看多少有关的文章和视频,都不如亲自动手的理解来得深刻。

PS: Cursor 为新用户提供14天的免费试用期,在此期间用户可以享受所有功能的访问权限。在试用期间,用户可以进行500次快速请求,但试用期结束后将无法继续使用这些高级功能。至于试用期过后如何继续白票,可以在网上搜索续用攻略。


觉得文章不错,顺手点个“点赞”、“在看”或转发给朋友们吧。

8871f44a6957614b5315fb3b12b42ef1.png

相关阅读:

短短3个月,我们在GenAI上的进展

团队管理者应该参与编程吗?

成为理想的百万分之一是幸运的


关于作者


ce49448805c9ac90918dd9e88b1e5e64.png

关注公众号看其它原创作品

坚持提供对你有用的信息

觉得好看,点个“点赞”、“在看”或转发给朋友们,欢迎你留言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值