推荐微信扫码登录以获得更好的体验!另:🎉建议更新到最新版,以体验新功能!🎉 版本更新记录→

【AI开发】别浪费时间写规格 · 直接用AI做原型

2

剧集目录

标题时长
P1【AI开发】别浪费时间写规格 · 直接用AI做原型 中英字幕10:59
P2【AI开发】别浪费时间写规格 · 直接用AI做原型 无字幕10:59

P1 · 【AI开发】别浪费时间写规格 · 直接用AI做原型 p01 中英字幕 (P1)

字幕摘录

时间英文中文
0:00There's something that a lot of people do很多人都会这么做的
0:01when they're working with AI to create code当他们与AI合作创建代码时
0:03that totally drives me crazy.这完全让我疯了。
0:06And it's sort of something that I've been railing against这有点像我一直在反对
0:09for a while now.有一阵子了
0:11The thing that I've noticed is people tend to think我注意到的是 人们总觉得
0:14I need to create a spec for AI.我需要为AI创建一个Spec.
0:16I need to create a plan, right?我需要创造一个计划,对不对?
0:18Plan mode, spec-driven development.计划模式 光谱驱动开发.
0:20I need to put all of my efforts我要全力以赴
展开字幕全文(295 条)
序号英文中文
1There's something that a lot of people do很多人都会这么做的
2when they're working with AI to create code当他们与AI合作创建代码时
3that totally drives me crazy.这完全让我疯了。
4And it's sort of something that I've been railing against这有点像我一直在反对
5for a while now.有一阵子了
6The thing that I've noticed is people tend to think我注意到的是 人们总觉得
7I need to create a spec for AI.我需要为AI创建一个Spec.
8I need to create a plan, right?我需要创造一个计划,对不对?
9Plan mode, spec-driven development.计划模式 光谱驱动开发.
10I need to put all of my efforts我要全力以赴
11into making this extremely detailed spec来制作这个极其详细的光谱
12so that when I get some outputs from the AI,所以当我得到AI的一些产出,
13those outputs are going to look like the spec.这些产出将看起来像规格。
14I'm going to have specified everything up front我会把前面的事都说清楚的
15so that I can just perfectly nail it.这样我就可以完全钉住它。
16And in this impulse, what they forget to do在这种冲动下,他们忘记了做
17is they forget they can actually write code.他们忘了他们可以写代码
18You can write code while you're working towards a spec.你可以写代码,而你的工作 一个Spec。
19Prototyping and spikes are things that we've had around原型和钉子是我们曾经有过的
20since the days of Agile, right?自从Agile时代,对不对?
21I mean, I suppose these are still the days of Agile.我的意思是,我想这些仍然是 Agile 的日子。
22Agile is still extremely popular,Agile仍然非常受欢迎,
23still extremely influential,仍然影响很大
24but people just aren't prototyping anymore.但人们只是不再原型了。
25And so as part of my skills repo,因此,作为我的一部分技能回波,
26I'm trying to turn this around.我试图扭转这一切。
27I have a prototype skill.我有一个原型技能。
28A prototype is throwaway code that answers a question.一个原型是解答一个问题的丢弃代码.
29Everyone is saying that code is cheap大家都说密码便宜
30and it's partially true and partially I hate that phrase,部分地是真的,部分地我讨厌这句话,
31but the thing that is cheap但便宜的东西
32is the cost of producing code has gone way, way down.是制作代码的成本 已经走了很多,还很低。
33So producing prototypes, producing quick所以,生产原型, 生产快
34kind of throwaway spikes has never been cheaper那种丢掉的钉子从不便宜
35and never been a more effective tool.并且从未成为更有效的工具。
36In this video, I'm going to introduce this prototype skill.在这部视频中,我将引入这种原型技能.
37I'm going to talk about when you should use it,我要谈谈你什么时候该用它
38what it can be used for,它可以用来做什么,
39and also how it fits into my new wayfinder skill.以及它如何适合我的新寻路技巧。
40But first I want to explain the concept of fidelity,但首先我要解释忠诚的概念
41high fidelity and low fidelity.高度忠诚和低忠诚。
42Whenever you're talking about designing something,当你在谈论设计什么,
43you're going to have questions in your mind你会有问题在你的脑海里
44that need to be resolved somehow.这个问题需要解决。
45Some of the questions are going to be really basic,有些问题会很基本
46like the basic frame of the thing you're building.就像你建造的东西的基本框架。
47When the modal opens up,当模式打开时,
48it should have a cancel button and a confirm button,它应该有一个取消按钮和一个确认按钮,
49simple stuff.很简单
50With simple stuff like that,简单的东西,
51you don't need a lot of high fidelity stuff你不需要很多高忠诚的东西
52to answer the question.回答问题。
53That can just be resolved in discussion really.这可以通过讨论解决。
54But let's say that the modal,但是,让我们假设模式,
55when it opens up under some circumstances,当它在某些情况下打开,
56it needs to show some data.它需要显示一些数据。
57You might need to go a little bit of higher fidelity on that.你也许需要更诚实一点
58How would you display the data?如何显示数据?
59It's often hard when you're planning out a spec当你计划一个谱子时 经常很难
60to figure out exactly how things should look来弄清楚事情应该如何发展
61and how things should look,和事情应该如何看,
62how they should behave under certain circumstances,在某些情况下他们应该如何行为,
63making sure that you've road tested all of this idea确定道路测试了这一切想法
64in kind of semi working code.半工作代码
65That means you need a higher fidelity.这意味着你需要更高的忠诚度。
66Some questions really can only be answered by prototyping.有些问题真的只能通过原型来回答.
67And because producing these prototypes因为生产这些原型
68is now cheaper than it ever has been before,现在比以前便宜多了
69I tend to want more of my discussions at a higher fidelity.我倾向于希望我更多的讨论 在更高的忠诚。
70Obviously the basic stuff,显然,基本的东西,
71I'm gonna just resolve through discussion.我要通过讨论解决
72So the agent is gonna ask me some questions,所以经纪人会问我一些问题
73probably through a grilling session.可能通过烤肉会。
74And then I'm gonna say, okay, yeah, this sounds good.然后我要说,好吧,是的,这听起来不错。
75But then as soon as we get anything that I think,但一旦我们得到任何我想的东西
76oh, I really need to see this in action,哦,我真的需要看到这一点 在行动中,
77or I need to feel it in action, look at it working,或者,我需要感觉它在行动, 看它的工作,
78I'm gonna ask for a prototype.我要问一个原型。
79Prototyping is a part of my new Wayfinder skill,造型是我的新手技艺的一部分
80which is a skill that allows you这是一种能让你
81to plan a huge chunk of work.计划一大笔工作。
82在Wayfinder上有一段特写视频
83Now, Wayfinder, what it does is it tackles现在,Wayfinder,它所做的就是解决
84a huge chunk of work and it splits it up大量的工作,它把它分开
85into different planning sessions.在不同的规划会议上。
86And all of these planning sessions get their own ticket所有这些计划会都有自己的票
87and there should be somewhere in here, ticket types,这里应该有票型
88just here, that tells it exactly就在这里,这说明
89what different ticket types there are.不同种类的票。
90The two that we're looking at here are the grilling type.我们在这里看到的两个是烧烤类型。
91So it's using the grilling skills所以是用烧烤技巧
92and the prototype ticket type.还有票型原型
93The default case here is the grilling type.这里的默认情况是烧烤类型.
94So where you're chatting with the agent,你和经纪人聊天的地方
95figuring out the basic scope of the thing you're building.找出你建造的东西的基本范围
96But when you need to raise the fidelity of the discussion,但是,当你需要提高 诚实的讨论,
97making a cheap, rough concrete artifact to react to,制造一种廉价的粗糙的混凝土工艺品
98an outline, a rough take a stub,一个轮廓,一个粗糙的取一个茎,
99or UI logic code via the prototype skill,或UI逻辑代码 通过原型技能,
100links the prototype as an asset, use when,链接原型为资产,当,
101how should it look or how should it behave它应该看起来如何或应该如何行为
102is the key question.这是关键问题。
103无论你是否使用Wayfinder,
104this gives you a really clear criteria这给你一个非常明确的标准
105for when you should reach for a prototype.当你需要找到一个原型。
106So I'm sure you're dying to see it in action所以,我敢肯定,你渴望看到它在行动
107and here it is, this is what it's done.在这里,这是它所做的。
108I've been using Wayfinder to extend my diagramming app here,我一直在用Wayfinder 来扩展我的图解应用
109它建立在 TL Draw 上。
110And I wanted a way to search through old diagrams.我想用一个方法 搜索旧的图表。
111And the data model here is quite complicated.这里的数据模型相当复杂。
112There's like diagrams and then snapshots有像图,然后快照
113of the diagram through time.图表。
114And so I wanted to build a search bar,所以我想建立一个搜索栏,
115but I wasn't sure how it should look or behave.但我不知道它应该怎么样 或行为。
116So I ran prototype here and what it did所以我在这里运行原型 和它做了什么
117is it created this little picker at the bottom here.这是在底部创建了这个小采摘器。
118And this picker, if I go between it,和这个采摘者,如果我走在它之间,
119it has three different options.它有三个不同的选择。
120So that's option B and that's option C.所以,这是选择B,这是选择C。
121And each one encodes a few design decisions每个都编码一些设计决定
122that I can then react to and iterate on.然后,我可以作出反应 和脚踏实地。
123So let's start by looking at A.因此,让我们从看A开始。
124I've just generated this, I've not actually looked at it yet.我刚刚发明了这个,我还没有真正看到它。
125So I get to search the diagrams and see what comes up.所以我可以搜索图表,看看会发生什么事。
126This one, okay, it's reflow in place grouped rows.这个,好的,它重新排成一组
127So it's grouping the snapshots by the name of the diagram.所以它用图的名字来组合快照。
128I really like the placing of the search box up here,我真的很喜欢把搜索箱放在这里
129but this grouping doesn't feel right to me.但这个团体对我不好
130So let's see what B is.所以,让我们看看B是什么。
131Let's search again inside model here.让我们再次搜索这里的模型。
132And okay, now on the left, we have grouping for,好吧,现在在左边, 我们分组为,
133where it can filter down.那里可以过滤下来。
134Okay, that's quite nice.好吧,这是相当不错的。
135What happens if I search for something else如果我找别的东西怎么办?
136and it's already, okay, so the filter resets at that point.并且它已经,好的, 所以过滤器重排在那个点。
137Now that's okay, but I wonder what C looks like.现在没关系,但我不知道C长什么样子。
138I really don't like this search diagrams thing at the top.我真的不喜欢上面的搜索图
139That doesn't look nice, but let's see what this looks like.这看起来不妙,但让我们看看这个样子。
140So let's search for model and ooh, okay.我们去找模特儿,好吧
141So now it's everything in line, no filters.所以现在一切都排成一行,没有过滤器。
142So I do actually really like this,所以我真的很喜欢这个,
143but there are a few things that I don't like.但有些东西我不喜欢
144I don't like these current things.我不喜欢这些时事
145It looks like this is really technical weird thing,看起来这真的很技术怪怪的
146but the current one is showing with the diagram snapshot.但是现在的图是用图示显示的
147So I've got some kind of feedback所以我得到一些反馈
148that I wanna give to the prototype.我想给原型。
149This prototyping session took about 100,000 tokens.此次原型会议耗资约10万令吉.
150So I'm actually going to compact and say,所以,我实际上要去压缩 并说,
151we're gonna do some more QA on this.我们要多做点QA
152Compacting at this point makes sense to me此时此刻的紧凑对我来说是有道理的
153because we kind of need to retain all of the information因为我们需要保留所有的信息
154about the prototype,关于原型,
155need to retain all the design decisions that went into it,需要保留其中所有的设计决定,
156but we just need to give it some feedback.但我们只需要给它一些反馈。
157So we just need to continue the conversation所以我们需要继续谈话
158in the same place in the code base.在同一个地方 在代码基。
159I should definitely do a video about the design tree我绝对应该做一个视频 关于设计树
160that I use for when I've got compact当我有紧身衣的时候我用它
161versus clear versus handoff,相对清晰与交接,
162but that's one for another time.但这是另一个时间。
163Okay, now I'm gonna give some feedback.好吧,现在我要给一些反馈。
164I really like the search box of A我真的很喜欢A的搜索盒
165and I like the layout of C.我喜欢C的布局
166Okay, so I've just dictated in some more feedback好吧,所以我刚刚决定 一些更多的反馈
167and I'm gonna send it off.我会寄出去的
168So the idea of this session所以,这个会议的想法
169is I'm iterating on this prototype.我对这个原型很感兴趣
170I'm not just saying, okay, this is the best one.我不是说,这是最好的
171I'm gonna actually create some design decisions here,我要在这里创造一些设计决定,
172create a super rich asset.创造出一个超级丰富的资产。
173All of these design decisions所有这些设计决定
174are then going to be encoded into the prototype然后被编码成原型
175and I'm gonna save the prototype我会保存原型
176probably on a throwaway branch.可能在树枝上
177That means that when the thing actually goes to implement it,这意味着,当事情实际上去执行它,
178it's not only got a spec,不仅有特质
179it's actually got real front-end code它实际上有真正的前端代码
180that it can usually copy and paste out of it.它通常可以复制和粘贴出来。
181Now, creating these prototypes does take some time, right?现在,创建这些原型 需要一些时间,对不对?
182The higher fidelity you go, the more token costs there is.忠诚越高,象征性的代价就越高
183If we were to try to resolve this in a discussion,如果我们想在讨论中解决这个问题
184we'd be at a lower fidelity,我们的忠诚会降低
185so the answers would be less useful,这样答案就不那么有用了
186but we'd also be spending fewer tokens.但我们也会少花钱
187And we can see it's now starting to give me a D version here,我们可以看到它现在 开始给我一个D版本在这里,
188which is kind of what I've been iterating towards.这有点像我一直 向往。
189One note here is that this is actually这里的一个音符是 这其实是
190integrated with the live page.与现场网页合并。
191So it's not doing this on a throwaway route.所以它不是在丢弃路线上这样做。
192You can do that if you want to,你可以这样做,如果你想,
193but I really like seeing it actually plugged但我真的很喜欢看到它真的插上
194into the live route进入直播路线
195because then it just gives you so much more flexibility.因为那样你就能更灵活了
196It's a more honest representation这是一个更诚实的代理
197of how the code is actually going to work.如何实际运行代码。
198All right, looks like it has now created D,好吧,看起来它已经创造了D,
199so let's see what that looks like.让我们看看它是什么样子。
200Yes, we have the box from A,是的,我们得到了A的盒子,
201and if we search in here with model,如果我们在这里找模特儿
202then we can see that everything I asked for然后,我们可以看到,我要求的一切
203actually got done.实际完成了。
204Before, we had a duplicate of this one,以前,我们有一个复制这个,
205but now there's only one.但现在只有一个
206And in theory, if I click this,理论上,如果我点击这个,
207I'm not sure if this will actually work.我不知道这是否真的有用。
208I don't know whether this is part of the prototype.我不知道这是不是原型的一部分。
209Yes, it works.是的,这是有效的。
210Oh, beautiful.哦,美丽的。
211So there we go.就这样
212Loads of this functionality looks like it is now just done.这个功能的负载看起来是刚刚完成的.
213And so you might ask what is the next step after this?所以你可以问接下来的下一步是什么?
214Well, now I consider the prototype to be complete.现在,我认为原型是完整的。
215That was a pretty quick one.说得真快
216Usually I'm kind of in here doing a lot more.通常我在这里做的更多。
217I would pass this off to an AFK agent我会把这个交给AFK探员
218to plug in everything,插上所有东西,
219delete the old prototype code,删除旧的原型代码,
220and just make sure that it was compliant只要确保它符合
221with the original spec.与原始规格。
222And as you can imagine,正如你能想象的那样,
223the results here are incredible结果是不可思议的
224because we've had such high fidelity discussion因为我们有这么高的忠诚的讨论
225because we've been able to look因为我们可以看
226at a live running version of it,在现场运行的版本,
227give our feedback based on that.提供我们的反馈
228That feedback is so invaluable这种反馈是如此宝贵
229and it's already baked into a throwaway branch它已经烤成一个丢弃的树枝
230that our implementer can actually just go and reference.我们的执行者可以直接参考
231So many times I see people saying,我见过很多人说
232well, the thing didn't build what I wanted.那东西没有造出我想要的
233I created this big, beautiful spec我创造了这个大而美丽的光谱
234and it just did something totally weird.它只是做了一些非常奇怪的事情。
235You probably just weren't having discussions你可能只是没有讨论
236at a high enough fidelity在足够忠诚的高度
237and you probably should have been prototyping.你也许应该 原型。
238Finally, I don't want you to walk away thinking最后,我不想你走开 想着
239this is only for UI or front-end stuff.这只是UI或前端的东西。
240Front-end definitely benefits a lot from prototypes前端肯定从原型中得到很多好处
241because how should it look,因为它应该是什么样子,
242what should it look like is a really key question它应该是什么样子 一个真正的关键问题
243that's really hard to answer during the discussion phase.在讨论阶段很难回答
244However, when you're doing more complicated stuff,然而,当你做更复杂的事情,
245especially backend work,特别是后端的工作,
246then a question like does this logic,这样的问题就是逻辑
247does this state model feel right?这个州模型感觉对吗?
248If you're building anything reasonably complex如果你正在建造任何合理复杂的东西
249or that needs to work in the real world,或需要在现实世界工作,
250then you're gonna run into these questions all the time.然后你会一直遇到这些问题
251And often the best way to get around these kinds of questions并且常常是解决这些问题的最佳方法
252to build something that kind of serves the needs建造一种满足需求的东西
253of your users, especially on something complex,您的用户, 特别是在复杂的事情上,
254is to build a prototype.建造一个原型。
255Now it doesn't need to be a UI prototype现在它不需要是UI的原型
256and what I've got here is build我在这里得到的是建筑
257a tiny interactive terminal app一个小小的交互式终端应用程序
258that pushes the state machine through cases让国家机器破案
259that are hard to reason about on paper.纸上很难解释
260In other words, a pure logic prototype换句话说 一个纯粹的逻辑原型
261and I've had tons of feedback from folks saying我收到了很多人的反馈
262that this is such a nice little feature.这是一个很好的小特色。
263Both of these branches have their own reference docs here这两个分支都有自己的参考文献
264which tell it exactly how to do each one.告诉它如何做每一个。
265So if it's building a logic prototype, it looks here.因此,如果它正在构建一个逻辑原型, 它会在这里看。
266If it's building a UI prototype, it looks like this.如果它正在建造一个UI原型,它看起来像这样.
267So I beg of you, have your discussions at a higher fidelity.所以,我恳求你,让你的讨论 在更高的忠诚。
268As agents get better at working with canvases,随着特工们与画布合作的加强
269working with design tools,与设计工具合作,
270I'm sure that wireframes will definitely我敢肯定,线框肯定
271make a comeback as well.再来一次
272And the key point is this,关键是,
273the leap from discussion and spec从讨论和光谱的飞跃
274to production ready code is really big.制作准备的代码非常大
275Whereas if you have a working prototype,如果你有一个工作原型,
276turning that into production is pretty simple.把它变成生产很简单。
277I wanna give a quick shout out to Shape Up by Ryan Singer我想给一个快速的喊出来 形状由Ryan Singer
278which is an extremely good book这是一本非常好的书
279and very, very influential on me.对我很有影响
280I read this I think in 2019 or something我在2019年看过这个
281and it totally changed the way它彻底改变了方式
282that I built applications for people.我为人们建立了应用程序。
283It is totally free online网上完全免费
284and I will drop a link in the description.我会在描述中掉一个链接。
285If you wanna keep up to date with my skills,如果你想跟上我的技能
286then my skills newsletter is the place to be.然后,我的技能通讯是地方。
287I'm shipping, shipping, shipping,我在航运,航运,航运,
288constantly thinking about these skills,不断思考这些技能,
289how I can make them better我怎样才能让他们好起来
290and you can benefit from that the day在那日,你们得享受福利,
291that I make the changes.我做出改变。
292But folks, thank you so much for watching.但是,各位,谢谢你的观看。
293It's been a pleasure,很高兴见到你
294as always bringing you one of my skills总是给你带来我的能力之一
295and I will see you very soon.我会很快见到你。
该视频共有字幕 295 条。解锁更多字幕为会员功能,请移动到 价格

P2 · 【AI开发】别浪费时间写规格 · 直接用AI做原型 p02 无字幕 (P2)

字幕摘录

时间英文中文
0:00There's something that a lot of people do很多人都会这么做的
0:01when they're working with AI to create code当他们与AI合作创建代码时
0:03that totally drives me crazy.这完全让我疯了。
0:06And it's sort of something that I've been railing against这有点像我一直在反对
0:09for a while now.有一阵子了
0:11The thing that I've noticed is people tend to think我注意到的是 人们总觉得
0:14I need to create a spec for AI.我需要为AI创建一个Spec.
0:16I need to create a plan, right?我需要创造一个计划,对不对?
0:18Plan mode, spec-driven development.计划模式 光谱驱动开发.
0:20I need to put all of my efforts我要全力以赴
展开字幕全文(297 条)
序号英文中文
1There's something that a lot of people do很多人都会这么做的
2when they're working with AI to create code当他们与AI合作创建代码时
3that totally drives me crazy.这完全让我疯了。
4And it's sort of something that I've been railing against这有点像我一直在反对
5for a while now.有一阵子了
6The thing that I've noticed is people tend to think我注意到的是 人们总觉得
7I need to create a spec for AI.我需要为AI创建一个Spec.
8I need to create a plan, right?我需要创造一个计划,对不对?
9Plan mode, spec-driven development.计划模式 光谱驱动开发.
10I need to put all of my efforts我要全力以赴
11into making this extremely detailed spec来制作这个极其详细的光谱
12so that when I get some outputs from the AI,所以当我得到AI的一些产出,
13those outputs are going to look like the spec.这些产出将看起来像规格。
14I'm going to have specified everything up front我会把前面的事都说清楚的
15so that I can just perfectly nail it.这样我就可以完全钉住它。
16And in this impulse, what they forget to do在这种冲动下,他们忘记了做
17is they forget they can actually write code.他们忘了他们可以写代码
18You can write code while you're working towards a spec.你可以写代码,而你的工作 一个Spec。
19Prototyping and spikes are things that we've had around原型和钉子是我们曾经有过的
20since the days of Agile, right?自从Agile时代,对不对?
21I mean, I suppose these are still the days of Agile.我的意思是,我想这些仍然是 Agile 的日子。
22Agile is still extremely popular,Agile仍然非常受欢迎,
23still extremely influential,仍然影响很大
24but people just aren't prototyping anymore.但人们只是不再原型了。
25And so as part of my skills repo,因此,作为我的一部分技能回波,
26I'm trying to turn this around.我试图扭转这一切。
27I have a prototype skill.我有一个原型技能。
28A prototype is throwaway code that answers a question.一个原型是解答一个问题的丢弃代码.
29Everyone is saying that code is cheap大家都说密码便宜
30and it's partially true and partially I hate that phrase,部分地是真的,部分地我讨厌这句话,
31but the thing that is cheap但便宜的东西
32is the cost of producing code has gone way, way down.是制作代码的成本 已经走了很多,还很低。
33So producing prototypes, producing quick所以,生产原型, 生产快
34kind of throwaway spikes has never been cheaper那种丢掉的钉子从不便宜
35and never been a more effective tool.并且从未成为更有效的工具。
36In this video, I'm going to introduce this prototype skill.在这部视频中,我将引入这种原型技能.
37I'm going to talk about when you should use it,我要谈谈你什么时候该用它
38what it can be used for,它可以用来做什么,
39and also how it fits into my new wayfinder skill.以及它如何适合我的新寻路技巧。
40But first I want to explain the concept of fidelity,但首先我要解释忠诚的概念
41high fidelity and low fidelity.高度忠诚和低忠诚。
42Whenever you're talking about designing something,当你在谈论设计什么,
43you're going to have questions in your mind你会有问题在你的脑海里
44that need to be resolved somehow.这个问题需要解决。
45Some of the questions are going to be really basic,有些问题会很基本
46like the basic frame of the thing you're building.就像你建造的东西的基本框架。
47When the modal opens up,当模式打开时,
48it should have a cancel button and a confirm button,它应该有一个取消按钮和一个确认按钮,
49simple stuff.很简单
50With simple stuff like that,简单的东西,
51you don't need a lot of high fidelity stuff你不需要很多高忠诚的东西
52to answer the question.回答问题。
53That can just be resolved in discussion, really.这可以在讨论中解决,真的。
54But let's say that the modal, when it opens up,但是,让我们假设,模式, 当它打开,
55under some circumstances, it needs to show some data.在某些情况下,它需要显示一些数据。
56You might need to go a little bit of higher fidelity on that.你也许需要更诚实一点
57How would you display the data?如何显示数据?
58It's often hard when you're planning out a spec当你计划一个谱子时 经常很难
59to figure out exactly how things should look来弄清楚事情应该如何发展
60and how things should look,和事情应该如何看,
61how they should behave under certain circumstances,在某些情况下他们应该如何行为,
62making sure that you've road tested all of this idea确定道路测试了这一切想法
63in kind of semi working code.半工作代码
64That means you need a higher fidelity.这意味着你需要更高的忠诚度。
65Some questions really can only be answered by prototyping.有些问题真的只能通过原型来回答.
66And because producing these prototypes因为生产这些原型
67is now cheaper than it ever has been before,现在比以前便宜多了
68I tend to want more of my discussions at a higher fidelity.我倾向于希望我更多的讨论 在更高的忠诚。
69Obviously, the basic stuff,显然,基本的东西,
70I'm gonna just resolve through discussion.我要通过讨论解决
71So the agent is gonna ask me some questions,所以经纪人会问我一些问题
72probably through a grilling session.可能通过烤肉会。
73And then I'm gonna say, okay, yeah, this sounds good.然后我要说,好吧,是的,这听起来不错。
74But then as soon as we get anything that I think,但一旦我们得到任何我想的东西
75oh, I really need to see this in action,哦,我真的需要看到这一点 在行动中,
76or I need to feel it in action, look at it working,或者,我需要感觉它在行动, 看它的工作,
77I'm gonna ask for a prototype.我要问一个原型。
78Prototyping is a part of my new Wayfinder skill,造型是我的新手技艺的一部分
79which is a skill that allows you这是一种能让你
80to plan a huge chunk of work.计划一大笔工作。
81There's a future video coming on Wayfinder.在Wayfinder上有一段未来的视频
82Now, Wayfinder, what it does is it tackles现在,Wayfinder,它所做的就是解决
83a huge chunk of work and it splits it up大量的工作,它把它分开
84into different planning sessions.在不同的规划会议上。
85And all of these planning sessions get their own ticket.而所有这些规划会 得到自己的票。
86And there should be somewhere in here,这里应该有地方
87ticket types, just here,票型,就在这里
88that tells it exactly what different ticket types there are.这完全说明了有什么不同的票型。
89The two that we're looking at here are the grilling type.我们在这里看到的两个是烧烤类型。
90So it's using the grilling skills所以是用烧烤技巧
91and the prototype ticket type.还有票型原型
92The default case here is the grilling type.这里的默认情况是烧烤类型.
93So where you're chatting with the agent,你和经纪人聊天的地方
94figuring out the basic scope of the thing you're building.找出你建造的东西的基本范围
95But when you need to raise the fidelity of the discussion,但是,当你需要提高 诚实的讨论,
96making a cheap, rough concrete artifact to react to,制造一种廉价的粗糙的混凝土工艺品
97an outline, a rough take a stub,一个轮廓,一个粗糙的取一个茎,
98or UI logic code via the prototype skill,或UI逻辑代码 通过原型技能,
99links the prototype as an asset, use when,链接原型为资产,当,
100how should it look or how should it behave它应该看起来如何或应该如何行为
101is the key question.这是关键问题。
102无论你是否使用Wayfinder,
103this gives you a really clear criteria这给你一个非常明确的标准
104for when you should reach for a prototype.当你需要找到一个原型。
105So I'm sure you're dying to see it in action.所以,我敢肯定,你渴望看到它的行动。
106And here it is, this is what it's done.这就是它所做的
107I've been using Wayfinder to extend my diagramming app here,我一直在用Wayfinder 来扩展我的图解应用
108它建立在 TL Draw 上。
109And I wanted a way to search through old diagrams.我想用一个方法 搜索旧的图表。
110And the data model here is quite complicated.这里的数据模型相当复杂。
111There's like diagrams and then snapshots有像图,然后快照
112of the diagram through time.图表。
113And so I wanted to build a search bar,所以我想建立一个搜索栏,
114but I wasn't sure how it should look or behave.但我不知道它应该怎么样 或行为。
115So I ran prototype here.所以我在这里运行了原型。
116And what it did is it created this little picker它制造了这个小拾荒者
117at the bottom here.在下面这里。
118And this picker, if I go between it,和这个采摘者,如果我走在它之间,
119it has three different options.它有三个不同的选择。
120So that's option B and that's option C.所以,这是选择B,这是选择C。
121And each one encodes a few design decisions每个都编码一些设计决定
122that I can then react to and iterate on.然后,我可以作出反应 和脚踏实地。
123So let's start by looking at A.因此,让我们从看A开始。
124I've just generated this, I've not actually looked at it yet.我刚刚发明了这个,我还没有真正看到它。
125So I get to search the diagrams and see what comes up.所以我可以搜索图表,看看会发生什么事。
126This one, okay, it's reflow in place grouped rows.这个,好的,它重新排成一组
127So it's grouping the snapshots by the name of the diagram.所以它用图的名字来组合快照。
128I really like the placing of the search box up here,我真的很喜欢把搜索箱放在这里
129but this grouping doesn't feel right to me.但这个团体对我不好
130So let's see what B is.所以,让我们看看B是什么。
131Let's search again inside model here.让我们再次搜索这里的模型。
132And okay, now on the left, we have grouping for,好吧,现在在左边, 我们分组为,
133where it can filter down.那里可以过滤下来。
134Okay, that's quite nice.好吧,这是相当不错的。
135What happens if I search for something else如果我找别的东西怎么办?
136and it's already, okay.它已经,好吗。
137So the filter resets at that point.因此,过滤器重新在那个点。
138Now that's okay, but I wonder what C looks like.现在没关系,但我不知道C长什么样子。
139I really don't like this search diagrams thing at the top.我真的不喜欢上面的搜索图
140That doesn't look nice, but let's see what this looks like.这看起来不妙,但让我们看看这个样子。
141So let's search for model and ooh, okay.我们去找模特儿,好吧
142So now it's everything in line, no filters.所以现在一切都排成一行,没有过滤器。
143So I do actually really like this,所以我真的很喜欢这个,
144but there are a few things that I don't like.但有些东西我不喜欢
145I don't like these current things.我不喜欢这些时事
146It looks like this is really technical weird thing,看起来这真的很技术怪怪的
147but the current one is showing with the diagram snapshot.但是现在的图是用图示显示的
148So I've got some kind of feedback所以我得到一些反馈
149that I wanna give to the prototype.我想给原型。
150This prototyping session took about 100,000 tokens.此次原型会议耗资约10万令吉.
151So I'm actually going to compact and say,所以,我实际上要去压缩 并说,
152we're gonna do some more QA on this.我们要多做点QA
153Compacting at this point makes sense to me此时此刻的紧凑对我来说是有道理的
154because we kind of need to retain all of the information因为我们需要保留所有的信息
155about the prototype, need to retain all the design decisions关于原型,需要保留所有的设计决定
156that went into it, but we just need to give it some feedback.但我们只需要给它一些反馈
157So we just need to continue the conversation所以我们需要继续谈话
158in the same place in the code base.在同一个地方 在代码基。
159I should definitely do a video about the design tree我绝对应该做一个视频 关于设计树
160that I use for when I've got compact当我有紧身衣的时候我用它
161versus clear versus handoff,相对清晰与交接,
162but that's one for another time.但这是另一个时间。
163Okay, now I'm gonna give some feedback.好吧,现在我要给一些反馈。
164I really like the search box of A我真的很喜欢A的搜索盒
165and I like the layout of C.我喜欢C的布局
166Okay, so I've just dictated in some more feedback好吧,所以我刚刚决定 一些更多的反馈
167and I'm gonna send it off.我会寄出去的
168So the idea of this session所以,这个会议的想法
169is I'm iterating on this prototype.我对这个原型很感兴趣
170I'm not just saying, okay, this is the best one.我不是说,这是最好的
171I'm gonna actually create some design decisions here,我要在这里创造一些设计决定,
172create a super rich asset.创造出一个超级丰富的资产。
173All of these design decisions所有这些设计决定
174are then going to be encoded into the prototype然后被编码成原型
175and I'm gonna save the prototype我会保存原型
176probably on a throwaway branch.可能在树枝上
177That means that when the thing actually goes to implement it,这意味着,当事情实际上去执行它,
178it's not only got a spec,不仅有特质
179it's actually got real front-end code它实际上有真正的前端代码
180that it can usually copy and paste out of it.它通常可以复制和粘贴出来。
181Now, creating these prototypes does take some time, right?现在,创建这些原型 需要一些时间,对不对?
182The higher fidelity you go, the more token costs there is.忠诚越高,象征性的代价就越高
183If we were to try to resolve this in a discussion,如果我们想在讨论中解决这个问题
184we'd be at a lower fidelity,我们的忠诚会降低
185so the answers would be less useful,这样答案就不那么有用了
186but we'd also be spending fewer tokens.但我们也会少花钱
187And we can see it's now starting to give me a D version here,我们可以看到它现在 开始给我一个D版本在这里,
188which is kind of what I've been iterating towards.这有点像我一直 向往。
189One note here is that this is actually integrated这里的一个说明是 这其实是综合的
190with the live page.与现场页面。
191So it's not doing this on a throwaway route.所以它不是在丢弃路线上这样做。
192You can do that if you want to,你可以这样做,如果你想,
193but I really like seeing it actually plugged但我真的很喜欢看到它真的插上
194into the live route进入直播路线
195because then it just gives you so much more flexibility.因为那样你就能更灵活了
196Like it's a more honest representation喜欢它是一个更诚实的代表
197of how the code is actually going to work.如何实际运行代码。
198All right, looks like it has now created D,好吧,看起来它已经创造了D,
199so let's see what that looks like.让我们看看它是什么样子。
200Yes, we have the box from A,是的,我们得到了A的盒子,
201and if we search in here with model,如果我们在这里找模特儿
202then we can see that everything I asked for然后,我们可以看到,我要求的一切
203actually got done.实际完成了。
204Before we had a duplicate of this one,在我们复制这个之前
205but now there's only one.但现在只有一个
206And in theory, if I click this,理论上,如果我点击这个,
207I'm not sure if this will actually work.我不知道这是否真的有用。
208I don't know whether this is part of the prototype.我不知道这是不是原型的一部分。
209Yes, it works.是的,这是有效的。
210Oh, beautiful.哦,美丽的。
211So there we go.就这样
212Loads of this functionality此功能的负载
213looks like it is now just done.看起来它刚刚完成。
214And so you might ask, what is the next step after this?你可能会问,下一步是什么?
215Well, now I consider the prototype to be complete.现在,我认为原型是完整的。
216That was a pretty quick one.说得真快
217Usually I'm kind of in here doing a lot more.通常我在这里做的更多。
218I would pass this off to an AFK agent我会把这个交给AFK探员
219to plug in everything, delete the old prototype code,插入一切,删除旧的原型代码,
220and just make sure that it was compliant只要确保它符合
221with the original spec.与原始规格。
222And as you can imagine,正如你能想象的那样,
223the results here are incredible结果是不可思议的
224because we've had such high fidelity discussion,因为我们有这么高的忠诚讨论,
225because we've been able to look因为我们可以看
226at a live running version of it,在现场运行的版本,
227give our feedback based on that.提供我们的反馈
228That feedback is so invaluable这种反馈是如此宝贵
229and it's already baked into a throwaway branch它已经烤成一个丢弃的树枝
230that our implementer can actually just go and reference.我们的执行者可以直接参考
231So many times I see people saying,我见过很多人说
232well, the thing didn't build what I wanted.那东西没有造出我想要的
233I created this big, beautiful spec我创造了这个大而美丽的光谱
234and it just did something totally weird.它只是做了一些非常奇怪的事情。
235You probably just weren't having discussions你可能只是没有讨论
236at a high enough fidelity在足够忠诚的高度
237and you probably should have been prototyping.你也许应该 原型。
238Finally, I don't want you to walk away最后,我不想你离开
239thinking this is only for UI or front-end stuff.认为这只是UI或前端的东西。
240Front-end definitely benefits a lot from prototypes前端肯定从原型中得到很多好处
241because how should it look,因为它应该是什么样子,
242what should it look like is a really key question它应该是什么样子 一个真正的关键问题
243that's really hard to answer during the discussion phase.在讨论阶段很难回答
244However, when you're doing more complicated stuff,然而,当你做更复杂的事情,
245especially backend work,特别是后端的工作,
246then a question like does this logic,这样的问题就是逻辑
247does this state model feel right?这个州模型感觉对吗?
248If you're building anything reasonably complex如果你正在建造任何合理复杂的东西
249or that needs to work in the real world,或需要在现实世界工作,
250then you're gonna run into these questions all the time.然后你会一直遇到这些问题
251And often the best way to get around these kinds of questions并且常常是解决这些问题的最佳方法
252to build something that kind of serves the needs建造一种满足需求的东西
253of your users, especially on something complex,您的用户, 特别是在复杂的事情上,
254is to build a prototype.建造一个原型。
255Now, it doesn't need to be a UI prototype现在,它不需要是一个UI的原型
256and what I've got here is build我在这里得到的是建筑
257a tiny interactive terminal app一个小小的交互式终端应用程序
258that pushes the state machine through cases让国家机器破案
259that are hard to reason about on paper.纸上很难解释
260In other words, a pure logic prototype.也就是说,一个纯粹的逻辑原型.
261And I've had tons of feedback from folks我收到了很多人的反馈
262saying that this is such a nice little feature.说这是一个很好的小特色。
263Both of these branches have their own reference docs here这两个分支都有自己的参考文献
264which tell it exactly how to do each one.告诉它如何做每一个。
265So if it's building a logic prototype,所以,如果它正在建立一个逻辑原型,
266it looks here.看这里
267If it's building a UI prototype, it looks like this.如果它正在建造一个UI原型,它看起来像这样.
268So I beg of you,所以我恳求你
269have your discussions at a higher fidelity.让你的谈话更加忠诚
270As agents get better at working with canvases,随着特工们与画布合作的加强
271working with design tools,与设计工具合作,
272I'm sure that wire frames我敢肯定,线框
273will definitely make a comeback as well.一定会回来的
274And the key point is this,关键是,
275the leap from discussion and spec to production-ready code从讨论和光谱到生产准备的代码的飞跃
276is really big.实在是很大。
277Whereas if you have a working prototype,如果你有一个工作原型,
278turning that into production is pretty simple.把它变成生产很简单。
279I wanna give a quick shout out to Shape Up by Ryan Singer,我想给一个快速大喊出 形状由瑞安辛格,
280which is an extremely good book这是一本非常好的书
281and very, very influential on me.对我很有影响
282I read this I think in 2019 or something,我在2019年就看过这个
283and it totally changed the way它彻底改变了方式
284that I built applications for people.我为人们建立了应用程序。
285It is totally free online网上完全免费
286and I will drop a link in the description.我会在描述中掉一个链接。
287If you wanna keep up to date with my skills,如果你想跟上我的技能
288then my skills newsletter is the place to be.然后,我的技能通讯是地方。
289I'm shipping, shipping, shipping,我在航运,航运,航运,
290constantly thinking about these skills,不断思考这些技能,
291how I can make them better.我怎样才能让他们好起来
292And you can benefit from that你可以从中得益
293the day that I make the changes.我改变的那一天
294But folks, thank you so much for watching.但是,各位,谢谢你的观看。
295It's been a pleasure幸会
296as always bringing you one of my skills总是给你带来我的能力之一
297and I will see you very soon.我会很快见到你。
该视频共有字幕 297 条。解锁更多字幕为会员功能,请移动到 价格