点击⬇️图标关注 抓住你的灵感💡瞬间
“ 今日分享《塞掐 Side Chat》播客对Cursor创始团队工程师Ian。的访谈。休学创业不少见,因为Cursor用得多,被老板看上,招入麾下,见过没?可是说是一段奇遇。”
Ian,目前正在伊利诺伊大学香槟分校攻读电气和计算机工程学士学位,预计毕业日期为2025年冬季。此前,Ian高中时期就对编程充满热情的年轻开发者,因其JavaScript版Minecraft项目小有名气。因Cursor的大量使用引起Cursor CEO的注意。在大学三年级时,Ian放弃期末考试,参加了Cursor的work test,最终成功加入团队,成为创始人之外的第二位员工。通过Ian的分享,我们了解了Cursor团队的创业故事、团队成员的分工以及Ian的工作和生活状态。揭秘四位创始人Aman、Michael、Sualeh和Arvid通过不同的经历最终走到一起,合并团队开发Cursor。,也感受到了AI技术发展的迅猛,以及AI技术对程序开发领域的深刻影响。
一、如何加入Cursor篇
使用Cursor频率高到被CEO注意到并招揽加入团队,甚至为此放弃期末考。
Ian如何加入Cursor团队,背后有着一段充满热情和勇气的故事。
Ian从高中时期就热衷于程序开发,并积极投入各类个人项目。其中一个项目是用JavaScript重新编写了Minecraft游戏,这个项目在GitHub上获得了广泛关注,也让Ian在程序开发领域崭露头角。尽管该项目后来因为版权问题被下架,但Ian的才华已经引起了不少关注。
时间来到2022年9月,Ian开始频繁使用Cursor进行程序开发。由于使用频率极高,引起了Cursor CEO的注意。CEO发现Ian正是之前用JavaScript编写Minecraft的开发者,于是主动联系Ian,邀请他参加面试。
当时正值大学三年级上学期期末考试期间,但Ian毅然决然地放弃了考试,直接飞往美国参加Cursor的work test。work test是一种为期一周的实习,让公司评估候选人是否适合团队。最终,Ian通过了work test,成功加入Cursor团队,成为创始人之外的第二位员工,也是团队的第六位成员。
为了全身心投入Cursor的工作,Ian决定休学一年。他的父亲对此表示支持,鼓励他勇敢尝试。Ian的母亲则比较谨慎,担心这可能是诈骗,但最终也选择尊重Ian的决定。
Ian的故事展现了年轻开发者对于程序开发的热情和勇气,也体现了Cursor团队对于人才的重视和发掘。Ian放弃期末考试加入Cursor的决定,也反映了Cursor在程序开发领域的吸引力和潜力。
加入Cursor实际在做些什么工作?组织扁平,开发功能超级快速
加入Cursor后,Ian主要负责用户端的功能开发,专注于如何利用AI提升开发者的代码编写速度和效率。他的工作流程通常是先构思一个功能想法,然后利用基础的AI模型开发出功能原型,再与机器学习团队合作,将原型优化成更完善的功能。
Cursor团队规模较小,组织结构扁平,沟通方式非常直接。Ian表示,团队成员之间的沟通通常是面对面直接交流,例如走到同事面前拍拍肩膀,就可以开始讨论工作。
面对众多竞争者,Cursor团队选择专注于自身产品的开发,而非过度关注竞争对手的动态。他们认为,减少外部干扰,专心打造最佳的代码编辑器才是最重要的。当然,团队成员也会在闲暇时间浏览竞争对手的产品,并在内部群组中分享信息,但通常不会过度投入。
Ian认为,GitHub Copilot是Cursor最主要的竞争对手,因为Copilot的用户基数庞大。但由于Copilot隶属于微软,产品开发流程相对较慢,需要经过多层级的审批。相比之下,Cursor团队更加敏捷,可以快速开发和迭代新功能。
Ian以一个形象的比喻说明了Cursor团队的效率:在Cursor,开发者可以走到同事面前拍拍肩膀,一个功能就开发完成了;而在大型企业中,开发一个功能可能需要先提交申请,经过漫长的审批流程,最终才能决定是否开发。
这种扁平化的组织结构和高效的沟通方式,使得Cursor团队能够快速响应用户需求,不断推出创新的功能,保持产品的竞争力。
印象最深刻的事情:某天用户突然爆增,DM收到雪片飞来的反馈
在Cursor团队工作的过程中,让Ian印象最深刻的事情莫过于两个月前用户数量突然暴增的经历。当时,Twitter上开始出现大量关于Cursor的讨论,许多科技界的大咖也纷纷推荐Cursor,例如Andrej Karpathy就发推文表示"只需20美元,赶快去试试"。
由于Cursor团队并没有进行任何市场营销,这种自发的口碑传播效应让Ian十分惊讶。同时,用户数量激增也带来了一些挑战。大量的用户涌入Discord频道,反馈各种Bug和问题,甚至直接私信Ian要求修复问题。
Ian回忆道,当时他感到有些overwhelmed,需要处理大量信息和问题。用户数量增长的趋势图也呈现出陡峭的上升曲线,某一周的用户数量预测甚至出现了90度的垂直增长。
虽然Ian并不掌握确切的用户数量,但他表示美国用户最多,其次是中国和日本。
Ian分享了一个有趣的八卦,有一位日本用户专程飞到美国参加Cursor的用户聚会,这位用户不仅是Cursor的重度用户,还撰写了一本关于Cursor的书籍。然而,Ian也指出,由于AI技术发展迅速,Cursor的功能和界面也在不断更新迭代。这位日本用户表示,他计划将书籍内容更新到网页版,以便跟上Cursor的变化。Ian认为,在AI领域,出版纸质书籍可能不是一个好主意,因为AI模型、Prompt和界面都可能快速更新,导致书籍内容很快过时。
四位创始人怎么搓合在一起创业的?
Cursor的四位创始人分别是Aman、Michael、Sualeh和Arvid。
Aman和Michael是高中同学,后来一同进入麻省理工学院就读,并在大一时就成为了好友。毕业后,他们决定一起创业。Aman 和 Michael 最初尝试过 3D 模型 AI 相关的创业项目,但后来发现编程领域存在更多机会,于是转向了 AI 编程工具的开发。
Sualeh和Arvid也是大学时期的好友,毕业后也选择了创业。他们最初的创业方向是消息协议,后来转向了AI代码生成工具。
机缘巧合下,由于两组团队都需要寻找办公地点,他们最终选择了合租办公室。在交流过程中,他们发现彼此的创业方向非常相似,于是决定合并团队,共同开发Cursor。
团队成员的分工如下:
Michael担任CEO,负责招聘和公司管理等工作。 Aman负责机器学习方面的开发工作。 Sualeh负责基础设施方面的工作,例如服务器的扩展等。 Arvid负责产品和基础设施方面的开发工作。
除了工作之外,Ian的生活也相当充实。他通常上午10点到公司,在下午四点左右去健身或打篮球,晚上十点左右结束工作,一周工作6天。他认为,在小型公司工作的好处之一就是工作时间非常灵活,可以根据自己的需求安排工作和生活。
在休闲娱乐方面,Ian表示自己最近很少去电影院,更多是观看Netflix或Amazon Prime上的剧集,例如《黑袍纠察队》和《无敌少侠》。
在节目的最后,Ian也向观众发出呼吁:
Cursor团队正在积极招募人才,欢迎优秀的工程师加入团队。 欢迎大家试用Cursor,如有任何问题,可以通过Twitter私信Ian。
二、 AI编程产品思考篇
这部分可以结合,对于Lex Fridman四个创始团队的访谈播客(“Fast is Fun” Cursor创始团队看到了编程的未来图景)。
Cursor的功能与特色:小白也能轻松上手?
Cursor是一款专为程序开发者设计的AI驱动代码编辑器。其核心功能是将类似ChatGPT和Claude等大型语言模型整合至编辑器中,赋予开发者利用AI辅助代码编写的能力。
Cursor基于VS Code进行开发,可以看作是VS Code的一个分支版本,在其基础上添加了众多的AI功能。例如,它能够根据用户输入的代码,预测接下来可能输入的内容,并通过按下Tab键即可完成代码补全。正如Ian提到,Cursor甚至可以预测用户的下一个动作,例如编写新的一行代码或跳转到特定代码行,并通过Tab键快速执行。此外,Cursor还支持同时编辑多个文件的功能。
这种预测功能类似于Gmail的自动完成功能,可以根据用户已输入的内容预测接下来可能输入的句子。Ian特别强调,Cursor的预测功能不仅限于根据已输入的内容进行预测,即使用户输入错误,它也能够重新编写代码片段并进行修正。这对于程序开发来说非常重要,因为很多编程语言对语法要求严格,即使一个字母的错误也可能导致程序无法运行。
除了代码预测和修正功能,Cursor还具备强大的环境配置能力。例如,用户可以直接在聊天窗口中询问如何使用特定工具或函数,Cursor会提供相应的指导,甚至可以自动安装所需的软件包。这对于程序开发新手来说非常友好,可以大大降低程序开发的门槛。
然而,这种自动化配置功能也引发了一些讨论。例如,Fox认为,虽然Cursor的自动化功能可以帮助新手快速上手,但也可能导致用户对程序开发的底层原理缺乏了解。Ian对此表示理解,并认为用户需要根据自身情况决定是否深入学习程序开发的原理。他强调,Cursor旨在提高程序开发效率,用户可以根据自身需求选择是否使用其自动化功能。
Cursor除了作为代码编辑器,也逐渐被开发者探索出其他用途,例如用于笔记记录或替代Notion等文字编辑器。这表明,Cursor的功能不仅限于程序开发,其AI驱动的特性使其具备了更广泛的应用场景。
总而言之,Cursor是一款功能强大且易于上手的AI驱动代码编辑器,它不仅可以帮助程序开发新手快速入门,也能够提高经验丰富的开发者的工作效率。其不断发展的功能和应用场景,使其成为程序开发领域的一款值得关注的工具。
Cursor是否自行开发AI模型
Cursor的核心功能主要基于Claude模型,例如聊天窗口、Composer功能以及Command K命令等,都使用了Claude的能力。
但Cursor并非完全依赖外部模型,也开发了一些专属的AI模型。例如,代码自动完成功能,以及将GPT生成的代码快速应用到文件中的功能,都使用了Cursor自行训练的模型。
Ian解释道,如果让开发者手动将GPT生成的代码逐行添加到文件中,效率会非常低。因此,Cursor训练了一个名为"apply"的模型,能够快速将代码应用到文件中,速度可以达到每秒输入上千个字符。
由此可见,Cursor团队在利用大型语言模型的同时,也在积极开发针对代码编写场景的专属AI模型,以提升用户体验和效率。
AI让工程师可以专注于更重要的问题,但可能使初学者忽略代码背后的逻辑和原理
拥有多年程序开发经验的Ian,对于AI如何影响程序开发工作有着深刻的体会。他认同Cursor母公司Anysphere的理念:人类应该专注于解决更大的问题。
过去,程序开发者需要花费大量时间编写代码,例如将一个想法转化成代码可能需要耗费数十分钟。但现在,借助AI的力量,开发者可以更快速地实现想法,将更多精力投入到更重要的问题上。
Ian认为,AI的出现让程序开发者可以跳脱繁琐的代码细节,专注于更高层次的设计和逻辑。开发者只需将想法清晰地表达出来,AI就能协助完成代码的编写工作。
这种转变就好比建筑师设计房屋,过去需要亲自绘制每一块砖的细节,而现在只需设计好房屋的整体结构,AI就能协助完成细节的填充。
Ian强调,AI的出现并非要取代程序开发者,而是要解放开发者的生产力,让他们可以专注于更具创造性和挑战性的工作。
然而,Ian也意识到AI的普及可能会带来一些负面影响,例如初学者可能会过度依赖AI,而忽略了代码背后的逻辑和原理。这对于程序开发的长期发展是不利的。
能理解讨厌Cursor的人的想法,但是写代码的手艺不会被AI夺走
Ian理解一些人对于Cursor的抵触情绪。有些人认为编程语言的选择和代码的编写方式才是程序开发的核心,他们享受一行一行敲代码的过程,并从中获得成就感。
Ian表示,他也能理解这种感受,因为自己也曾是"代码完美主义者",非常注重代码的排版和风格。但随着AI技术的发展,他发现代码的细节不再是决定性的因素,更重要的是代码的功能和效率。
Ian将程序开发比作手工艺品制作,过去程序开发者如同手工艺人,一字一句地雕琢代码,注重细节和美观。而AI的出现则如同工业化生产,可以快速、高效地生成代码,满足基本的功能需求。
虽然工业化生产的产品可能缺乏手工艺品的独特魅力,但其效率和成本优势是不可否认的。因此,Ian认为,在程序开发中,应根据实际需求选择合适的工具和方法。如果只是为了实现基本功能,使用AI辅助工具可以大大提高效率。而如果需要精雕细琢某些代码片段,仍然可以选择手动编写。
Ian强调,AI并没有夺走程序开发者手工编写代码的能力,开发者仍然可以根据自身需求选择合适的开发方式。
然而,AI生成的代码也存在一些问题,例如可能会出现"幻觉",即生成的代码偏离预期目标。Ian以Reblets和Cursor的结合使用为例,说明了AI在代码生成过程中可能出现的错误。
Ian认为解决AI幻觉问题需要开发者具备一定的经验和判断力,例如及时发现代码错误并进行修正。此外,AI技术本身也在不断发展,未来可能会出现更强大的AI模型,能够自我修正错误,避免幻觉的产生。
目前,Cursor团队正在探索新的解决方案,例如为AI提供多种工具,使其在遇到困难时能够自主选择合适的工具解决问题,例如通过网络搜索、代码库搜索或执行特定命令等方式。
总之,AI正在改变程序开发的方式,但程序开发者的核心价值——例如逻辑思维、问题解决能力和创造力——仍然是不可替代的。
未来学编程会变成怎么样的形态:教育可能更注重如何与AI协作,而非仅仅是学习编程语言本身。
从手工编写代码到AI生成代码,Ian亲身经历了程序开发方式的巨大变革。他认为,这种变革也将深刻影响下一代程序开发者的学习方式和工作方式。
面对AI的崛起,很多人开始questioning程序开发技能的必要性。Ian认为,程序开发技能仍然是重要的,但其重要性可能会发生转变。未来,程序开发技能可能更像是一种通识能力,类似于英语,人们需要掌握基本的程序开发知识,但未必需要以此为生。
对于未来一代的程序开发者,Ian认为他们需要学习如何与AI协作,将AI作为工具,提升程序开发效率。例如,学习如何使用Cursor等AI辅助工具,将想法快速转化成代码。
Ian举例说明,Gumroad的CEO已经开始利用AI辅助设计师生成代码,这意味着程序开发不再是程序开发者的专属领域,其他领域的专业人士也可以利用AI工具参与程序开发。
Ian相信,在未来,人类仍然是程序开发的主导者,AI更多地扮演辅助角色,例如Copilot的定位就是辅助驾驶,帮助开发者更顺畅地完成程序开发工作。
Ian认为,未来的程序开发者可能更像项目经理,负责掌控项目的整体方向和目标,而AI则负责处理代码的细节。
对于教育的影响,Ian认为,学习程序开发的重点不再是memorizing语法和细节,而是学习如何学习,如何快速掌握新知识和新工具。
Ian以自身使用ChatGPT的经验为例,说明了AI工具如何加速学习过程。他认为,通过与AI互动,可以更快速地获取知识,例如直接向AI询问问题,或让AI解释代码等。
因此,Ian认为,未来的程序开发教育应该更注重培养学生的学习能力和problem-solving能力,而非仅仅是教授编程语言本身。
Ian总结道,学习如何学习才是最重要的,无论学习的内容是什么。他认为,未来的程序开发教育需要培养学生以下能力:
逻辑思维能力: 理解代码背后的逻辑和原理,即使不手写代码,也要理解AI生成的代码的逻辑。 问题解决能力: 能够分析问题,找到解决方案,并利用AI工具实现解决方案。 人机协作能力: 学会如何与AI协作,利用AI的优势提升程序开发效率。 持续学习能力: AI技术发展迅速,程序开发工具和方法也在不断更新,程序开发人员需要具备持续学习的能力,才能适应未来的发展。
Junior工程师将被取代?其实可以快速跟AI学习升等
面对AI的快速发展,许多人担忧初级工程师会被取代。作为站在科技前沿的年轻工程师,Ian对此有不同的看法。他认为,即使是38岁想要转行学习程序开发的人,或者想要进入程序开发领域的初学者,仍然有机会在AI时代找到自己的位置。
Ian认为,AI的出现反而为初学者提供了更好的学习机会:
1. 加速学习速度: AI工具可以帮助初学者更快地学习程序开发知识,例如通过与AI互动学习编程语言、理解代码逻辑等。
2. 提升学习成就感: AI辅助工具可以帮助初学者更快地构建出可运行的程序,获得成就感,从而更容易坚持学习下去。
Ian举例说明,如果初学者使用AI生成了一段500行的代码,但遇到问题不知道如何解决,可以利用AI的解释功能,例如将错误代码贴到AI聊天窗口中,询问AI解决方案。通过这种方式,初学者可以一边构建项目,一边学习新的知识。
主持人还分享了一个案例:他曾使用AI工具将一百万条数据导入数据库,最初AI使用了一个效率很低的指令,预计需要15天才能完成。发现问题后,询问AI是否有更快的解决方案,AI提供了三种方案,最终Ian选择了其中一种高效方案,只用了十分钟就完成了数据导入。
这个案例说明,即使是AI生成的代码,也可能存在效率问题,需要开发者具备一定的判断力和解决问题的能力。
Ian认为,AI的发展还处于早期阶段,未来的AI模型将会更加intelligent,能够更好地理解开发者的需求,并生成更高效、更可靠的代码。
对于想要进入程序开发领域的初学者,Ian建议:
保持积极的学习心态: AI时代,学习速度变得更加重要,初学者需要保持积极的学习心态,不断学习新知识和新工具。 学习如何与AI协作: AI辅助工具将成为程序开发的重要工具,初学者需要学会如何使用这些工具,并将AI作为合作伙伴,提升开发效率。 注重基础知识的学习: 虽然AI可以帮助开发者完成很多工作,但基础知识仍然是重要的,例如编程语言的基本语法、算法和数据结构等。 培养解决问题的能力: AI生成的代码也可能存在问题,开发者需要具备解决问题的能力,例如分析错误代码、寻找解决方案等。
总而言之,AI时代,程序开发的门槛可能会降低,但程序开发者的核心价值仍然重要。初学者可以通过积极学习、善用AI工具,不断提升自身能力,在AI时代找到自己的位置。
AI迭代速度太快很难想象下一代的模型会是什么样子
面对AI的飞速发展,即使是身处科技前沿的Ian,也难以预测下一代AI模型会是什么样子。他表示,现在的AI模型,例如Claude和Sonnet,在大多数情况下已经能够给出正确的答案,这让他很难想象未来AI还能有多大的提升。
Ian以GPT-3.5到GPT-4的巨大飞跃为例,说明了AI模型迭代速度之快,以及模型能力提升之显著。他认为,从Claude到下一代模型的提升,可能也会是巨大的,难以预测。
Ian认为,Sonnet在某些方面甚至比GPT-4更强大,例如在中文翻译方面,Sonnet的表现更为出色。他发现,通过改进Prompt,可以显著提升AI模型的性能,例如将复杂的Prompt拆解成多个步骤,可以使AI模型更好地理解用户的意图,并给出更准确的答案。
这说明,AI模型的能力提升,不仅依赖于模型本身的改进,也依赖于人类对AI模型的理解和使用方法的改进。
在Cursor团队内部,对于AI的使用也存在两种不同的观点:
一些开发者更喜欢使用AutoComplete功能,他们希望能够逐行检查AI生成的代码,并进行修改。 另一些开发者则更喜欢使用Composer功能,他们希望能够通过编写Prompt,让AI自动完成代码的编写工作。
Ian发现,那些认为Composer功能生成的代码质量不高的开发者,往往是因为Prompt的编写不够完善。他认为,编写高质量的Prompt非常重要,Prompt的质量直接决定了AI模型生成代码的质量。
Ian表示,他经常会花费几分钟时间编写详细的Prompt,以便让AI模型更好地理解他的需求,从而节省后续修改代码的时间。
他将AI比作实习生,需要详细地指导AI完成工作,例如清晰地描述需求、提供示例等。
Ian认为,人类与AI的互动方式,很大程度上决定了AI的能力发挥。他经常思考如何像指导实习生一样指导AI,并将这种思考应用到Cursor的功能设计中。
总之,AI的发展速度非常快,未来的AI模型将会更加强大。开发者需要不断学习新的AI技术和使用方法,才能更好地利用AI的优势,提升开发效率。
本文使用 Notion Nice 排版一键生成
参考:Ian:Cursor 創始工程師|22 歲加入新創!打造顛覆軟體開發的 AI 程式編輯器【塞掐 Side Chat】E282,播客链接 https://www.youtube.com/watch?v=o66WYZcQ0cA
后记:现在是00后创业的天下,这批AI创业团队跑在科技巨头前面,都有一个明显的特质——创新的精神和勇气带来意想不到的突破,除了过硬的技术实力外,Cursor创始人更愿意招揽未毕业的大学生来做用户侧的开发,确实是个巧思,看着这位天赋型选手对编程和项目的狂热爱好,才能挖掘出符合未来趋势的编程产品。
有兴趣可以查阅另外一个00后创始人的观点(创业不疯魔,等于白忙活 | 从0到40亿美元估值:Scale创始人Wang的"过度"哲学)
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~谢谢你看我的文章,我们,下次再见。
点击关注和转发公众号 保持你对AI优质内容的敏感