← Lenny's Podcast

The role of AI in new product development | Ryan J. Salva (VP of Product at GitHub)

人工智能在新产品开发中的作用| Ryan J. Salva(GitHub 产品副总裁)
2022-09-04  ·  Lenny's Podcast  ·  原文

Ryan J.

瑞安·J。

Salva: We had actually created a snapshot of GitHub's public code for what we call the Arctic Code Vault, right?

Salva:我们实际上已经为我们所谓的 Arctic Code Vault 创建了 GitHub 公共代码的快照,对吗?

Essentially, this is up in like way in the Northlands of Finland, there's a seed vault.

本质上,这与芬兰北部地区的情况类似,有一个种子库。

We were like, you know what?

我们就像,你知道吗?

Seed vaults are really there to preserve the diversity of the world's flora in seeds in case of some crazy either natural or manmade disaster.

种子库确实是为了在发生一些疯狂的自然或人为灾难时保护种子中世界植物区系的多样性。

But another really important asset to the world is our code, our open source.

但对世界来说另一个真正重要的资产是我们的代码,我们的开源。

This represents actually a lot of the collective, well, certainly software, if not intelligence of kind of the modern world, right?

这实际上代表了很多集体,当然是软件,如果不是现代世界的智能,对吧?

Ryan J.

瑞安·J。

Salva: We had put this snapshot of public repositories on this silver film that would be preserved for thousands of years in this Arctic Code Vault.

萨尔瓦:我们将公共存储库的快照放在这张银胶片上,该胶片将在北极密码库中保存数千年。

Well, we took that same data snapshot and we brought it to our friends over at OpenAI to see like, okay, what can we do with these large language models built on public code?

好吧,我们拍摄了相同的数据快照,并将其带给 OpenAI 的朋友,看看我们可以用这些基于公共代码构建的大型语言模型做什么?

Well, it turns out we can do some pretty cool things.

好吧,事实证明我们可以做一些很酷的事情。

Lenny: Ryan Salva is VP of product at GitHub, where, amongst other projects, he incubated and launched GitHub Copilot, which in my opinion is one of the most magical products that you'll come across.

Lenny:Ryan Salva 是 GitHub 的产品副总裁,除了其他项目外,他还孵化并推出了 GitHub Copilot,在我看来,这是你会遇到的最神奇的产品之一。

If you haven't heard of it, it uses OpenAI's machine learning engine to autocomplete code for engineers in real time as they're coding.

如果您还没有听说过,它使用 OpenAI 的机器学习引擎在工程师编码时实时自动完成代码。

I think it's one of the biggest advances in product development and productivity that we've seen in a while.

我认为这是我们一段时间以来在产品开发和生产力方面所看到的最大进步之一。

I'm always really curious how a big product like this starts, gets buy in, build momentum, and then launches, especially at a big company like Microsoft and especially a product like Copilot that has surprising ethics challenges, scaling challenges, business model questions.

我总是很好奇像这样的大型产品是如何开始、获得认可、建立动力,然后发布的,尤其是在像微软这样的大公司,尤其是像 Copilot 这样的产品,它面临着令人惊讶的道德挑战、规模挑战和商业模式问题。

Lenny: Also, this came out of a small R&D team that GitHub has, and it's so interesting to hear what Ryan has learned about incubating big bets within a large company, and then taking them from prototype to Microsoft scale.

Lenny:另外,这来自 GitHub 的一个小型研发团队,听到 Ryan 了解到如何在大公司内孵化大赌注,然后将其从原型发展到微软规模,真是太有趣了。

Ryan is also just super interesting as a human.

瑞安作为一个人也非常有趣。

He's got a very non-traditional background.

他有一个非常非传统的背景。

I am excited for you to hear this conversation.

我很高兴你能听到这次谈话。

With that, I bring you Ryan Salva.

接下来,我为您带来瑞安·萨尔瓦。

If you're setting up your analytics stack, but you're not using Amplitude, what are you doing?

如果您正在设置分析堆栈,但没有使用 Amplitude,那么您在做什么?

Amplitude is the number one most popular analytics solution in the world used by both big companies like Shopify, Instacart, and Atlassian, and also most tech startups.

Amplitude 是世界上最受欢迎的分析解决方案,Shopify、Instacart 和 Atlassian 等大公司以及大多数科技初创公司都在使用。

Lenny: Amplitude has everything you need, including a powerful and fully self-service analytics product, an experimentation platform, and even an integrated customer data platform to help you understand your users like never before.

Lenny:Amplitude 拥有您所需的一切,包括功能强大且完全自助的分析产品、实验平台,甚至是集成的客户数据平台,可帮助您以前所未有的方式了解用户。

Give your teams self-service product data to understand your users, drive conversions, and increase engagement, growth, and revenue.

为您的团队提供自助产品数据,以了解您的用户、推动转化并提高参与度、增长和收入。

Ditch your vanity metrics, trust your data, work smarter, and grow your business.

抛弃你的虚荣指标,相信你的数据,更聪明地工作,并发展你的业务。

Try Amplitude for free.

免费试用 Amplitude。

Just visit Amplitude.com to get started.

只需访问 Amplitude.com 即可开始。

This episode is brought to you by Athletic Greens.

本集由 Athletic Greens 为您带来。

I've been hearing about AG1 on basically every podcast that I listen to, like Tim Ferriss and Lex Fridman.

我基本上在我听过的每个播客上都听说过 AG1,比如 Tim Ferriss 和 Lex Fridman。

Lenny: I finally gave it a shot earlier this year, and it has quickly become a core part of my morning routine, especially on days that I need to go deep on writing or record a podcast like this.

莱尼:今年早些时候我终于尝试了一下,它很快就成为我早上例行公事的核心部分,尤其是在我需要深入写作或录制这样的播客的日子。

Here's three things that I love about AG1.

以下是我喜欢 AG1 的三点。

One, with a small scoop that dissolves in water, you are absorbing 75 vitamins, minerals, probiotics, and adaptogens.

第一,只需一小勺溶于水的物质,您就可以吸收 75 种维生素、矿物质、益生菌和适应原。

I kind of like to think of it as little safety net for my nutrition in case I've missed something in my diet.

我有点喜欢将其视为我的营养的一个小安全网,以防我在饮食中错过了某些东西。

Two, they treat AG1 like a software product.

第二,他们将 AG1 视为软件产品。

Apparently they're on their 52nd iteration and they're constantly evolving it based on the latest science, research studies, and internal testing that they do.

显然他们正在进行第 52 次迭代,并且他们根据最新的科学、研究和内部测试不断改进它。

Lenny: And three, it's just one easy thing that I can do every single day to take care of myself.

莱尼:第三,这只是我每天可以做的一件简单的事情来照顾自己。

Right now, it's time to reclaim your health and arm your immune system with convenient daily nutrition.

现在,是时候恢复您的健康并用方便的日常营养来武装您的免疫系统了。

It's just one scoop and a cup of water every day.

每天只需一勺和一杯水。

And that's it.

就是这样。

There's no need for a million different pills and supplements to look out for your health.

无需使用一百万种不同的药物和补充剂来照顾您的健康。

Make it easy.

让一切变得简单。

Athletic Greens is going to give you a free one year supply of immune supporting vitamin D and five free travel packs for your first purchase.

Athletic Greens 将为您提供一年免费的免疫支持维生素 D 和 5 个免费旅行套装(首次购买时)。

All you have to do is visit AthleticGreens.com/lenny.

您所要做的就是访问 AthleticGreens.com/lenny。

Again, that's AthleticGreens.com/lenny to take ownership over your health and pick up the ultimate daily nutritional insurance.

再次强调,AthleticGreens.com/lenny 可以掌控您的健康并获得终极的每日营养保险。

Ryan, welcome to the podcast.

瑞安,欢迎来到播客。

Ryan J.

瑞安·J。

Salva: Thank you, my friend.

萨尔瓦:谢谢你,我的朋友。

I am genuinely very excited to be here.

我真的很高兴来到这里。

Lovely to geek out with you for a little while.

很高兴和你一起出去玩一会儿。

Lenny: I'm excited as well.

莱尼:我也很兴奋。

We were chatting briefly before we started recording and you mentioned a little bit about your background, which is really unique for someone that is leading product at GitHub.

在开始录制之前,我们进行了简短的交谈,您提到了一些您的背景,这对于 GitHub 的产品领导者来说确实很独特。

Could you just share what you studied in school, and then briefly just how that led to your career in product management?

您能否分享一下您在学校学习的内容,然后简要介绍一下您是如何从事产品管理职业的?

Ryan J.

瑞安·J。

Salva: Oh wow!

萨尔瓦:哇哦!

You're going to make me remember all the way back to school.

你会让我一直记得回到学校的路上。

Okay.

好的。

Back in school, I was not a classic software engineering, CS major.

回到学校时,我并不是一个经典的软件工程、CS 专业。

The kind of esoteric answer is philosophy of aesthetics and 20th century critical theory.

这种深奥的答案是美学哲学和20世纪的批判理论。

The easier access answer is philosophy and English.

更容易获得的答案是哲学和英语。

But primarily it was really about how do we, as people, communicate with each other, how do we express ourselves through creativity.

但主要是关于我们作为人如何相互沟通,如何通过创造力表达自己。

As humans since the dawn of time have been painting on cave walls and dancing around the fire and writing stories and novels and singing to each other.

自古以来,人类就一直在洞穴墙壁上绘画、围着火跳舞、写故事和小说、互相唱歌。

I was just really interested in how we convey our experience of the world to others.

我只是对我们如何向他人传达我们对世界的体验非常感兴趣。

Ryan J.

瑞安·J。

Salva: I got started in software development and product management because I wanted to be in the business of creativity.

Salva:我开始从事软件开发和产品管理是因为我想从事创意业务。

We're at a really, really unique time in human history where we actually get to witness the advent of a brand new medium.

我们正处于人类历史上一个非常非常独特的时期,我们实际上见证了一种全新媒体的出现。

Software development and the worlds that it creates wasn't possible, I don't know, maybe 50, 60 years ago now.

我不知道,也许在 50、60 年前,软件开发及其创造的世界是不可能的。

If I'd been born in the 1700s, I probably would've been the guy making, I don't know, new colors of paint and paint brushes, but I wasn't.

如果我出生在 1700 年代,我可能会是那个制作新颜色的油漆和画笔的人,我不知道,但我不是。

I was born kind of at the turn of the 21st century, and so I work in engineering.

我出生在 21 世纪之交,所以我从事工程工作。

Ryan J.

瑞安·J。

Salva: That's what I've been doing for the last about a little bit more than 20 years now, working sometimes in startups, some of them other people, some of them my own, about 10 years at Microsoft and now three years at GitHub.

Salva:这就是我过去 20 多年一直在做的事情,有时在初创公司工作,有些是其他人的,有些是我自己的,在微软工作了大约 10 年,现在在 GitHub 工作了三年。

Lenny: Amazing.

莱尼:太棒了。

I didn't know that was a job to make new paint colors for paint brushes.

我不知道这是一份为画笔制作新油漆颜色的工作。

Is there a color you would come up with?

您会想出一种颜色吗?

Ryan J.

瑞安·J。

Salva: Oh man!

萨尔瓦:天啊!

It so happens that yellow...

偏偏黄...

I think I would do a really vibrant gold sunshine yellow if I was in that business.

我想如果我从事这个行业,我会做一种非常充满活力的金阳光黄色。

Lenny: Very positive, happy.

Lenny:非常积极、快乐。

I love it.

我喜欢它。

That could be a new GitHub brand color.

这可能是 GitHub 的新品牌颜色。

Today, you're VP of product at GitHub.

今天,您是 GitHub 的产品副总裁。

Before that, you were a super senior product leader at Microsoft, and I'm always curious how that transition happens when you move from just a longtime senior product leader at a larger company to taking on something like this that was an acquisition.

在此之前,您是微软的超级高级产品负责人,我一直很好奇,当您从一家大公司的长期高级产品负责人转变为承担类似收购的事情时,这种转变是如何发生的。

I'm curious what made you decide to take this leap, and then just was there anything interesting about the machination that went into just making that transition and figuring that out?

我很好奇是什么让你决定迈出这一步,然后,在进行这种转变并弄清楚这一点的过程中,有什么有趣的阴谋吗?

Ryan J.

瑞安·J。

Salva: Yeah, it's a good question.

萨尔瓦:是的,这是一个很好的问题。

Like I said, I was working on development tools and developer services when I was there at Microsoft.

就像我说的,当我在微软工作时,我正在研究开发工具和开发人员服务。

Specifically, I was leading product for what they call One Engineering System.

具体来说,我是他们所谓的“单一工程系统”的主导产品。

It's essentially the shared developer infrastructure for all Microsoft products like Windows and Office and Azure and things like that, as well as Microsoft's DevOps solution called Azure DevOps.

它本质上是所有 Microsoft 产品(如 Windows、Office 和 Azure 等)以及 Microsoft 的 DevOps 解决方案(称为 Azure DevOps)的共享开发人员基础设施。

When the acquisition happened, it was clear that so much of the energy, so much of the focus and the innovation that was going to be happening around developer tools and services was going to be happening around GitHub.

当收购发生时,很明显,围绕开发人员工具和服务将发生的大量精力、重点和创新将发生在 GitHub 周围。

I mean, that's where the community is creating.

我的意思是,这就是社区正在创建的地方。

Ryan J.

瑞安·J。

Salva: That's where people are learning, that's where so much of the mind share of just the development community is focused.

Salva:这就是人们学习的地方,这是开发社区的大部分思想都集中的地方。

Like I said, I'm motivated.

就像我说的,我很有动力。

What I care about is helping people create.

我关心的是帮助人们创造。

It was very clear to me that there was no place that I could have a larger impact than working at GitHub.

我很清楚,没有什么地方比在 GitHub 工作能产生更大的影响力了。

I really took that opportunity to make the transition out of a little bit more enterprise focused internal role at Microsoft to going where I could work on everything from, I don't know, AI technology like Copilot to a cloud hosted development environments like Codespaces, repos, which literally every single developer on the planet is participating in some way GitHub repos in a typical year.

我确实抓住了这个机会,从微软的一个更以企业为中心的内部角色转变为我可以从事各种工作的地方,从像 Copilot 这样的人工智能技术到像 Codespaces、repos 这样的云托管开发环境,实际上地球上的每个开发人员在典型的一年里都以某种方式参与 GitHub 存储库。

Ryan J.

瑞安·J。

Salva: That was what I wanted to accomplish, is just like, how do I get more connected to the community, especially the community outside of what Microsoft could reach on its own.

Salva:这就是我想要实现的目标,就像我如何与社区建立更多的联系,尤其是微软自己无法达到的社区。

The decision to move as well, I think, was really focused not just on what GitHub was and maybe is at the time, but what GitHub also can be.

我认为,做出迁移的决定不仅关注 GitHub 是什么以及当时可能是什么,还关注 GitHub 未来的发展方向。

I mean, GitHub has more than a decade, nearly a decade and a half of history of bringing developers together to collaborate on code through repositories.

我的意思是,GitHub 在将开发人员聚集在一起通过存储库协作编写代码方面已有十多年、近十五年的历史。

But in the last few years, we've really expanded that portfolio to include so many different parts of the developer life cycle.

但在过去几年中,我们确实扩展了该产品组合,以涵盖开发人员生命周期的许多不同部分。

Ryan J.

瑞安·J。

Salva: Again, I talked there about Codespaces and Copilot, but it's also actions for CI/CD and advanced security.

Salva:我再次谈到了 Codespaces 和 Copilot,但这也是 CI/CD 和高级安全性的行动。

As developers, we are so much more than just where we put our code.

作为开发人员,我们不仅仅关心我们放置代码的地方。

There's a whole part of the tool chain there.

那里有工具链的整个部分。

And to get to an opportunity to work on so many V1 products, like that is creation itself, to be able to build an entirely new product, get it out to market, test it, iterate on it, and really feed on the energy that's coming back from the community.

获得开发这么多 V1 产品的机会,就像创造本身一样,能够构建一个全新的产品,将其推向市场,测试它,迭代它,并真正汲取从社区返回的能量。

Lenny: Awesome.

莱尼:太棒了。

There's definitely a lot of energy coming out of GitHub.

GitHub 肯定会释放出巨大的能量。

What I want to spend most of our time chatting about is a product that your team helped launch and incubate, which is GitHub Copilot, which just from my outsider perspective feels like one of the biggest advances in software development in, I don't know, a decade, maybe more.

我想花大部分时间讨论的是你们团队帮助推出和孵化的一个产品,那就是 GitHub Copilot,仅从我的局外人角度来看,它感觉像是软件开发领域最大的进步之一,我不知道,十年,也许更久。

It's definitely one of the most magical products out there and your team and you kind of led the incubation and launch of the Copilot.

它绝对是最神奇的产品之一,您和您的团队领导了 Copilot 的孵化和发布。

Lenny: I'd love to spend most of our time chatting through that.

莱尼:我很乐意花大部分时间来讨论这个问题。

The first question...

第一个问题...

Okay, cool.

好吧,酷。

My first question just for folks that don't know a lot about Copilot is just like, what is it?

对于那些不太了解 Copilot 的人来说,我的第一个问题是,它是什么?

Can you just kind of briefly describe what Copilot is?

您能简单描述一下 Copilot 是什么吗?

Ryan J.

瑞安·J。

Salva: Yeah, sure.

萨尔瓦:是的,当然。

Developers for the last 20 years or more have had essentially simple, intelligent autocomplete.

在过去 20 年或更长时间里,开发人员已经拥有了本质上简单、智能的自动完成功能。

You hit the period and you get the next variable that might come up.

当你到达句点时,你就会得到下一个可能出现的变量。

It's helpful for moving a little bit faster through your code, helpful sometimes for remembering what the particular syntax might look like for a method or a function.

它有助于更​​快地浏览代码,有时有助于记住方法或函数的特定语法。

Copilot is essentially that magnified by many lines of code.

Copilot 本质上是由许多行代码放大的。

It is multi-line autocomplete that is fundamentally powered by an AI model called CodeX, which is a derivative of another one that you might be familiar with, GPT-3.

它是一种多行自动完成功能,从根本上由名为 CodeX 的 AI 模型提供支持,该模型是您可能熟悉的另一种模型 GPT-3 的衍生版本。

Ryan J.

瑞安·J。

Salva: When you are in the editor, it could be VS Code, it could be IntelliJ, it could be them, essentially, as you are typing, Copilot will provide suggestions usually in kind of this italicized gray text that is really, to your point, kind of magical what it's able to infer.

Salva:当你在编辑器中时,可能是 VS Code,也可能是 IntelliJ,也可能是它们,本质上,当你打字时,Copilot 通常会以斜体灰色文本的形式提供建议,在你看来,它能够推断出的内容确实有点神奇。

Based upon the variables around it, the class names, the method names around it, your comments, Copilot infers what you intend to create, and then hopefully does a pretty good job at nailing it by providing scaffolding code template that you can then riff on.

根据它周围的变量、类名称、方法名称、您的注释,Copilot 推断您打算创建什么,然后希望通过提供您可以重复使用的脚手架代码模板来完成它。

Now, what we tend to find is that developers love it.

现在,我们倾向于发现开发人员喜欢它。

They really enjoy it.

他们真的很享受。

They kind of find themselves getting a little addicted to it because it helps them stay in the flow.

他们发现自己有点沉迷于它,因为它可以帮助他们保持流畅。

Ryan J.

瑞安·J。

Salva: As developers, we love to be in that place.

Salva:作为开发人员,我们喜欢呆在那个地方。

I love to be in that place where I'm creating things, where I'm focusing on some product, some piece of software that I'm going to give to my customers, my users.

我喜欢呆在我创造事物的地方,在那里我专注于一些产品,一些我将提供给我的客户、我的用户的软件。

The labor of remembering what's the order of parameters that need to come into a particular API, or hey, what's the particular syntax of this thing I'm supposed to do, or oh, I've got to create a bunch of dummy data that is days of the week or months in the year.

记住需要进入特定 API 的参数顺序是什么,或者嘿,我应该做的这件事的特定语法是什么,或者哦,我必须创建一堆虚拟数据,即一周中的几天或一年中的几个月。

That's just labor.

那只是劳动。

It's not creating.

这不是创造。

It's just typing.

这只是打字。

Ryan J.

瑞安·J。

Salva: Copilot helps developers stay in the flow by bringing all of that information into the editor, preventing them from having to go check out documentation or watch tutorial or go to Stack Overflow and either find an answer or worse, have to ask a question and wait for an answer.

Salva:Copilot 通过将所有这些信息带入编辑器来帮助开发人员保持流程,防止他们必须查看文档或观看教程或访问 Stack Overflow 来找到答案,或者更糟糕的是,必须提出问题并等待答案。

It just brings all of that into the editor and gives the developer often multiple suggestions that they can choose from and just pick and choose what is the right solution to solve the problem for the thing they're trying to create.

它只是将所有这些都带入编辑器中,并通常为开发人员提供多种建议供他们选择,然后选择正确的解决方案来解决他们尝试创建的问题。

Lenny: Awesome.

莱尼:太棒了。

What I'm most curious about, and we're going to spend time on this, is just how a product like this comes to be at a larger company.

我最好奇的是,我们将花时间研究这个问题,即这样的产品如何出现在一家更大的公司中。

But before we get into that, what's the craziest story of someone using Copilot to write code?

但在我们开始讨论之前,先来了解一下使用 Copilot 编写代码的最疯狂的故事是什么?

And I'll share one real quick.

我会很快分享一个。

I was watching some YouTube videos to prepare for this chat and one guy, maybe this is the Turing Test of AI writing code, is he used Copilot to center divs.

我正在观看一些 YouTube 视频,为这次聊天做准备,其中一个人,也许这是人工智能编写代码的图灵测试,他使用 Copilot 来居中 div。

He's like, "Wow!

他就像是,“哇!

This did it right." And then another guy, he's an instructor of code.

这件事做对了。”还有另一个人,他是一名代码讲师。

Lenny: He makes YouTube videos teaching people how to code and he's like, "Copilot just gives you the answer immediately, and so I can't make these videos as easily.

Lenny:他制作 YouTube 视频教人们如何编码,他说:“Copilot 会立即给你答案,所以我无法轻松制作这些视频。

I have to turn it off so that doesn't just give it away." I'm curious, what have you seen?

我必须把它关掉,这样才不会把它泄露出去。”我很好奇,你看到了什么?

Ryan J.

瑞安·J。

Salva: There are so many of those.

萨尔瓦:这样的例子有很多。

I'll just kind of give a couple of recent ones that I've heard.

我只想提供一些我最近听到的消息。

I was talking to one developer who was...

我正在和一位开发人员交谈,他...

He's actually an educator and he's teaching kids how to code, usually like kind of high school age, so 16, 15, that kind of thing.

他实际上是一名教育家,他教孩子们如何编码,通常是高中年龄段的孩子,比如 16 岁、15 岁之类的孩子。

His experience matches my own, which is that many of us, we learn to code best not by arbitrary exercises, but by actually building something that's going to be useful solving problems.

他的经历与我自己的经历相符,即我们中的许多人,最好的学习编码不是通过任意练习,而是通过实际构建有助于解决问题的东西。

Ryan J.

瑞安·J。

Salva: What he does is he matches small businesses and medium size businesses who need to build internal tools with essentially classes of students, like a group of maybe six or eight students, and then gives those students Copilot and says, "Here, small business, medium size business.

萨尔瓦:他所做的是将需要构建内部工具的小型企业和中型企业与基本上各班的学生(例如大约六到八名学生的小组)进行匹配,然后为这些学生提供副驾驶并说:“在这里,小型企业,中型企业。

Group of students, go build this internal tool for this business."

一群学生,去为这项业务构建这个内部工具吧。”

Ryan J.

瑞安·J。

Salva: Copilot is essentially kind of whispering in the student's ear, metaphorically speaking, "Hey, here's how you solve this problem.

萨尔瓦:副驾驶本质上是在学生耳边窃窃私语,打个比方来说,“嘿,这就是你解决这个问题的方法。

Here's how you do this," and students build not only the tool, the software that the business needs and then get to put that on their resume and their application for college and university, but they also get to learn by using the tools that likely are going to be part of the core DNA of the developer tool chain two, three, four years from now, as AI starts to permeate our entire stack.

这就是你如何做到这一点”,学生不仅构建业务所需的工具和软件,然后将其放在简历和大学申请中,而且还可以通过使用这些工具来学习,这些工具可能会在两年、三年、四年后成为开发人员工具链核心 DNA 的一部分,因为人工智能开始渗透到我们的整个堆栈中。

That was a pretty cool recent one that I talked to.

这是我最近交谈过的一件非常酷的事情。

Lenny: That is very cool.

莱尼:那太酷了。

I didn't think about just the education lever here of just making it so much easier to learn to code, not even just building code.

我没有想到这里的教育杠杆只是让学习编码变得更加容易,甚至不仅仅是构建代码。

Ryan J.

瑞安·J。

Salva: And that's the thing, Copilot is particularly good not just at taking away some of the effort, but often...

萨尔瓦:事情就是这样,副驾驶特别擅长,不仅会减少一些努力,而且经常......

There's learning a new language, and then there's also just waiting into a code base that you're not necessarily familiar with, right?

学习一门新语言,然后等待进入你不一定熟悉的代码库,对吗?

I mean, heck, sometimes I don't recognize some of the code that I wrote six months ago or a year ago.

我的意思是,哎呀,有时我不认识六个月前或一年前编写的一些代码。

It feels like I'm wading into new territory.

感觉就像我正在涉足新领域。

But maybe you need to fix a bug in an app that you don't often touch, wading into that code base is kind of learning and creating a mental map for that code base.

但也许您需要修复您不经常接触的应用程序中的错误,涉足该代码库是一种学习并为该代码库创建思维导图。

Ryan J.

瑞安·J。

Salva: One of the really magical pieces of Copilot here is that, that AI is collecting context of the application that you're going into.

Salva:Copilot 真正神奇的部分之一是,人工智能正在收集您要进入的应用程序的上下文。

It can help you build that mental map and learn the code base, even if it's a language that you're already familiar with.

它可以帮助您构建思维导图并学习代码库,即使它是您已经熟悉的语言。

Lenny: Awesome.

莱尼:太棒了。

Going back to the beginning of Copilot and how it started, I'm always curious how a project that ends up being a huge deal to a larger company begins and especially how it builds momentum, how it gets buy in, and then just gets out the door.

回到 Copilot 的开始以及它是如何开始的,我总是很好奇一个最终对一家大公司来说是一件大事的项目是如何开始的,特别是它如何建立动力,如何获得支持,然后走出大门。

Can you talk about just the original seed of this idea like, who did it come from, who had the original vision, how did this idea emerge and build momentum where you put resources into it?

你能谈谈这个想法的最初种子吗?它来自谁,谁有最初的愿景,这个想法是如何出现的,并在你投入资源的地方形成动力?

Ryan J.

瑞安·J。

Salva: Oh wow, what a long, and I don't know, depending upon your point of view, sorted or exciting story that is.

萨尔瓦:哦,哇,好长啊,我不知道这是一个有序的还是令人兴奋的故事,这取决于你的观点。

Microsoft and OpenAI have been collaborating for quite a while now on large language models, making its way into all different experiments and different parts of both Microsoft's software portfolio, as well as just helping OpenAI by providing the compute necessary.

微软和 OpenAI 已经在大型语言模型上合作了相当长一段时间,使其进入了微软软件组合的所有不同实验和不同部分,并且通过提供必要的计算来帮助 OpenAI。

It takes massive amounts of compute to train these models.

训练这些模型需要大量的计算。

They were mostly large language models.

它们大多是大型语言模型。

Couple years ago now, it kind of dawned on us that, well, language models aren't just English and Spanish and German and Korean and Japanese, but Python and JavaScript and Java and C# and Closure.

几年前,我们突然意识到,语言模型不仅仅是英语、西班牙语、德语、韩语和日语,还有 Python、JavaScript、Java、C# 和 Closure。

Ryan J.

瑞安·J。

Salva: All of these are languages too.

Salva:所有这些也是语言。

In fact, they're kind of nice from an AI perspective because they're relatively constrained in terms of their semantics, right?

事实上,从人工智能的角度来看,它们有点不错,因为它们在语义方面相对受到限制,对吗?

The number of words, I put that the in scare quotes as it were, that can be expressed in Python, for example, is much smaller than the English language, which has all sorts of different grammar rules and nouns, verbs, adjectives, adverbs.

例如,我用Python表达的单词数量比英语要少得多,英语有各种不同的语法规则和名词、动词、形容词、副词。

We started to see what it would be like to actually bring code to these large language models.

我们开始了解将代码实际引入这些大型语言模型会是什么样子。

The way that I actually got introduced to it is kind of funny.

我实际上被介绍到它的方式有点有趣。

Microsoft and OpenAI had this idea.

微软和 OpenAI 有这个想法。

Ryan J.

瑞安·J。

Salva: At the time, one of the teams that I was responsible for was GitHub's infrastructure team, the team responsible for our data centers, our reliability, our rep time.

Salva:当时,我负责的团队之一是 GitHub 的基础设施团队,该团队负责我们的数据中心、我们的可靠性、我们的代表时间。

We noticed one day that we were getting hammered, I mean absolutely hammered with a tremendous amount of clone requests.

有一天我们注意到我们受到了打击,我的意思是绝对受到了大量克隆请求的打击。

We're like, "Oh my gosh!

我们就像,“天哪!

Is this like a denial of service attack?

这是否类似于拒绝服务攻击?

How are we going to respond to this?

我们将如何应对?

What's going to happen?" We figured out pretty quickly that it was actually OpenAI.

会发生什么事情呢?”我们很快就发现它实际上是 OpenAI。

They were cloning all of our repositories to harvest the data out of GItHub.I mean, it's totally legit practice, but it does have a real consequence.

他们克隆了我们所有的存储库,以从 GItHub 中获取数据。我的意思是,这完全是合法的做法,但它确实产生了真正的后果。

Ryan J.

瑞安·J。

Salva: We were able to step in and mitigate it very quickly.

Salva:我们能够很快介入并缓解问题。

There was not a reliability kind of an uptime incident there, but we're like, "Hey, you all, cool.

那里没有发生可靠性类型的正常运行时间事件,但我们会说,“嘿,你们都很酷。

Love this thing.

喜欢这个东西。

Let's see if we can get that data to you in a more responsible way, in a way that's packaged a little bit more to meet your needs." What we did is just the year before that, We had actually created a snapshot of GitHub's public code for what we call the Arctic Code Vault, right?

让我们看看我们是否可以以更负责任的方式向您提供这些数据,以一种更包装的方式来满足您的需求。”就在前一年,我们实际上为我们所谓的 Arctic Code Vault 创建了 GitHub 公共代码的快照,对吧?

Essentially, this is up in like way in the Northlands of Finland, there's a seed vault.

本质上,这与芬兰北部地区的情况类似,有一个种子库。

We were like, you know what?

我们就像,你知道吗?

Seed vaults are really there to preserve the diversity of the world's flora in seeds in case of some crazy either natural or manmade disaster.

种子库确实是为了在发生一些疯狂的自然或人为灾难时保护种子中世界植物区系的多样性。

Ryan J.

瑞安·J。

Salva: But another really important asset to the world is our code, our open source.

Salva:但是对世界来说另一个真正重要的资产是我们的代码,我们的开源。

This represents actually a lot of the collective, well, certainly software, if not intelligence of kind of the modern world, right?

这实际上代表了很多集体,当然是软件,如果不是现代世界的智能,对吧?

This represents actually a lot of the collective, well, certainly software, if not intelligence of kind of the modern world.

这实际上代表了很多集体,当然,当然是软件,如果不是现代世界的智能的话。

We had put this snapshot of public repositories on this silver film that would be preserved for thousands of years in this Arctic Code Vault.

我们已将公共存储库的快照放在这张银胶片上,该胶片将在北极密码库中保存数千年。

Well, we took that same data snapshot and we brought it to our friends over at OpenAI to see like, okay, what can we do with these large language models built on public code?

好吧,我们拍摄了相同的数据快照,并将其带给 OpenAI 的朋友,看看我们可以用这些基于公共代码构建的大型语言模型做什么?

Ryan J.

瑞安·J。

Salva: Well, it turns out we can do some pretty cool things.

Salva:嗯,事实证明我们可以做一些非常酷的事情。

Just like a translation tool that goes from English to Spanish, Spanish to German, you can also go from English to Python or Python to C#.

就像从英语到西班牙语、西班牙语到德语的翻译工具一样,您也可以从英语到 Python 或 Python 到 C#。

We're like, okay, this is cool.

我们说,好吧,这很酷。

We can start to get not only translation, but a little bit of predicted text here as well.

我们不仅可以开始获得翻译,还可以在这里获得一些预测文本。

We're all I think fairly already familiar with predictive text already in our code editors as IntelliSense.

我认为我们都已经相当熟悉代码编辑器中作为 IntelliSense 的预测文本了。

But in, I don't know, you go to your favorite word processor and chances are that you've got some kind of predictive text happening there as well.

但我不知道,当你打开你最喜欢的文字处理器时,很可能那里也会出现某种预测文本。

Ryan J.

瑞安·J。

Salva: We started experimenting with different user experiences, right?

Salva:我们开始尝试不同的用户体验,对吗?

Do we want it so that you, I don't know, right click and get a little side panel that comes up with a bunch of different options for things that you might want here.

我们是否想要它,以便您(我不知道)右键单击并获得一个小侧面板,其中提供了您可能想要的东西的一堆不同选项。

That was nice because it would give you hold functions, but it's out of the cursor, right?

这很好,因为它会给你保留功能,但它不在光标之外,对吗?

You had to really...

你必须真的...

Even if you weren't switching over to a different window, you still had to switch over to a different panel, which itself was a little bit distracting.

即使您没有切换到不同的窗口,您仍然必须切换到不同的面板,这本身就有点分散注意力。

We eventually came to this idea of inline autocomplete.

我们最终想到了内联自动完成的想法。

Ryan J.

瑞安·J。

Salva: We were able to with the kind of partnership of some of our friends over on the Microsoft side of things, partner with our friends in Visual Studio Code, they're like, hey, there's not really an extensibility yet in your editor for this multi-line autocomplete, but we've got an idea for how this might work.

Salva:我们能够与 Microsoft 方面的一些朋友合作,与 Visual Studio Code 方面的朋友合作,他们会说,嘿,您的编辑器中还没有真正的可扩展性来实现多行自动完成,但我们已经了解了它如何工作。

Played around with the actual presentation of it.

尝试了它的实际演示。

What should the key strokes be?

按键应该是什么?

What should the presentation layer be?

表示层应该是什么?

The gray italicized tech seemed to be a good way of indicating that it was ephemeral, as it were.

灰色斜体技术似乎是表明它是短暂的的好方法。

Pretty early on, we landed on this user experience that is Copilot as most developers experience it today.

很早之前,我们就实现了 Copilot 用户体验,就像今天大多数开发人员所体验的那样。

I want to say that was at least 16 months ago, 14, 16 months ago.

我想说那是至少16个月前、14、16个月前的事了。

Since then, we brought it to developers.

从那时起,我们就把它带给了开发人员。

Lenny: Just to double click on that, you're saying just less than a year and a half ago, this kind of really started as a project and now it's out to the world.

莱尼:双击它,你是说不到一年半前,这种真正作为一个项目开始,现在它已经面向全世界。

Is that right?

是这样吗?

Ryan J.

瑞安·J。

Salva: That is exactly right.

萨尔瓦:完全正确。

That's exactly right.

完全正确。

It's about a year and a half ago.

这是大约一年半前的事了。

Lenny: That's insane.

莱尼:这太疯狂了。

What was that period between OpenAI almost taking down GitHub to I guess that point?

从 OpenAI 几乎拿下 GitHub 到我猜想那段时间是怎样的?

Ryan J.

瑞安·J。

Salva: The period in between kind of OpenAI almost taking down GitHub and then us really arriving at the user experience, part of that was, frankly, a lot of really smart researchers at OpenAI experimenting and doing what only world class AI researchers can do.

Salva:在 OpenAI 几乎摧毁 GitHub 和我们真正实现用户体验之间的时期,坦率地说,其中一部分是 OpenAI 的许多非常聪明的研究人员进行了实验,并做了只有世界一流的人工智能研究人员才能做的事情。

It was a lot of them experimenting, occasionally asking for updates to the data set, tossing back to us a model that we might play with and tinker around with.

他们中的很多人都在进行实验,偶尔要求更新数据集,并向我们扔回一个我们可以使用和修改的模型。

These models have literally thousands of parameters that you can pass to them.

这些模型实际上有数千个可以传递给它们的参数。

When you're really thinking about GPT-3 and CodeX and then the transition from that to something like Copilot, it was not just like the model...

当你真正考虑 GPT-3 和 CodeX,然后从它们过渡到 Copilot 之类的东西时,你会发现它不仅仅是模型......

Ryan J.

瑞安·J。

Salva: Creating the model is one thing, but then figuring out how to use the model in terms of what parameters do you want to adjust for, what do you want to optimize for in terms of...

Salva:创建模型是一回事,但接下来要弄清楚如何使用模型,了解您想要调整哪些参数,您想要优化什么......

A great example of this is performance, right?

一个很好的例子就是性能,对吧?

When you're in a code editor, you don't necessarily want to type, type, type and then have to wait one second, two seconds, three seconds to get a suggestion back when your entire goal is to stay in the flow.

当您使用代码编辑器时,您不一定要键入、键入、键入,然后必须等待一秒、两秒、三秒才能得到建议,因为您的整个目标是保持流畅。

We would run experiments to see how many milliseconds are the right amount such that a developer doesn't feel like they're being interrupted by Copilot and a suggestion.

我们会进行实验,看看多少毫秒是合适的时间,这样开发人员就不会觉得自己被 Copilot 和建议打断了。

Ryan J.

瑞安·J。

Salva: It seems like right now it's around 200 milliseconds.

Salva:现在好像是 200 毫秒左右。

Depending upon where you're in the world, your latency can go up or down a little bit from there.

根据您所在的位置,您的延迟可能会略有上升或下降。

But it seems like the sweet spot is somewhere around 200 milliseconds.

但最佳点似乎是 200 毫秒左右。

Ryan J.

瑞安·J。

Salva: We also experimented quite a bit.

Salva:我们也做了很多实验。

It's not just about the model, but it's also about what you feed the model.

这不仅与模型有关,还与您向模型提供的内容有关。

How do you prompt the model to return back a useful response?

如何提示模型返回有用的响应?

This kind of began a journey of experimentation for what we call prompt crafting.

这就开始了我们所谓的即时制作的实验之旅。

Lenny: Going back to the way this started, it sounds like basically it was kind of this fortunate accident where OpenAI just did something that you didn't expect.

Lenny:回到事情开始的方式,听起来基本上这是一次幸运的意外,OpenAI 只是做了一些你意想不到的事情。

And then somebody within this PhD group that you described is like, "Oh wow.

然后你所描述的这个博士小组中的某个人就像是,“哇哦。

Maybe we could do something really good with this." Is that kind of how it began?

也许我们可以用这个做一些真正好的事情。”事情就是这样开始的吗?

Ryan J.

瑞安·J。

Salva: That's fairly accurate.

萨尔瓦:这是相当准确的。

Yeah.

是的。

I mean, we had a model that really was amazingly good, like a step level change in actual intelligence, right?

我的意思是,我们有一个非常好的模型,就像实际智力的阶跃变化,对吧?

And then marrying that up against a really good use case that actually changes developers' fundamental experience of the creation process, the creative process.

然后将其与一个非常好的用例结合起来,该用例实际上改变了开发人员在创建过程(创意过程)的基本体验。

Lenny: Was there kind of a point at which it was clear to you or leadership in general like, we should double down on this thing and go big?

莱尼:您或领导层是否在某个时刻明确表示,我们应该在这件事上加倍努力,做大事?

Or this smaller team was working on this idea and then you're like, "Oh wow, this is going to work?" Or is it always like, "We will bet on this thing, this is such a big and great idea.

或者这个较小的团队正在研究这个想法,然后你会想,“哦,哇,这会起作用吗?”或者总是这样,“我们会押注在这件事上,这是一个伟大而伟大的想法。

We're going to invest resources for sure from the beginning?"

我们肯定会从一开始就投入资源吗?”

Ryan J.

瑞安·J。

Salva: The original team that was working on Copilot at GitHub was the team that we call GitHub Next.

Salva:在 GitHub 上从事 Copilot 工作的最初团队是我们称为 GitHub Next 的团队。

Essentially their job is to work on second and third horizon projects.

本质上,他们的工作是从事第二和第三阶段的项目。

What some folks might call moonshots, right?

有些人可能称之为登月计划,对吗?

Things that we never really expect work in the next one or two years, but might three, five years down the line actually turn into something meaningful.

我们从未真正期望在未来一两年内实现的事情,但可能在三五年后实际上会变成有意义的事情。

Lenny: Is there a concrete definition of horizon two and three?

莱尼:第二层和第三层有具体的定义吗?

Is it like number of years out like Amazon style?

是不是像亚马逊风格一样过了很多年?

Ryan J.

瑞安·J。

Salva: Not necessarily a concrete definition.

Salva:不一定是具体的定义。

For me, I usually ballpark it as first horizon is the next year, second horizon, the next three years, third horizon, the next five years.

对我来说,我通常会认为第一个地平线是明年,第二个地平线是未来三年,第三个地平线是未来五年。

But we generally think of it more as a measure of ambiguity and confidence level more than calendar dates.

但我们通常更多地将其视为模糊性和置信度的衡量标准,而不是日历日期。

Lenny: This episode is brought to you by Modern Treasury.

莱尼:这一集是由现代财政部为您带来的。

Modern Treasury is a next generation operating system for moving and tracking money.

现代金库是用于转移和跟踪资金的下一代操作系统。

They're modernizing the developer tools and financial processes for companies managing complex payment flows.

他们正在为管理复杂支付流程的公司实现开发工具和财务流程的现代化。

Think digital wallets via crypto on-ramps, right sharing marketplaces, instant lending, and more.

想象一下通过加密货币入口、正确共享市场、即时借贷等实现的数字钱包。

They work with high growth companies like Gusto, Pipe, ClassPass, and Marqeta.

他们与 Gusto、Pipe、ClassPass 和 Marqeta 等高增长公司合作。

Modern Treasury's robust APIs allow engineering to build payment flows right into your product, while finance can monitor and approve everything through a sleek and modern web dashboard.

Modern Treasury 强大的 API 允许工程人员将支付流程直接构建到您的产品中,而财务人员可以通过时尚现代的网络仪表板监控和批准一切。

Lenny: Enabling realtime payments, automatic reconciliation, continuous accounting and compliance solutions, Modern Treasury's platform is used to reconcile over $3 billion per month.

Lenny:Modern Treasury 的平台支持实时支付、自动对账、连续会计和合规解决方案,每月可对账超过 30 亿美元。

They're one of the hottest young FinTech startups on the market today, having raised funding from top firms like Benchmark, Altimeter, SVB Capital, Salesforce Ventures, and Y Combinator.

他们是当今市场上最热门的年轻金融科技初创公司之一,从 Benchmark、Altimeter、SVB Capital、Salesforce Ventures 和 Y Combinator 等顶级公司筹集了资金。

Check them out at ModernTreasury.com.

请访问 ModernTreasury.com 查看它们。

I'd love to spend a little bit more time on this.

我很愿意在这上面多花一点时间。

It's so interesting.

太有趣了。

Is this a Microsoft thing, just having these three horizons in a certain percentage of resources or bet on different horizons?

这是微软的事情吗,只是将这三个视野放在一定比例的资源中,还是押注在不同的视野上?

Ryan J.

瑞安·J。

Salva: I would say it is not necessarily Microsoft thing, but is definitely at GitHub, how we have really contextualized it.

Salva:我想说这不一定是微软的事情,但绝对是在 GitHub 上,我们如何真正将其情境化。

Not to say that there aren't teams at Microsoft who might also use that methodology, but where we've been really maybe explicit or intentional about it is at GitHub where we've actually ring-fenced a team to think about that horizon two and horizon three work and kept them separate from EPD.

并不是说微软没有团队也可能使用这种方法,但我们在 GitHub 上确实可能明确或有意地表达了这一点,我们实际上圈定了一个团队来考虑第二层和第三层工作,并将它们与 EPD 分开。

EPD here being engineering, product, and design, the folks who are working on building productized operational products that we bring to market and we either give away or monetize in some way.

这里的 EPD 指的是工程、产品和设计人员,他们致力于构建产品化的运营产品,我们将这些产品推向市场,我们要么以某种方式赠送或货币化。

Lenny: This is so interesting.

莱尼:这太有趣了。

There's a lot of companies that have these sorts of R&D groups, new product experience team at Facebook and Google has one.

很多公司都有这样的研发团队,Facebook 和谷歌就有一个新产品体验团队。

I'm not sure how many successes have come out of these teams.

我不确定这些团队取得了多少成功。

From what I've seen, and I'm curious, what have you...

从我所看到的来看,我很好奇,你有什么...

And clearly you had a huge success as far as I can tell so far.

显然,据我所知,到目前为止,你们取得了巨大的成功。

Is there anything you've learned about how to do this, where you invest in these big moonshots within a larger company?

您是否学到了如何做到这一点,在一家大公司内投资这些大型登月计划?

Ryan J.

瑞安·J。

Salva: I mean, I think the first step is to invest in it.

Salva:我的意思是,我认为第一步是投资。

The first step is really hire really smart people, attract smart people, and give them the opportunity to be creative.

第一步是真正雇用真正聪明的人,吸引聪明人,并给他们发挥创造力的机会。

Don't expect anything out of them that is going to turn into a money maker or something that is going to be beholden to fundamentals around security, privacy, uptime, accessibility, all that groovy kind of stuff upfront.

不要指望他们会做出任何能赚钱的东西,或者会依赖于安全、隐私、正常运行时间、可访问性等基本原则的东西,以及所有这些预先准备好的东西。

They need space to create and experiment.

他们需要空间来创造和实验。

Ryan J.

瑞安·J。

Salva: And also, when you do get to a place where that team has an idea that is clearly connected to a representative set of customers who have a genuine problem and there is signal with at least medium confidence that this solution, whatever it is, solves it in a novel way, that's the time to start thinking about, okay, let's actually put a little bit of...

Salva:而且,当你确实发现团队有一个想法,该想法与具有真正问题的代表性客户群明显相关,并且至少有中等信心的信号表明该解决方案(无论它是什么)以新颖的方式解决问题时,那就是开始思考的时候了,好吧,让我们实际上放一点......

I'm going to call this market testing.

我将其称为市场测试。

It's nothing so formal as market testing.

这并不像市场测试那么正式。

It's really just like, let's start to actually bring prototypes of this in front of more and more customers to kind of test it out and see, hey, is this actually solving a problem for you?

这真的就像,让我们开始将其原型实际带到越来越多的客户面前进行测试,看看,嘿,这真的能为您解决问题吗?

Is this something that you would use?

这是你会用的东西吗?

This is where the transition between Next and EPD at GitHub really started.

这就是 GitHub 上的 Next 和 EPD 之间的过渡真正开始的地方。

Ryan J.

瑞安·J。

Salva: This is actually where my role in the product cycle kind of really started to increase.

Salva:这实际上是我在产品周期中的角色真正开始增加的地方。

I had kind of been in tight connection and been monitoring the work and kind of consulting a little bit with the Next team prior to that.

在此之前,我一直与 Next 团队保持着紧密的联系,一直在监督工作并提供一些咨询。

But it was that moment when we identified that, okay, this is actually something real.

但正是在那一刻,我们发现,好吧,这实际上是真实的。

Customers are saying, developers are saying, "This is magical.

客户和开发人员都说,“这太神奇了。

This does something extraordinary that I could not do on my own," that we started to think about, okay, how do we transition this over?

这做了一些我自己无法做到的非凡事情,”我们开始思考,好吧,我们如何过渡?

From there, we're really just like, okay, we think we've got a hit here.

从那时起,我们真的就想,好吧,我们认为我们在这里很受欢迎。

We think we've got something that we can actually bring to developers.

我们认为我们已经有了一些可以真正带给开发者的东西。

Ryan J.

瑞安·J。

Salva: We made an intentional decision to take some of the researchers who were in the Next team and for a finite period of time, move them over to create a new EPD squad.

Salva:我们特意决定将 Next 团队中的一些研究人员在有限的时间内转移到新的 EPD 团队中。

We want them to be researchers, but we need to do knowledge transfer and we needed to actually provide the seed for a team that could eventually operationalize and productize.

我们希望他们成为研究人员,但我们需要进行知识转移,我们需要为最终可以运作和产品化的团队提供真正的种子。

And that kind of began the technical preview where we started to invite tens of thousands, then hundreds of thousands to the technical preview.

技术预览就这样开始了,我们开始邀请数万人,然后是数十万人来参加技术预览。

In that technical preview, we started to see crazy mind-blown emoji tweets and threads on Hacker News about people getting really, really excited about it.

在那个技术预览中,我们开始在黑客新闻上看到疯狂的、令人兴奋的表情符号推文和帖子,人们对此感到非常非常兴奋。

Ryan J.

瑞安·J。

Salva: That's how we knew it was time to start scaling and it was time to really start thinking about how do we do hiring so that we can build in some insulation around these researchers so that they can eventually go back to GitHub Next to do what they do best, which is be innovative and creative and think about the next moonshot.

Salva:这就是我们知道是时候开始扩展的时候了,是时候真正开始考虑如何招聘人才,以便我们可以在这些研究人员周围建立一些隔离,以便他们最终可以回到 GitHub Next 做他们最擅长的事情,即创新和创造力,并思考下一个登月计划。

That process, that took...

那个过程,花了...

Well, we're actually still kind of at the tail end of it now.

好吧,我们现在实际上还处于尾声。

Here we are, like I said, roughly a year and a half after the initial creation of the product, having gone through technical preview, have achieved general availability.

正如我所说,我们在产品最初创建大约一年半后,经过技术预览,实现了普遍可用性。

We've now hired in a team around them.

我们现在已经聘请了一个以他们为中心的团队。

Ryan J.

瑞安·J。

Salva: The researchers actually as early as last month have started to gradually move back over to GitHub Next.

Salva:研究人员实际上早在上个月就开始逐步回到 GitHub Next。

An EPD squad, multiple EPD squads actually are now taking the product forward and starting to respond to customer feedback to think about, okay, how do we now as a product team, carry this roadmap forward from an idea that originated in GitHub Next?

实际上,一个 EPD 团队、多个 EPD 团队现在正在推动产品向前发展,并开始响应客户反馈,思考,好吧,作为一个产品团队,我们现在如何从源自 GitHub Next 的想法中推进这个路线图?

Lenny: I love that insight of bringing the people along and not just kind of like, cool, we'll take it from here.

莱尼:我喜欢这种让人们一起参与的洞察力,而不仅仅是一种“酷,我们将从这里开始”的想法。

If you were to build a team like this again somewhere to this kind of R&D horizon three or two teams, is there anything else you would do differently, any lessons you take away from this experience for maybe founders or PMs working at larger companies that are like, "Hey, we should have something like this?" Is there anything else that you find is important for making something like this successful?

如果你要在这种研发水平三到两个团队的某个地方再次建立一个这样的团队,你是否会做其他不同的事情,你从这次经历中吸取的教训,也许是在大公司工作的创始人或产品经理,“嘿,我们应该有这样的东西?”您认为还有什么其他因素对于此类活动的成功至关重要吗?

Ryan J.

瑞安·J。

Salva: The criteria for moving researchers back into their R&D team, whatever that happens to be for your organization, that can't be based on a calendar.

Salva:将研究人员调回研发团队的标准,无论您的组织发生什么情况,都不能基于日历。

It needs to be based on a replacement in seat, who's actually doing the job and has picked up all of the skills necessary, and only then can the researcher move back.

它需要以替代座位为基础,该替代人员实际上正在做这项工作并掌握了所有必要的技能,只有这样研究人员才能返回。

Make sure that you've got continuity of expertise and sets and domain familiarity before you move over.

在转移之前,请确保您拥有专业知识和组合的连续性以及对领域的熟悉程度。

I feel like we've managed that pretty well today.

我觉得我们今天做得很好。

As well, it's critical that the team who is taking over from the R&D shop feels like they have control over their own future.

同样,至关重要的是,让接手研发部门的团队感到自己能够掌控自己的未来。

You can't really delegate roadmap to an R&D team.

您不能真正将路线图委托给研发团队。

Ryan J.

瑞安·J。

Salva: The team who's responsible for maintaining the product, for building the product, who has the closest feedback loop with the end customer, they're the ones who really need to own and feel like they control the roadmap.

Salva:负责维护产品、构建产品的团队,与最终客户拥有最密切的反馈循环,他们是真正需要拥有并感觉自己控制路线图的人。

Making sure that you're not outsourcing innovation exclusively to an R&D team, but that is happening within the product team as they take ownership over the idea and over the use case in the customer.

确保您不会将创新完全外包给研发团队,而是在产品团队内部发生,因为他们对想法和客户的用例拥有所有权。

Last I would say here is really that engineering fundamentals in a lot of ways are the contracts that differentiate an R&D team from an operational product team.

最后我想说的是,工程基础在很多方面都是区分研发团队和运营产品团队的合同。

Ryan J.

瑞安·J。

Salva: Bringing that fundamentals process into it is going to feel candidly a little bit unnatural to the researchers.

Salva:坦率地说,将这一基本过程纳入其中对于研究人员来说会感觉有点不自然。

That takes therefore a little bit of cultural change management for everyone to just adapt their way of working and understand that we're graduating from an experiment and a research project to an operational product, and often because those researchers are...

因此,每个人都需要进行一些文化变革管理,才能适应他们的工作方式,并了解我们正在从实验和研究项目过渡到可操作的产品,通常是因为这些研究人员......

They're the first wave that come over.

他们是第一波到来的人。

They're the seed of the project.

他们是该项目的种子。

It's going to feel a little bit unnatural to them and they probably won't have all the right skillsets in order to make that transition.

他们会感觉有点不自然,而且他们可能不具备完成这种转变所需的所有正确技能。

Ryan J.

瑞安·J。

Salva: Making sure that you've got a good mix of engineers who are comfortable maintaining a service, as well as engineers and researchers who are really thinking about, what is the idea that we've created, what is the new thing that we've brought to market, and can bring that vision to it.

Salva:确保你拥有一支能够轻松维护服务的工程师以及真正思考我们创造的想法是什么、我们推向市场的新产品是什么以及能够将这一愿景付诸实践的工程师和研究人员的良好组合。

Lenny: Yeah, I can totally see the challenge that comes from...

莱尼:是的,我完全可以看到来自......的挑战。

This was my thing.

这是我的事。

I've been working on this.

我一直在做这方面的工作。

What are you guys doing to this project?

你们对这个项目做什么?

Where is this going?

这是要去哪里?

I'm not sure I'm feeling...

我不确定我的感觉...

And then there's all these new asks that are coming at you like, oh my God, this was so much fun and now I have to scale this freaking thing.

然后你就会收到所有这些新的要求,就像,天哪,这太有趣了,现在我必须扩展这个可怕的事情。

Ryan J.

瑞安·J。

Salva: I mean, this is the best problem in the world to have.

萨尔瓦:我的意思是,这是世界上最好的问题。

Talk about kind of customer ask, for Copilot in particular, the amount of chatter, the amount of customer feedback that was coming in especially for us with AI, I mean, the world is still figuring out AI, candidly.

谈论客户的要求,特别是对于 Copilot 来说,喋喋不休的数量,特别是对于我们人工智能而言的客户反馈数量,我的意思是,坦率地说,世界仍在弄清楚人工智能。

I mean, we're getting a lot better at it, especially in the last couple of years with things like Dolly and Copilot.

我的意思是,我们在这方面做得越来越好,尤其是在过去几年里,我们在 Dolly 和 Copilot 等方面做得更好。

But it brings with it not only engineering challenges, but also, frankly, ethical challenges and legal challenges, like making sense of what our expectations are of AI.

但它不仅带来了工程挑战,坦率地说,还带来了道德挑战和法律挑战,比如理解我们对人工智能的期望。

If AI produces something that is offensive, who's at fault?

如果人工智能产生了令人反感的东西,谁该负责?

Ryan J.

瑞安·J。

Salva: Our stance on it, what we ended up coming to is actually the framing of Copilot as an AI pair programmer I think is a useful one.

Salva:我们对此的立场,我们最终得出的结论实际上是将 Copilot 定义为人工智能结对程序员,我认为这是一个有用的框架。

Pair programmer, I suspect most of your listeners will know, but pair programmer is usually two developers sitting side by side working on a problem together.

结对程序员,我怀疑大多数听众都会知道,但结对程序员通常是两个开发人员并排坐着一起解决问题。

One's at the keyboard and the other one's kind of helping them talk through it, talk through the ideas and make corrections, that kind of thing.

一个人坐在键盘上,另一个人帮助他们讨论,讨论想法并进行更正,诸如此类的事情。

Well, if Copilot is your AI pair programmer and they're whispering crazy stuff into your ear and they're bringing politics into it or gender identity into it or, I don't know, whatever other...

好吧,如果 Copilot 是你的人工智能配对程序员,他们在你耳边低语着疯狂的东西,他们将政治或性别认同带入其中,或者,我不知道,其他什么......

Ryan J.

瑞安·J。

Salva: They're spouting off slang and slander and all that kind of stuff.

萨尔瓦:他们滔滔不绝地说着俚语、诽谤之类的话。

You're probably not going to be able to focus on your work, right?

你可能无法专注于你的工作,对吧?

It's going to be really distracting.

这真的会让人分心。

Really coming down to some principles about what is the use case we're trying to solve, what is appropriate, I put this in scare quotes, behavior of the AI bot sitting side by side with you, helped us create some principles or some guidelines for the developer experience that we wanted to create.

真正归结为一些关于我们正在尝试解决的用例是什么、什么是合适的原则,我将其放在吓人的引号中,与您并排坐着的人工智能机器人的行为,帮助我们为我们想要创建的开发人员体验创建了一些原则或指南。

Lenny: Oh, I love that.

莱尼:哦,我喜欢这个。

Just kind of creating a persona of the thing to help you inform how the behavior of the thing should work.

只是创建事物的角色来帮助您了解事物的行为应该如何运作。

How do you work through these challenges?

您如何应对这些挑战?

Is it discussions with you and the legal team?

是与您和法律团队进行讨论吗?

I don't know, these ethical things are really tricky, I imagine.

我不知道,我想这些道德问题真的很棘手。

How do you approach them like that as a product team?

作为一个产品团队,你如何对待他们?

Ryan J.

瑞安·J。

Salva: It is conversations with a very, very wide cast of characters.

萨尔瓦:这是与非常非常广泛的人物的对话。

This product in particular, I probably spent more time with legal than any other products that I've ever kind of been responsible for.

特别是这个产品,我在法律上花费的时间可能比我负责过的任何其他产品都多。

All wonderful creative people.

所有出色的创意人士。

But it's not just legal.

但这不仅仅是合法的。

It is also privacy and security champions.

它也是隐私和安全的捍卫者。

It is, frankly, developers, like the people who are using it, listening to them.

坦率地说,开发人员就像使用它的人一样,正在倾听他们的意见。

Hey, what works here?

嘿,这里有什么作用?

What doesn't work for you here?

这里什么对你不起作用?

Why is this offensive?

为什么这令人反感?

Why is it not offensive?

为什么没有攻击性?

We'll continue on the example of the crazy pair programmer whispering crazy things into our year.

我们将继续讨论疯狂的结对程序员在我们这一年里低声谈论疯狂的事情的例子。

When we first started out, we didn't really have any filter on Copilot whatsoever the very, very, very early days.

当我们刚开始时,我们在 Copilot 上并没有任何过滤器,无论是非常非常早期的。

Ryan J.

瑞安·J。

Salva: And then eventually we're like, okay, it needs to be slightly more controlled experience.

Salva:最终我们会想,好吧,它需要稍微更受控制的体验。

We need to edit out some of the most egregious stuff.

我们需要删除一些最令人震惊的内容。

We introduced a simple block list of words, and these block lists are always fraught with peril, like which words are okay, which words are not okay.

我们引入了一个简单的单词阻止列表,这些阻止列表总是充满危险,比如哪些单词可以,哪些单词不可以。

All of a sudden, we become editors of language and that's kind of a scary place to be.

突然间,我们变成了语言编辑,这是一个可怕的地方。

I'm not comfortable with it at least.

至少我对此不太舒服。

But at a certain level, it has to be done, because otherwise you're going to create a bad developer experience.

但在某种程度上,它是必须要做的,因为否则你将会创造糟糕的开发者体验。

Ryan J.

瑞安·J。

Salva: Often we would get feedback from developers of like, "Hey, this particular word was blocked.

Salva:我们经常会从开发者那里得到这样的反馈:“嘿,这个特定的词被屏蔽了。

That it was blocked either was offensive to me or prevented me from being able to get good value out of the product."

它被屏蔽要么冒犯了我,要么阻止我从产品中获得良好的价值。”

Ryan J.

瑞安·J。

Salva: Always kind of dancing the dance of editorial content.

Salva:总是在编辑内容中跳舞。

We're actually at a place now where we're able to partner with the Azure Department of a Responsible AI, and they've created some really extraordinary models that help detect I'll call it sentiment for lack of a better word, but basically when there is something that is patently offensive.

实际上,我们现在能够与 Azure 负责任的人工智能部门合作,他们创建了一些非常出色的模型,可以帮助检测我将其称为情绪,因为没有更好的词,但基本上是在存在明显令人反感的东西时。

Because there are some words that in some contexts may be offensive and in some context may be totally reasonable, especially when you get into software for medical kind of scenarios, right?

因为有些词在某些情况下可能是冒犯性的,而在某些情况下可能是完全合理的,特别是当您进入用于医疗场景的软件时,对吗?

Ryan J.

瑞安·J。

Salva: Being able to start to shift a little bit to focus or to rely on AI models that can also do a better job than we could with crude or simple block lists is maybe another proof point both of how AI as a solution for common development problems is getting way better at solving more parts of our stack or filling in for more parts of our stack.

Salva:能够开始稍微转移注意力或依赖人工智能模型,这些模型也可以比我们使用原始或简单的阻止列表做得更好,这可能是另一个证明,证明人工智能作为常见开发问题的解决方案如何更好地解决我们堆栈的更多部分或填补我们堆栈的更多部分。

At least in our case, we were pretty fortunate to be able to deliver on or depend on a parent company's contributions to solve a real acute problem that GitHub probably could not have solved on our own.

至少在我们的例子中,我们非常幸运能够依靠母公司的贡献来解决 GitHub 可能无法独自解决的真正尖锐问题。

Lenny: I never thought that Copilot would be...

莱尼:我从没想过副驾驶会是……

That you would have to worry about it saying things that are crazy.

你必须担心它会说一些疯狂的话。

That is wild that you guys have to deal with that.

你们必须处理这个问题,这太疯狂了。

Wasn't it Microsoft that had that bot that turned really negative and eventually shut down?

难道不是微软的那个机器人变得非常消极并最终关闭了吗?

Ryan J.

瑞安·J。

Salva: What was its name?

萨尔瓦:它叫什么名字?

Talia or something like that?

塔利亚还是类似的东西?

Ryan J.

瑞安·J。

Salva: Yeah, something like that.

萨尔瓦:是的,类似的事情。

We don't want another one of those incidences.

我们不希望再发生这样的事件。

Lenny: Wow.

莱尼:哇。

What this makes me think about is your team is at the forefront of AI in this applied way.

这让我想到的是,你们的团队在这种应用方式上处于人工智能的最前沿。

I'm curious what your thinking is on just where this goes for developers especially.

我很好奇你对这对开发人员来说有何想法。

I saw a stat that maybe 40% of people's code is now written by Copilot.

我看到一个统计数据,现在大概 40% 的人的代码是由 Copilot 编写的。

I don't know if that's right.

我不知道这是否正确。

But is the vision in the future becomes something like 90?

但未来的愿景会变成90后吗?

Where do you see this all going?

您认为这一切将走向何方?

Ryan J.

瑞安·J。

Salva: Just to put a fine point on that stat, it is 40% is specifically for Python developers.

Salva:需要强调一点的是,40% 是专门针对 Python 开发人员的。

Candidly, it varies depending upon the language.

坦率地说,它因语言而异。

Because as you might imagine, some languages have better representation in the public domain than others.

因为正如您可能想象的那样,某些语言在公共领域比其他语言具有更好的代表性。

And usually both the volume and the diversity of training data correlates with the quality of suggestions, which is then represented by either the number of lines written or the acceptance rate or any one of a number of other metrics.

通常,训练数据的数量和多样性都与建议的质量相关,然后建议的质量由写入的行数或接受率或许多其他指标中的任何一个来表示。

Lenny: Awesome.

莱尼:太棒了。

Thanks for clarifying.

感谢您的澄清。

Ryan J.

瑞安·J。

Salva: Yeah, totally.

萨尔瓦:是的,完全如此。

We see it range anywhere from the upper twenties to the forties across all the different languages.

我们发现,在所有不同的语言中,它的范围从二十多岁到四十多岁。

Lenny: Just to throw this out there, as a not great engineer, I used to be an engineer for about 10 years, I welcome our AI Overlords writing all my code.

Lenny:顺便说一句,作为一名不算出色的工程师,我曾经当了大约 10 年的工程师,我欢迎我们的 AI 霸主编写我的所有代码。

I'm excited for this to do more and more.

我很高兴能做越来越多的事情。

And yes, I'm curious where you think this goes.

是的,我很好奇你认为这会发生什么。

Ryan J.

瑞安·J。

Salva: It does.

萨尔瓦:确实如此。

It enables even mediocre developers like myself to be able to do some pretty amazing things.

它甚至使像我这样平庸的开发人员也能够做一些非常令人惊奇的事情。

But where's it going?

但它要去哪里呢?

First, I think, I hope it's obvious to most developers that AI is going to infuse pretty much our entire development stack in the not so distant future.

首先,我认为,我希望大多数开发人员都清楚,人工智能将在不久的将来融入我们的整个开发堆栈。

Copilot is really just the very tip of the sphere for a lot of innovations and better managing maybe our build queues or helping to...

Copilot 实际上只是许多创新和更好地管理我们的构建队列或帮助...的最尖端。

Here's a great one.

这是一个很棒的。

I don't know about you, but often the comments that I get with commit messages and PRs aren't super great.

我不了解你的情况,但我收到的提交消息和 PR 的评论通常都不是很好。

It puts a lot of effort onto the code reviewer to go figure out what the developer was actually trying to do.

它让代码审查者花费了大量的精力来弄清楚开发人员实际上想要做什么。

Ryan J.

瑞安·J。

Salva: What if AI could summarize all of your changes with your full request and you just have to, as the contributing developer, just review it to make sure it's accurate, send it on its way, and you don't have to put in extra effort for that.

Salva:如果人工智能可以根据您的完整请求总结您的所有更改,而您只需作为贡献开发人员,只需对其进行审查以确保其准确,然后将其发送出去,而您无需为此付出额外的努力,那会怎么样?

There are lots and lots of different opportunities for AI to essentially be able to take some of the drudgery out of our work so that we can focus on creative acts.

人工智能有很多很多不同的机会,基本上能够从我们的工作中减轻一些苦差事,这样我们就可以专注于创造性的行为。

What I hear from developers and what I experience myself is that Copilot kind of forces me to think a little bit more about what are the design patterns I'm trying to create?

我从开发人员那里听到的以及我自己的经历是,Copilot 迫使我更多地思考我正在尝试创建的设计模式是什么?

Ryan J.

瑞安·J。

Salva: What is the end user experience or the outcomes that I'm trying to drive with my code, and that I can rely on Copilot to scaffold out a lot of that so that I can focus on more creative work?

Salva:最终用户体验或我试图用代码实现的结果是什么?我可以依靠 Copilot 来构建其中的大部分内容,以便我可以专注于更具创造性的工作?

That is really what I hope for our industry five, 10 years from now, is that not only will we be inviting more developers or more people to become developers by essentially providing a layer of abstraction a little bit, or at least a little bit of a hand in development, but that also the really experienced developers are focusing on much larger problems and focusing on outcomes and creativity rather than really low level difficult rote memorization of things like syntax or ordering of parameters and the like.

这就是我对我们行业五年、十年后的真正希望,我们不仅会通过本质上提供一点抽象层或至少在开发中提供一点帮助来邀请更多的开发人员或更多的人成为开发人员,而且真正有经验的开发人员也会关注更大的问题并关注结果和创造力,而不是真正低水平的困难死记硬背语法或参数排序等内容。

Lenny: Great.

莱尼:太好了。

If nothing else, that'll keep people from just having a tab of Stack Overflow, copy and pasting every function that they're trying to figure out.

如果不出意外的话,这将阻止人们仅仅使用 Stack Overflow 的一个选项卡,复制并粘贴他们试图找出的每个函数。

Ryan J.

瑞安·J。

Salva: I want Stack Overflow to stay in business, but I would mind a little bit less contact switching myself.

Salva:我希望 Stack Overflow 继续营业,但我介意自己少一点联系方式切换。

Lenny: In the experience of scaling this thing, what would you say has been the biggest challenge either technologically or even operationally just kind of scaling it to a real product that people are paying for?

Lenny:在扩展这个东西的经验中,你认为最大的挑战是什么,无论是技术上还是操作上,只是将其扩展到人们付费的真实产品?

Ryan J.

瑞安·J。

Salva: There's a few dimensions of that.

Salva:这有几个方面。

One is a problem that's very much of our time in the world, namely that supply chains have been disrupted dramatically over the course of the last few years.

其中一个是我们这个世界大部分时间都面临的问题,即供应链在过去几年中遭到了严重破坏。

It turns out that Copilot for both training and operating the models requires some very rare and unique GPUs that there's not a lot of global supply of.

事实证明,用于训练和操作模型的 Copilot 需要一些非常稀有且独特的 GPU,而全球供应量并不多。

Part of it is just like, can we get enough hardware in order to run these things?

其中一部分就像,我们可以获得足够的硬件来运行这些东西吗?

We've actually earmarked quite a bit of capacity, and we are greedy, greedy, greedy for more capacity globally.

实际上,我们已经指定了相当多的产能,而且我们非常贪婪,非常贪婪地在全球范围内寻求更多的产能。

As soon as we can produce those chips and get them in data centers, we do it.

一旦我们能够生产这些芯片并将它们放入数据中心,我们就会这样做。

Ryan J.

瑞安·J。

Salva: That's been one kind of unique challenge.

Salva:这是一种独特的挑战。

I would also say here that operationally, another challenge has been, how do we create a model that the community really feels like ownership over, right?

我还想说,在操作上,另一个挑战是,我们如何创建一个让社区真正感觉拥有所有权的模型,对吗?

The dialogue that's had to happen as we brought an AI tool to market, especially one that is trained on public code, has required a lot of dialogue between us and our community.

当我们将人工智能工具推向市场时,必须进行对话,尤其是经过公共代码训练的工具,需要我们和社区之间进行大量对话。

Every good product manager should be spending as much of their time as possible with their customers, with their potential customers.

每个优秀的产品经理都应该花尽可能多的时间与客户和潜在客户在一起。

Ryan J.

瑞安·J。

Salva: Copilot, in particular, has been a more complicated kind of rollout because we as an industry, as a society are still figuring out how to make sense of it.

Salva:Copilot 的推出尤其复杂,因为我们作为一个行业、一个社会仍在弄清楚如何理解它。

The amount of give and take between developers and us as a product team has really required us to scale up more of the product team than it has the engineering team.

作为一个产品团队,开发人员和我们之间的付出和索取确实要求我们扩大产品团队的规模,而不是工程团队的规模。

Ryan J.

瑞安·J。

Salva: It's a couple of different reasons.

Salva:有几个不同的原因。

I mean, one, like I said, we are trained on public code.

我的意思是,正如我所说,我们接受过公共代码方面的培训。

Not all of the community is really sure like, when is it okay to train a model on public code?

并非所有社区都真正确定什么时候可以在公共代码上训练模型?

When is it not okay to train a model on public code?

什么时候不适合在公共代码上训练模型?

Is Copilot producing secure suggestions?

Copilot 是否提供安全建议?

Is Copilot producing bug buggy suggestions?

Copilot 是否会提出错误建议?

There's a lot of doubt.

有很多疑问。

There's a lot of very healthy skepticism.

有很多非常健康的怀疑论。

Actually I mean that genuinely.

其实我的意思是真心的。

I want people to be skeptical of Copilot.

我希望人们对副驾驶持怀疑态度。

We owe it to ourselves as a community to be skeptical of any AI.

作为一个社区,我们有责任对任何人工智能持怀疑态度。

Ryan J.

瑞安·J。

Salva: Because just like there's great potential for benefit, there's also great potential for harm.

萨尔瓦:因为就像有巨大的潜在好处一样,也有很大的潜在危害。

People keeping us accountable like, how are you preventing things like model poisoning?

人们让我们负起责任,比如,你们如何防止模型中毒之类的事情发生?

Is there going to be a new attack vector that we just haven't really thought of yet around AI that might produce negative consequences?

围绕人工智能是否会出现一种我们尚未真正想到的、可能产生负面后果的新攻击向量?

We think that we've done a really good and responsible job of that by making sure that first, we are very clear that Copilot is not a replacement for a developer.

我们认为,我们在这方面做得非常好且负责任,首先我们非常清楚 Copilot 并不是开发人员的替代品。

It will never be.

永远不会。

Ryan J.

瑞安·J。

Salva: We do not want Copilot auto generating code where a thinking, reasoning, breathing human being is not on the other side of that keyboard making recent decisions.

Salva:我们不希望 Copilot 自动生成代码,因为键盘的另一边没有一个会思考、推理、呼吸的人来做出最近的决定。

We do not want Copilot to replace any other part of the stack, whether it is static analysis tools or your unit tests or whatever kind of measures you're putting in today to make sure that your humans produce good quality code.

我们不希望 Copilot 取代堆栈的任何其他部分,无论是静态分析工具还是单元测试,或者您今天采取的任何类型的措施,以确保您的人员生成高质量的代码。

We want you to keep all of those same systems in place to make sure that humans who are leveraging tools like Copilot continue to produce that good quality code.

我们希望您保留所有这些相同的系统,以确保使用 Copilot 等工具的人员继续生成高质量的代码。

Ryan J.

瑞安·J。

Salva: But there's a lot of at the same time anxiety of like, where is AI stack?

Salva:但是同时也有很多焦虑,比如人工智能堆栈在哪里?

Is AI eventually going to be...

人工智能最终会成为...

This is back to your question about where will we be five, 10 years from now.

这又回到了你关于五年、十年后我们会怎样的问题。

Will it be writing 90% of the code?

它会编写 90% 的代码吗?

We don't want Copilot to be that...

我们不希望副驾驶成为那样......

We don't want it to replace anything.

我们不希望它取代任何东西。

We want it to augment.

我们希望它能够增强。

The idea here is really that AI is an enabler for developers to focus on the creative work, to stay in the flow, to be able to move faster.

这里的想法实际上是,人工智能是开发人员专注于创造性工作、保持流畅、能够更快地行动的推动者。

Working through those anxieties, working through that healthy skepticism takes conversation.

克服这些焦虑、克服健康的怀疑需要对话。

It takes dialogue.

这需要对话。

And that takes us on the product side having that guided conversation with the community.

这让我们在产品方面与社区进行引导性对话。

Lenny: It feels like it connects back to your education back in the day, philosophy and literature.

莱尼:感觉这与你当时的教育、哲学和文学有关。

How convenient is that?

那有多方便呢?

Ryan J.

瑞安·J。

Salva: It often feels very connect...

Salva:常常让人感觉非常有联系......

I mean, certainly the education side of things taught me that the importance of dialogue, the importance of skepticism is valuable in so much more than esoteric armchair ponderings.

我的意思是,当然,教育方面的事情教会了我对话的重要性,怀疑主义的重要性,这比深奥的扶手椅思考更有价值。

It's actually applicable to the real world.

它实际上适用于现实世界。

Lenny: Maybe a final question before we get to our very exciting lightning round.

莱尼:在我们进入非常激动人心的闪电回合之前,也许是最后一个问题。

Lenny: Just looking back at this whole experience of, one, just building, incubating, launching this big bold bet within a big company, you can go in either direction, either just any lessons on just taking a bold bet versus incremental wins and how you think about investing in these two kind of categories, or just within a large company, a lesson of just how to build something like this, like a massive new product from just a seed of an idea to a large new business line potentially.

莱尼:回顾一下整个经历,一,在一家大公司内建立、孵化、启动这个大胆的大赌注,你可以朝任一方向走,要么只是关于大胆赌注与增量胜利的任何教训,以及你如何考虑投资这两种类别,要么只是在一家大公司内,关于如何建立这样的东西,比如一个巨大的新产品,从一个想法的种子到一个潜在的大型新业务线。

Ryan J.

瑞安·J。

Salva: As both a product manager and a portfolio manager of multiple products, I'm responsible for multiple product lines at GitHub, the allocation of time, of focus, energy, and resources becomes a really challenging question.

Salva:作为产品经理和多个产品的组合经理,我负责 GitHub 的多个产品线,时间、焦点、精力和资源的分配成为一个非常具有挑战性的问题。

The answer to which isn't always the same, depending upon the time, world circumstances, organizational circumstances, technology circumstances.

答案并不总是相同的,具体取决于时间、世界环境、组织环境、技术环境。

As a general rule, as a general principle, I certainly try to make sure that we're always reserving some capacity for bold, audacious experimental research projects.

作为一般规则,作为一般原则,我当然会尽力确保我们始终为大胆、大胆的实验研究项目保留一些能力。

You can think of those really uncertain bets as being five to 10% of the team's capacity.

你可以将那些真正不确定的赌注视为团队能力的 5% 到 10%。

About 25, maybe 30% of the team's capacity should generally be on just operations.

大约 25%,也许 30% 的团队能力通常应该用于运营。

Ryan J.

瑞安·J。

Salva: How do we keep our in-market products meeting customer expectations?

Salva:我们如何让我们的市场产品满足客户的期望?

And then the remainder of it, what is that, about 60% or so, is really on incremental progress for our end market products.

然后剩下的部分,大约 60% 左右,实际上是我们终端市场产品的渐进进展。

How do we make iterative improvements and continue to actually realize payoff for the larger bets that we made one, two, three, four years back?

我们如何进行迭代改进,并继续为我们一年、两年、三年、四年前做出的更大赌注真正实现回报?

And from a rough distribution, that's generally how I run my larger teams.

从粗略的分布来看,这通常就是我管理大型团队的方式。

That works when you have larger teams though.

当你有更大的团队时,这很有效。

At startups, where we were pretty much only a big bet, obviously your percentages get very different and it becomes a matter of you're all in for that one proverbial lottery ticket.

在初创公司,我们几乎只是下了一个大赌注,显然你的百分比会变得非常不同,这变成了你全力投入一张众所周知的彩票的问题。

Lenny: Awesome.

莱尼:太棒了。

Thanks for sharing that.

感谢您分享这一点。

I was going to ask you the percentages that you recommend.

我本来想问你推荐的百分比。

Thank you for getting to that.

感谢您能做到这一点。

With that, we've gotten to our very exciting lightning round.

至此,我们进入了非常激动人心的闪电回合。

I'm just going to ask you five questions briefly and just whatever comes to mind, whatever answer you have.

我只是简单地问你五个问题,无论你想到什么,无论你有什么答案。

Let's do it.

我们开始做吧。

Sound good?

听起来不错吗?

Okay.

好的。

What are two or three books that you recommend most to other people?

您最向其他人推荐的两三本书是什么?

Ryan J.

瑞安·J。

Salva: Oh, good question.

萨尔瓦:噢,好问题。

One of them is a book on user experience called Make It So.

其中一本是一本关于用户体验的书,名为 Make It So。

It's a reference back to Star Trek, and the idea here is essentially that user experiences that are presented to us in sci-fi often make their way into our everyday products and tools 20, 30 years down the line.

这是对《星际迷航》的参考,这里的想法本质上是科幻小说中呈现给我们的用户体验通常会在 20、30 年后融入到我们的日常产品和工具中。

It is a great eye-opening, illuminating and just really fun book.

这是一本令人大开眼界、具有启发性且非常有趣的书。

That's one.

这是一个。

And then completely different take, I'll go outside of tech and I'll just do entertainment value.

然后完全不同的观点是,我将走出科技领域,只做娱乐价值的事情。

There's a David Foster Wallace book called Brief Interviews with Hideous Men that I love.

我很喜欢大卫·福斯特·华莱士的一本名为《丑陋男人的简短访谈》的书。

It's a collection of short stories.

这是一本短篇小说集。

Ryan J.

瑞安·J。

Salva: And essentially what it is, is it is if you're watching a movie and the villain gets their opportunity to have their big speech, which kind of explains why they are who they are, it makes them maybe a little bit vulnerable in that moment, it's that speech 10 times over for different hideous people, terrible, terrible people.

萨尔瓦:本质上来说,如果你在看一部电影,恶棍有机会发表重要演讲,这在某种程度上解释了他们为什么是他们自己,这让他们在那一刻可能有点脆弱,对于不同的可怕的人、可怕的、可怕的人来说,这种演讲重复了 10 次。

Interesting read.

有趣的阅​​读。

I recommend it.

我推荐它。

Lenny: I love that.

莱尼:我喜欢这个。

It reminds me of this book that is the interior design of dictators and they show you their homes of Saddam Hussein, Hitler, and all these guys.

这让我想起这本书,这是独裁者的室内设计,他们向你展示了萨达姆·侯赛因、希特勒和所有这些家伙的家。

Ryan J.

瑞安·J。

Salva: Dude!

萨尔瓦:伙计!

Oh my gosh, that's awesome.

天哪,太棒了。

I got to find that one.

我必须找到那个人。

You'll have to send it to me.

你必须把它发送给我。

Lenny: I found one at an old bookstore, like used bookstore.

莱尼:我在一家旧书店找到一本,比如二手书店。

I don't know if they're around anymore, but I'll find it.

我不知道他们是否还在,但我会找到的。

Second question.

第二个问题。

What's a favorite other podcast that you like to listen to or recommend if there's any?

您最喜欢听或推荐的其他播客是什么?

Ryan J.

瑞安·J。

Salva: Oh god, there's so many.

Salva:天哪,有这么多。

I consume hundreds of hours of podcasts every month.

我每个月都会观看数百小时的播客。

It is crazy.

这太疯狂了。

I can choose many.

我可以选择很多。

I'll give you just one.

我只给你一张。

The Memory Palace with Nate DiMeo is an excellent storytelling podcast.

Nate DiMeo 的《记忆宫殿》是一个出色的讲故事播客。

He does about 20 minute vignettes, usually selected from kind of American history.

他会制作大约 20 分钟的小插曲,通常选自美国历史。

He also was the artist in residence at one of the museums in Washington, DC.

他还是华盛顿特区一家博物馆的驻场艺术家。

And if you're ever at I think it's the American History Museum or something like that, if you're ever there, you can go to different rooms in the museum and he'll tell you stories about the objects or the rooms that you see there.

如果你去过,我想那是美国历史博物馆或类似的地方,如果你去过那里,你可以去博物馆的不同房间,他会告诉你关于你在那里看到的物品或房间的故事。

It's a magical experience recommended to anyone.

这是一次神奇的体验,推荐给任何人。

Lenny: Wow!

莱尼:哇!

I love those.

我喜欢那些。

What's a recent movie or TV show that you've really enjoyed?

您最近真正喜欢的电影或电视节目是什么?

Ryan J.

瑞安·J。

Salva: I don't know if this counts as recent, but it's one that I watched recently, which was Arrival.

Salva:我不知道这算不算最近的,但这是我最近看过的一部,《降临》。

Yeah, that counts.

是的,这很重要。

Arrival.

到达。

Movie ostensibly about aliens, but is really about language and memory.

电影表面上是关于外星人的,但实际上是关于语言和记忆的。

I found that really, really compelling.

我发现这真的非常引人注目。

Lenny: Have you read Ted Chiang books and short stories?

莱尼:你读过特德·蒋的书和短篇小说吗?

Lenny: Oh wow!

莱尼:哦哇!

Oh, you would love it.

哦,你会喜欢的。

Arrival is from one of his story, I believe, is one of his stories and there's a whole book of many more short stories by the same guy.

《到来》来自他的一个故事,我相信,这是他的一个故事,还有一整本书,其中包含同一个人的更多短篇小说。

They're amazing.

他们太棒了。

Ryan J.

瑞安·J。

Salva: Brilliant.

萨尔瓦:太棒了。

I've got my weekend cut out for me then.

那我的周末就安排好了。

Lenny: There you go.

莱尼:给你。

Just leave work and get to reading.

放下工作去读书吧。

What's a favorite interview question that you like to ask in interviews?

您在面试中最喜欢问的面试问题是什么?

Ryan J.

瑞安·J。

Salva: Let's see here.

萨尔瓦:让我们看看这里。

I'll give you a fun one more than it is a challenging one.

我会给你一个有趣的而不是一个具有挑战性的。

This is kind of my icebreaker interview question, particularly for more early to mid career product managers.

这是我的破冰面试问题,特别是对于职业生涯早期到中期的产品经理来说。

I ask them to teach me something new in one minute.

我要求他们在一分钟内教我一些新东西。

Usually I'll pull up my phone and I'll start the timer.

通常我会拿起手机并启动计时器。

I'll give them a second to think about it and start the timer.

我会给他们一点时间考虑并启动计时器。

They're graded on three different criteria.

他们根据三个不同的标准进行评分。

One is completeness.

一是完整性。

Did they actually finish the lesson inside of one minute?

他们真的在一分钟内完成了课程吗?

Two is complexity.

二是复杂性。

It's one thing if you teach me how to, I don't know, pat my head and rub my stomach at the same time.

如果你教我如何,我不知道,同时拍拍我的头并揉捏我的肚子,那是一回事。

Ryan J.

瑞安·J。

Salva: It's another thing if you teach me something about 18th century ardent connection to religious trends at the time.

萨尔瓦:如果你教我一些关于 18 世纪与当时宗教潮流的热切联系,那就是另一回事了。

And then last is really clarity.

最后是真正的清晰度。

Oh yeah, clarity is the last one.

哦,是的,清晰度是最后一项。

Clarity is like, do I actually understand?

清晰度就像,我真的理解了吗?

Did I learn something by the end of the lesson?

课程结束时我学到了什么吗?

Did they convey the idea fully and wholly?

他们是否充分、完整地传达了这个想法?

Lenny: I have to ask, what's the most interesting thing somebody has taught in this question?

莱尼:我不得不问,在这个问题上,有人教过的最有趣的事情是什么?

Ryan J.

瑞安·J。

Salva: My go-to kind of throwaway answer there about did they teach me something about 18th century art and its connection to religious trends at the time, someone taught me that.

萨尔瓦:我的首选是一次性回答,他们是否教了我一些关于 18 世纪艺术及其与当时宗教趋势的联系的知识,有人教我的。

It was astounding.

这太令人震惊了。

It was actually a university candidate, so someone who was still in university, and she was from Vanderbilt University.

这实际上是一名大学候选人,所以还是在读大学的人,她来自范德比尔特大学。

Lenny: And was that a strong yes hire?

莱尼:那是一次强烈的肯定聘用吗?

Ryan J.

瑞安·J。

Salva: It was an extremely strong yes hire.

Salva:这是一次非常强烈的聘用。

She was freaking amazing.

她真是太棒了。

Such a smart person.

这么聪明的人。

Lenny: Amazing.

莱尼:太棒了。

Final question, who else in the industry would you say you most respect as a thought leader or just influence person?

最后一个问题,您认为行业中还有谁是您最尊敬的思想领袖或影响力人物?

Ryan J.

瑞安·J。

Salva: There are many, but I think for today I'd probably beat myself up if I didn't say Uga Damore.

Salva:有很多,但我想今天如果我不说 Uga Damore,我可能会责怪自己。

Uga is the primary researcher who really kind of is the true innovator for Copilot.

Uga 是首席研究员,也是 Copilot 的真正创新者。

He deserves credit for the initial work and is a brilliant technologist and futurists.

他的最初工作值得赞扬,并且是一位出色的技术专家和未来学家。

I really, really respect him a lot.

我真的非常非常尊重他。

Lenny: Amazing.

莱尼:太棒了。

Cool call out.

酷呼一声。

Ryan, this has been so fascinating.

瑞安,这太令人着迷了。

You guys are at the forefront of so much interesting work.

你们正处于如此多有趣工作的最前沿。

I honestly can't wait for Copilot for my newsletter so that I can do less work.

老实说,我迫不及待地等待 Copilot 发送时事通讯,这样我就可以减少工作量。

Maybe that'll come someday.

也许有一天会到来。

But in any case, I'm excited to see where this whole thing goes.

但无论如何,我很高兴看到整件事的进展。

Thank you for being here.

感谢您来到这里。

Two last questions.

最后两个问题。

Where can folks find you online if they're curious to learn more, reach out?

如果人们想了解更多信息并联系您,可以在哪里找到您?

And then is there a way that listeners can be useful to you?

那么有没有一种方法可以让听众对你有用呢?

Ryan J.

瑞安·J。

Salva: Easy one.

萨尔瓦:简单的一个。

How can folks find me?

人们怎样才能找到我?

I am Ryan J.

我是瑞安·J。

Salva everywhere, Twitter, GitHub.

Salva 无处不在,Twitter,GitHub。

Pick your choice.

选择你的选择。

LinkedIn, Ryan J.

领英,瑞安·J.

Salva.

萨尔瓦。

And then how can folks be useful to me?

那么人们怎样才能对我有用呢?

Please, there is a 60 day free trial of Copilot that is there for everyone to pick up and use.

Copilot 提供 60 天免费试用期,供每个人挑选和使用。

Go try it out.

去尝试一下吧。

When you do, post either on Twitter or Hacker News or on discussions, GitHub Discussions, your experience.

当您这样做时,请在 Twitter 或 Hacker News 或讨论、GitHub 讨论上发布您的经验。

Ryan J.

瑞安·J。

Salva: Give us the good feedback.

Salva:给我们很好的反馈。

Give us the bad feedback.

给我们不好的反馈。

I am so hungry to see how people are using it in novel ways and where they're running up against the rough edges too.

我非常渴望看到人们如何以新颖的方式使用它,以及他们在哪里遇到了困难。

Like I said, there's lots of room for us to grow and improve from here, but I'm pretty confident that developers will be pretty freaking amazed at what it's already capable of.

就像我说的,我们还有很大的成长和改进的空间,但我非常有信心开发人员会对它已经具备的能力感到非常惊讶。

Lenny: Awesome.

莱尼:太棒了。

Thanks for being here, Ryan.

谢谢你来到这里,瑞安。

Ryan J.

瑞安·J。

Salva: Yeah, dude, thank you so much.

Salva:是的,伙计,非常感谢你。

It's been a lot, a lot of fun.

这非常非常有趣。

Lenny: Thank you so much for listening.

莱尼:非常感谢您的聆听。

If you found this valuable, you can subscribe to the show on Apple Podcasts, Spotify, or your favorite podcast app.

如果您发现这很有价值,您可以在 Apple Podcasts、Spotify 或您最喜欢的播客应用程序上订阅该节目。

Also, please consider giving us a rating or leaving a review, as that really helps other listeners find the podcast.

另外,请考虑给我们评分或留下评论,因为这确实有助于其他听众找到播客。

You can find all past episodes or learn more about the show at lennyspodcast.com.

您可以在 lennyspodcast.com 上找到所有过去的剧集或了解有关该节目的更多信息。

See you in the next episode.

下一集见。

中文为机器翻译,仅供参考。