We're sunsetting PodQuest on 2025-07-28. Thank you for your support!
Export Podcast Subscriptions
cover of episode If 10% of the World Were Developers: GitHub’s Mario Rodriguez

If 10% of the World Were Developers: GitHub’s Mario Rodriguez

2024/5/28
logo of podcast Me, Myself, and AI

Me, Myself, and AI

AI Deep Dive AI Chapters Transcript
People
M
Mario Rodriguez
Topics
Mario Rodriguez: 本人作为GitHub产品副总裁,负责产品和设计团队,包括GitHub Copilot。Copilot是一个AI辅助编码工具,旨在提高开发者的生产力和幸福感。它通过提供代码建议、自动完成代码等功能,帮助开发者更高效地编写代码。Copilot的成功体现在其显著提高了开发者的生产力(55%的提升)和幸福感。此外,Copilot的采用率很高,因为它能够为开发者提供实际价值。Copilot的开发过程与传统软件开发不同,因为它基于非确定性的LLM模型,需要重新思考质量评估和功能开发方法。Copilot的价值在于其耐心和同理心,能够理解开发者的需求并提供帮助,即使是重复性的请求。未来,Copilot将能够生成更复杂的代码,并通过社区协作进一步提升其功能。 关于未来软件开发的展望,Rodriguez认为,如果10%的人口能够编写代码,世界将会发生巨大变化。这需要重新定义软件开发者的概念,并依赖于更易于使用的工具和社区协作。他认为,通过简单的文本框输入就能创建软件,这将使软件开发更加民主化。Copilot等工具将有助于实现这一目标,并释放人类的创造力和创新力。 此外,Rodriguez还分享了他创办一所特许学校的经历,旨在改善美国农村地区的STEM教育。他将学校视为一个产品,并通过迭代的方式不断改进学校的教学模式。 Sam Ransbotham和Sherwin Khodabandeh: 两位主持人主要就GitHub Copilot的应用、开发者对它的接受程度差异、以及未来软件开发的民主化等问题与Mario Rodriguez进行了深入探讨。他们对Copilot提高生产力、促进开发者幸福感等方面表示肯定,并就Copilot的非确定性、开发者对AI工具的接受程度差异等问题进行了分析。

Deep Dive

Chapters
Mario Rodriguez introduces GitHub as a platform for developers to store, collaborate, and share code, emphasizing its role as a central hub for software development.

Shownotes Transcript

当Mario Rodriguez 14岁时与父母从古巴移民到美国——他的父亲是大学教授,母亲是教师,后来成为电气工程师——他们已经在他心中灌输了教育的价值和对学习的热爱。这种热情指引着他度过了整个职业生涯——作为微软的项目经理;然后作为GitHub的一员,继微软2018年收购该开发者平台之后;以及作为北卡罗来纳州一所特许学校的联合创始人。现在,作为GitHub的产品高级副总裁,Mario负责监督开发GitHub Copilot人工智能辅助软件开发工具的团队。Mario加入本期节目,分享他对产品开发、GitHub Copilot对生产力和工作满意度的影响以及更多人能够轻松开发自己软件的未来的看法。在此处阅读剧集文字记录。嘉宾简介:Mario Rodriguez 担任 GitHub 产品团队高级副总裁。他的核心身份是学习者,他的热情是创建开发者工具——以至于他在过去 20 年里一直在微软和 GitHub 担任领导职务。他最近的工作包括监督 GitHub 的 AI 战略,以及在数千个组织和数百万用户中推出和发展 GitHub Copilot 产品线。Rodriguez 还共同主持了他联合创办的一所特许学校,旨在帮助推进美国农村地区的 STEAM(科学、技术、工程、艺术和数学)教育。我和 AI 是麻省理工学院斯隆管理评论和波士顿咨询集团合作推出的播客,由 Sam Ransbotham 和 Shervin Khodabandeh 主持。我们的工程师是 David Lishansky,协调制作人是 Allison Ryder 和 Andy Goffin。通过加入我们的 LinkedIn 群组“AI for Leaders”(mitsmr.com/AIforLeaders)或关注 LinkedIn 上的“我和 AI”,与我们保持联系。我们鼓励您对我们的节目进行评分和评论。您的评论可能会用于“我和 AI”的材料中。</context> <raw_text>0 今天,我们播放的是由我们的朋友 Modern CTO Podcast 制作的一期节目,他们最近很友好地邀请我作为嘉宾参加。我们讨论了生成式 AI 的兴起,成功运用技术的意义,以及领导者在指导技术实施工作时需要考虑的一些因素。在 Apple Podcast、Spotify 或您收听播客的任何地方查找 Modern CTO Podcast。

稳定的产品通常需要大量的测试才能确保它们对客户可靠。但是,基于固有变化工具(如生成式 AI)的产品从根本上改变了这一点。在今天的节目中了解详情。我是来自 GitHub 的 Mario Rodriguez,您正在收听“我和 AI”。欢迎收听“我和 AI”,这是一档关于人工智能和商业的播客。在每一期节目中,我们都会向您介绍一位正在使用 AI 进行创新的人。

我是 Sam Ransbotham,波士顿学院分析学教授。我还是麻省理工学院斯隆管理评论的 AI 和商业战略客座编辑。

我是 Sherwin Korubande,BCG 的高级合伙人,也是我们 AI 业务的领导者之一。自 2017 年以来,麻省理工学院 SMR 和 BCG 一直在研究和发表关于 AI 的文章,采访了数百名从业人员,并对数千家公司进行了调查,了解构建、部署和扩展 AI 能力以及真正改变组织运营方式需要什么。

大家好。今天,Sam 和我很高兴能与 GitHub 产品高级副总裁 Mario Rodriguez 交流。Mario,欢迎来到节目。你好,我们还好吗?

我们很好。我认为我们的大多数听众都知道 GitHub 是什么,但你能简单地向我们描述一下吗?是的,当然。所以我们通常将 GitHub 描述为所有开发者的家园。在这里,您可以存储代码和其他开发和交付软件所需的资产。它也是您与开源社区合作和混合创意的地方。

我有两个女儿。其中一个六岁。有时我描述爸爸的工作方式是,我的女儿有一个书包,她把很多必要的东西放在里面。你知道,她的午餐、零食和文件夹。她有一个紫色的文件夹,里面放着所有的家庭作业等等。那是她完成在学校需要做的事情的空间。

想想 GitHub 对开发者来说就是这样的。它是您来放置所有东西以开发和交付软件的地方。我们很幸运拥有一个很棒的社区。

我的职位是 GitHub 的产品高级副总裁,我负责我们的产品和设计团队,包括 GitHub Copilot。我于 2018 年作为微软收购的一部分加入 GitHub。事实上,我已经在 DevTools 工作了 20 多年。

我认为自己非常幸运,因为我热爱我的工作。我有时不得不为此捏捏自己。我想想看。

人类已经创造了轮子,创造了火。我们未来要做的所有进步都将通过软件来实现。为这些软件开发者提供令人惊叹的工具,以继续推动人类进步,这是一个幸运的地方。

我只是喜欢这个使命和动力。所以认为自己在这方面很幸运。现在我负责我们的产品和设计团队,确保我们继续创新,继续满足客户的需求。

我完全同意你关于使开发者能够更多地进行协作的重要性,尤其是一切都越来越朝着这个方向发展。请告诉我们更多关于产品组的工作。

产品管理,这可能有点争议,但我认为这是一个非常新的学科。它不是什么特别大的东西。例如,我们知道如何进行农业。开发人员也做了很长时间的事情,而且以某种方式进行。但是,作为一门学科的产品管理,我认为它可能比较新。我认为产品……

总体作用是将您想要实现的结果作为目标,然后找出如何使产品能够实现该结果。这样做很有魔力。人们认为这是一组功能,然后您就会进入所谓的“功能工厂”,如果您听说过这个术语的话。我认为那是

不对的。产品学科本身在很多时候更像是一种艺术,而不是科学。您在那里不仅仅是进行例会,也不是仅仅与客户交谈。产品学科的这种美妙之处在于,它完全是关于客户想要完成什么或企业想要完成什么,但对他们来说是超级有效的,对吧?然后找出如何到达那里。

至少就我而言,我喜欢逐步进行。一直正确是很困难的。对我来说,我一直告诉产品团队的是,我们如何才能真正地……

找出我们可以做的下一件增量的事情,以验证一组假设,从而让我们到达那里。这种增量并不一定需要立即向他们的客户展示。我们在 GitHub 做了一件事,叫做“员工发布”。所以我们先向自己发布,但这是一个我们可以验证想法的点。这是一个我们可以找出这是否有效或无效的点,以及实现该结果的下一个想法是什么。

我通常说产品团队真正的工作是将这些想法与结果结合起来,他们填补了等式的中间部分。他们迭代地进行,而不是像第一次就做对一样,对吧?我认为,这就是你在生活中谈到的思维转变。这不是一次性的大爆炸。随着我们越来越舒适,如果您查看一些最伟大的产品,它们是在许多、许多迭代中引入和发展的。

百分之百。而且你们也建立在彼此之上。就像你可能会尝试这个,顺便说一句,我认为同样的情况也发生在医学和其他做得非常好的行业中。这是,

最大的突破有时是偶然发生的,只是通过测试一堆东西,对吧?托马斯·爱迪生和灯泡,对吧?这需要很多迭代才能实现。你会认为我们现在已经学会了,实现最大突破的方式就是通过这种迭代。但是你确实会遇到错误。

一组信念,即产品管理完全是关于管理项目等等。而现实情况是,这只是关于迭代和找到下一组能够实现您想要的结果的事情,百分之百。所以在那个中间地带,你前面提到了 Copilot。Copilot 如何适应那个中间地带?实际上,首先告诉人们 Copilot 是什么。然后它如何适应中间地带?

GitHub Copilot 是我们的 AI 助手,我们对此有点自豪。我们是第一个 Copilot。如果您当时在 GitHub 内部,当我们开始这个项目时,这是一个由 GitHub 的一组研究人员完成的大备忘录。我们有一个名为 GitHub Next 的部门。

他们负责 GitHub 的 Horizon 2、Horizon 3 系列投资。我们刚刚开始使用一些模型,一些来自 OpenAI 的这些新的 LLM 模型。这篇论文的内容是,我们能否创建一个 AI 编码助手,它能够真正帮助你并全面增强你的能力?

所以 GitHub Copilot 就是它的品牌名称。我们在这方面非常成功,再次回到迭代中,迭代到为开发者带来惊人的价值。

我们的统计数据显示,生产力提高了 55%。这一点我真的很自豪。我们试图要求许多客户真正衡量整体的开发者幸福感。我们知道,如果开发人员在一个组织中不快乐,就不会发生很多事情,对吧?

你想让他们快乐。那里的优秀人才稀缺,所以你绝对想让你的开发者快乐。我们在采用方面和价值方面都非常成功。但更重要的是,至少对我来说,有时是提高全世界的开发者幸福感。我想问你关于这个问题。我们已经看到各种各样的人

在编写、调试甚至思考代码结构方面变得更加有效率,甚至会想到一些人类思维无法想到的事情,因为我们有这种也许是群体思维或其他什么东西,有时你知道当你在 Copilot 模式下时,代码更简单、更简洁,但是

我从轶事中看到和听到的是,人们正在采用它,并且喜欢它。然后有些人甚至不靠近它。他们说,这与我们无关。你认为这是为什么?是害怕吗?我会失去工作,而这东西会接管一切。我的意思是,你认为为什么对它的反应会有这种两极分化?是的,我喜欢这个问题。对不起。

也许让我们尝试从三个不同的角度来探讨。第一,回到 Sam 提出的问题,我们如何看待 Copilot 及其价值?我们甚至如何制作 GitHub Copilot 产品?我会说……

AI 产品和开发这些 AI 产品与我们所做的任何其他产品或功能完全不同。我认为这对我、我的团队甚至 GitHub 来说都是最大的转变之一。

也就是说,如果您考虑一下我们所做的普通功能,我们会理解,好的,这就是我们想要的另一个功能的结果。这是一些代码。好吧,我们可以为这段代码编写单元测试,对吧?我们可以测试它。我们发现它非常确定性。我们知道某些东西是否有效。我们知道是否存在错误。我们知道如何修复许多错误。我们甚至可以看到我们在开发功能时所犯的错误,对吧?

LLM 不是确定性的。它们不是。你不能指望它们是确定性的。那么,你如何在非确定性输入集中提供价值呢?所以

我想对广大社区说的最重要的一点是,如果你要开始针对 AI 功能或针对 LLM 的功能开发功能,你必须重新思考你对质量的思考方式。你必须重新思考你如何处理这个功能。我们对 GitHub Copilot 进行了所有这些评估和离线评估。这就是我们如何确定它在代码补全等方面提供的质量。

所以回到采用方面,我们知道很多时候 Copilot 将生成大约 30%、40%、50% 以上的代码,对吧?就像你接受的程度,取决于有多少行等等,对于许多这些开发者来说,都在 30% 以上。

我们也可以在我们的离线评估中看到 Copilot 表现非常出色以及 Copilot 需要继续改进的地方,这意味着我们可能需要向它传递更多上下文才能为你生成正确的代码片段,因为 Copilot

代码和代码开发与你正在处理的上下文有很大关系。你是在遗留代码库中还是不在?你是在 COBOL 中还是在 UNC++、JavaScript 或 TypeScript 中?所以需要很多上下文才能使代码质量高,才能让你接受它。但是我们有这个离线评估来利用它。所以今天的许多采用都是因为它为你提供了价值。

我们坚信,人类必须始终处于中心位置。但是你有一个非常有耐心的副驾驶,对吧?就像如果你问它,你知道,在这个代码库中如何做 X、Y 和 Z?或者我忘记了如何编写这个寄存器。你能告诉我最好的方法是什么吗?即使你已经告诉我八次了,也请再告诉我一次。不要评判我。这太不可思议了。

令人难以置信地耐心和富有同理心,你知道,尤其如果你用“请”之类的词来问它,信不信由你,这确实很重要。它有时确实会做出回应。你会想,它只是因为我说了“请”而被我发现了吗?但它确实对同理心反应非常好。

所以我认为它在外面创造了这种生产力两极分化。这就是为什么采用率很高。因为使用它的人最终会显著提高生产力,你会看到差异。你会看到他们的产出差异。你会看到有时代码质量的差异。然后你也会看到差异

他们的幸福感,因为他们不必编写 10,000 行测试,而 Copilot 可以帮助他们做到这一点。然后会有这些神奇的时刻,你会想,只是通过一条评论。顺便说一句,这就是当年让我信服的事情。我认为是在 2021 年初我第一次看到它的时候。

因为我们之前有 IntelliSense。我们有很多其他可以为你完成代码的技术,顺便说一句。但是我们从来没有能力用注释来启动某些东西来描述下一段代码应该是什么。

我想知道 IntelliSense 的例子是否让人们根深蒂固。如果我考虑 IntelliSense,它只是关于填充,好吧,你开始输入 for,它会为你打开括号,你会做那种事情。但是 Copilot 处于不同的级别。当我想到这一点时,你提到了 30% 的代码产生,30% 或 40%。

我猜这并不是有趣的代码。我认为这里可能有一个区别,即这 30%。但情况真的是这样吗?我认为它可能是相当有趣的代码。它也可能是相当有趣的代码。同样,因为你可以做出的评论,它可以帮助你开始。所以你是对的。它不会编写全部内容,尽管……

随着我们正在开发的更多此类代理,越来越多的有趣代码可以被开发出来。但只要人类处于中心位置,无论他们描述什么,你都听说过这个术语“提示工程”等等,实际上提示 Copilot 可以帮助它生成,并且以正确的方式提示 Copilot,可以帮助它生成非常有趣的代码。我们看到了这一点,我们在内部有一个 Slack 频道,人们有时会在那里发布 Copilot 为他们做的事情。

你会看到一些让你觉得哇,它做到了?这太神奇了。我想我当时在想,就像我们处理一项任务一样,简单的事情会先来,后面的事情会更难。百分之百。然后最新的会很难。另外,也许让我们也尝试探讨这个角度或这个问题。我很想听听你对此的看法。所以,

想象一下,如果对我们所有人的提示是,如果世界上有 10% 的人口会编写代码,世界会是什么样子?想想看。因为有时我起床后会问自己这些问题。就像,

为了让 10% 的人口能够被称为开发者,需要发生什么彻底的改变?因为今天在全世界范围内,拥有电脑的人并不多,尤其是一些非常先进的图形和 CPU 等等。很多人有手机,但不是很多人在家里有电脑。

所以我认为这非常有趣。就像,需要改变什么?对我来说,我相信,就像软件开发者的定义将开始向前发展。有趣的部分是,就像我们所有人都会做饭,或者我们都会骑自行车,或者我们都会游泳。但是看,我明天不会开一家米其林星级餐厅。

但是对于其他人来说,如果只需要一个文本框就能完成创建软件并从中获得价值的事情,那该怎么办?就像,我认为你会认为那是一个软件开发者。如果我能很快地在手机上告诉它,

嘿,我想和我的女儿谈谈这些事情。你能给我最近三篇关于 X、Y 和 Z 的文章,然后创建一个我们可以玩的游戏的小程序吗?你是否设想 Copilot 未来能够帮助你做到这一点?当然。

我很想知道现在这 10% 是多少。现在有多少百分比?但是,如果我将你刚才说的话与 GitHub 本身结合起来,有一点很有趣,你说了很多关于“哦,我可以让这个东西做我想做的事情,高度个性化”的话。

但是 GitHub 也关乎分享这一点,我认为这是一个非常有趣的动态,如果您可以同时创建一些个人化的东西,然后广泛分发给其他人改进和迭代,这似乎甚至比 10% 还要大,因为您获得了 10% 的倍增效应,然后其他人都会改进它。

百分之百。你知道,社区的美妙之处在于,你可以在这些社区中获得网络效应,对吧?语言也是这样运作的。就像你可以获得网络效应,因为其他人知道你的语言,然后你可以更广泛地交流。所以社区的美妙之处在于,我认为这也能释放创造力。它释放了创新。想象一下,然后这个小程序

编译器为你创建的,你也可以分享它,并说,嘿,这是我创建的。你可以重新混合它,然后你不断地重新混合,你知道,艺术家一直都在这样做,对吧?就像毕加索开始的不是你今天所知的立体主义,就像它开始完全不同。它实际上是从非常逼真的绘画开始的,然后从那里发展,从那里发展,直到它找到了自己的风格。

这很美妙。所以我认为像 Copilot 这样的工具将帮助你做到这一点。而且我们的孩子将通过这项技术的进步体验到令人难以置信的事情。而且看,我们也需要在开发 AI 工具方面做得更好。我们现在正处于起步阶段。我非常喜欢的一点是

你提到了激发某人兴趣的想法。也许他们会看到一些东西,然后它会让他们点击,然后他们决定深入研究。但是这种对很多事情的接触增加了我们点击事物的机会。我不希望我的院长听到这个,但是我的意思是,我认为我们在课堂上做的很多事情并不是教学,而是接触很多想法。然后有些人,你知道,这会让一个人点击,这会让另一个人点击。

我真的很喜欢你关于编码的类比,也许其中一部分会点击并激发一些兴趣,或者也许有一些事情会推动某人前进。但我认为这也是真的,它也有道理,并不是每个人都会成为那个超级巨星,或者想要成为那个超级巨星。Mario,我想问你关于你创办特许学校的事情。哦,是的。我们还没有谈到这个。告诉我们关于这个。

我出生在古巴,在那里生活到大约 14 岁。我来到美国

我一句英语都不会说。事实上,我直接上了高中。所以我强烈建议直接上高中,不用说英语。但我们做到了。我之所以这么说,是因为我在古巴的时候,我母亲是大学老师。我花了很多时间和她一起帮助她批改试卷,并了解教育工作者最擅长做什么。

说实话,我对此很着迷。我父亲也曾经是物理老师。然后他最终成为了一名电气工程师。当我来到美国后,我想,你知道吗,我可能会学习电气工程,也可能会做一些事情,也许获得博士学位。所以最终,如果我想回学校,我可以这样做。

突然之间,我发现自己,你知道,我在微软工作,然后最终在 GitHub 工作,我在北卡罗来纳州。我注意到北卡罗来纳州的农村地区和某些地区,在那里吸引优秀的教师并维持这种状态并不断推动教育进步,尤其是在计算机或编程等方面,确实很难。我们聚在一起,

我们说,如果我们开办一所 STEM 学校,采用略微不同的方法呢?

我们允许学生们,你知道谷歌有时有 10% 的时间或 20% 的时间之类的。如果他们实际上,这些学生有时可以拥有自己的课程,并且他们可以在这 20% 的时间里按照自己的节奏学习,那该怎么办?如果我们课堂之间没有那么多隔墙,有时我们可以将课堂联合起来,让他们真正分享,对我来说谈论社区,真正分享。

所以我们开办了一所特许学校,只是为了探索这些想法,并能够在很难做到并保持高水平的地方提供更好的教育。想想迭代正确性。我认为学校是一个产品,你必须不断尝试新事物,并尝试观察它的发展。我们非常成功。

我们刚开始办了一所中学。我们在这方面非常成功,以至于我们现在正在开办一所高中。我们去年做到了。我喜欢教育。我认为这是回馈社会的一种好方法。然后我们可以在技术方面做得更多,并用这两方面武装这些学生,艺术方面和科学方面,那么我们会更好。这太棒了。这是一个很棒的故事。

让我在这里过渡到,我们有一个环节,我们会问你一些简短的快速问题。所以在这里只给我们一个简短的答案。你认为现在人工智能最大的机会是什么?我认为现在最大的机会是生产力。至少在软件开发中,它将使软件开发民主化。是的,这很有趣。你提到了生产力与民主化,这是两种截然不同的说法。人们现在对人工智能最大的误解是什么?人们错在哪里?

我认为它会夺走工作,这是最大的误解,因为它实际上会使人类倒退而不是前进。是的。你想要的第一份职业是什么?

所以我的第一份职业,我会说我一直都是企业家。所以我做的第一件事就是赚钱,实际上是销售,你知道,销售东西,所以你可以做风筝。所以我卖这些风筝套装,这是我最终做的第一件事。那么什么时候人工智能太多了?当人类不在中心位置时。很好。你希望人工智能现在能做但做不到的一件事是什么?

将代码转换为任何我想要的语言,并以高质量完成。如果能做到这一点,那就太棒了,因为然后我可以把我用 TypeScript 编写的代码放在那里,然后尝试看看,好吧,那在其他语言中会是什么样子,或者例如在 Python 中,那在其他语言中会是什么样子?我一直觉得不同的编程语言很有趣,它们的好处或坏处。例如 Lisp,对吧?有时很难阅读,因为所有的开括号,但是

这就是我想说的。这很有趣。所以我认为我们今天讨论的内容之一就是这里各种各样的可能性。你让我大开眼界的一件事是,当世界上即使只有一定比例的人会编写代码时会发生什么。那会产生什么影响?我认为这对我们来说非常有趣,既有积极的也有消极的,这有一些重大的影响。感谢你今天抽出时间与我们交谈。我们很享受。谢谢。很高兴来到这里。

感谢您今天的收听。下次,Sam 和我将与 Patrick Hebron 会面。请加入我们。感谢收听“我和 AI”。我们相信,与您一样,关于 AI 实施的对话不会仅限于此播客。这就是为什么我们在 LinkedIn 上专门为像您这样的听众创建了一个群组。它被称为“AI for Leaders”。如果您加入我们,您可以与节目创建者和主持人聊天,提出您自己的问题,分享您的见解,

并获得来自麻省理工学院 SMR 和 BCG 关于 AI 实施的宝贵资源,您可以通过访问 mitsmr.com/AIforLeaders 来访问它。我们将把链接放在节目说明中,我们希望在那里见到您。