AI Engineer Europe 2026
Fast Models Need Slow Developers
Read the talk
Fast Models Need Slow Developers
Faster code generation makes smaller changes, frequent verification, and real-time steering more practical—but only if developers stop optimizing for unattended output.
From a talk by Sarah Chieng
Before you start: Familiarity with AI coding assistants, Git diffs, and automated tests will help; inference concepts are explained as they arise.
When waiting becomes a development habit
Write a massive prompt, try to get the whole feature in one shot, accept a huge commit, or keep ten agents thinking at once. These are familiar ways to work around slow code generation: while the model runs, give it more work or find something else to do. The problem appears when generation speeds up but those habits remain.
Sarah Chieng introduces Codex Spark with a reported generation rate of 1,200 tokens per second, compared with roughly 40–60 for the Sonnet and Opus families. She frames that as approximately a 20× difference; these are her historical comparisons, not a controlled benchmark with specified workloads. If a workflow was producing bad code slowly, faster inference lets it produce bad code much faster. Generation speed does not repair the feedback loop around generation.
Introducing herself as Cerebras’s head of developer experience, Chieng describes the excitement of showing developers inference without the familiar wait. That experience creates a new practical question: how should people work when code arrives faster than they can understand it? Her historical overview puts popular model families around 50–150 tokens per second over the preceding two years, even as intelligence and context windows grew. Spark represents the change in that otherwise relatively stable dimension.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Move memory closer to computation
The speedup begins below the developer tools. Hardware, model architecture, and inference software are being optimized together. At the hardware layer, a central constraint is the memory wall: computation needs model weights and KV-cache data, and moving those values can dominate the time spent generating a token. Chieng attributes 50–80% of inference latency to hardware and memory movement, without specifying a workload or measurement configuration.
Her simplified hardware comparison contrasts NVIDIA GPUs accessing off-chip high-bandwidth memory, or HBM, with designs that place more memory near compute. This is a bandwidth argument, not a complete inventory of GPU memory. Cerebras and Groq are examples of companies pursuing proximity between storage and computation; on the Cerebras wafer, SRAM is distributed across the chip so cores can directly access the values they need. The complete wafer diagram makes that spatial relationship visible.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Give prefill and decode different hardware
Disaggregated inference takes specialization a step further by separating two phases of a request. Chieng connects this development to commercial activity, including NVIDIA and Groq and the announced Cerebras–AWS collaboration. Her description of NVIDIA buying Groq needs a correction: Groq’s announcement describes non-exclusive technology licensing and staff transfers while Groq remained independent; it does not substantiate the acquisition price she mentions. The AWS example was also an announced system under development, with customer availability planned for later, rather than an already demonstrated deployment at scale.
| Phase | Work | Main pressure in this explanation | Hardware fit |
|---|---|---|---|
| Prefill | Process input tokens and populate the KV cache | Compute | Compute-optimized hardware |
| Decode | Generate successive output tokens | Memory bandwidth | Memory-optimized hardware |
Prefill can process the supplied sequence in parallel. Decode is sequential because each new token depends on what came before it. Running both on one device asks the same hardware to serve two different resource profiles. Separating them allows each phase to run where its dominant cost is better supported, while the KV cache carries the prompt’s computed state into generation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Compute selectively and reuse prior work
Moving up the stack, model design determines how well a workload fits its hardware. Layer dimensions, model size, and memory requirements all matter. A mixture-of-experts model activates only a subset of its experts for each token, rather than running the entire expert set. This separates total model capacity from the computation performed for an individual token: a large collection of parameters need not all participate in every step.
REAP—Router-Weighted Expert Activation Pruning—goes beyond selective activation to remove experts from the stored model. Chieng introduces it through the intuition of discarding experts that a particular use case does not activate. More precisely, the method ranks expert importance using router gate values and activation norms; pruning is not restricted to experts that never activate. Routing reduces the work selected for a token, while pruning reduces the expert set available at all.
At the inference-software layer, Chieng names Together, Baseten, Modal, and Fireworks and highlights KV-cache reuse. Caching preserves previously computed keys and values so generation does not have to recompute those representations for the entire preceding sequence. New tokens still perform attention over relevant cached information; caching avoids repeated work rather than eliminating attention.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Optimize for understood work, not agent count
At the top of this increasingly fast stack sits the developer. Chieng’s examples of online coding culture include six Claude Code terminals, a swarm of more than 500 agents, and eight agents spread across five screens. Those displays make concurrency look like progress. Her concern is the code that nobody verifies: increasing its production rate also increases the potential rate of technical-debt accumulation. Spark is the immediate example, but the workflow problem applies to a broader future of faster models.
Model selection therefore needs a third dimension alongside intelligence and cost: speed. Different parts of a task need different strengths.
- Planning and long-horizon work: Use a larger model such as GPT-5.4 or GPT-5.3 to reason through the task and produce the plan.
- Bounded execution: Give Codex Spark agents the individual steps, with a clear scope and an order of work.
The point is to assign a fast executor something specific to accomplish, rather than treating every agent as an independent owner of the whole project.
A successful difficult session can also become a reusable skill. First let the larger model work through the unfamiliar task. Then capture the successful trajectory as a verifiable, repeatable workflow. A smaller, faster agent can subsequently repeat that established procedure in the background. The reusable asset is the working procedure and its checks, not merely the final output of the original session.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Spend the saved waiting time on validation
Some activities become more attractive when asking the model for another pass no longer creates a long interruption. Chieng calls validation “basically free” in this regime. That describes reduced generation waiting, not zero execution time or cost: tests, browser automation, and human review still take time. The useful change is that checks can become part of each development step instead of a postponed final phase.
The proposed checks cover different failure modes:
- Test suites: Check behavior against expected results.
- Linting and pre-commit hooks: Catch recurring mechanical problems before they enter a commit.
- Diff reviews: Examine what the agent actually changed.
- Browser-based QA: Inspect behavior in the interface where users encounter it.
Run the relevant checks as the work develops, not only when the entire feature is finished or the code is about to be pushed. Smaller changes make each check easier to interpret and each correction easier to contain.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Use variety to bring human taste into the result
Consider a request for a midnight-blue navigation bar with four icons. A single generated result may be acceptable without being the one you would choose. Chieng proposes asking for 15 variants in the time an older model would take to produce one; this is an illustrative timing comparison, not a supplied benchmark. Her larger example uses five agents producing 15 variants each, yielding 75 candidates for selection.
This is a different use of output volume from accepting a large pile of unreviewed implementation. The candidates are alternatives to compare, not changes that all need to enter the product. The same approach can help with research directions, architecture options, and graphic design. In the accompanying slide, five dark sidebar designs make the selection task concrete: the developer can inspect the differences rather than accept the first plausible answer.
Chieng describes selection as a way to supply taste that the model does not reliably provide itself. Otherwise, the developer may spend substantial time creating a reference, finding examples, or writing a prompt detailed enough to nearly constitute the work. Generating alternatives shifts some of that effort from specification to judgment: decide what works after there is something concrete to evaluate.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Stay present, constrain changes, and clean up
The old interaction pattern was to start a session, get food or scroll, and come back when the model had finished. Fast inference makes a more immediate exchange possible. Ask the agent to gather context across the repository and explain how the system works, then use that explanation to make implementation decisions. The model should help the developer decide; the developer should remain responsible for the decision.
That requires staying close enough to the work to understand it before someone asks for an explanation. Chieng suggests actively steering two or three sessions instead of leaving ten agents unattended. Useful boundaries include prohibiting file deletion, imposing a maximum diff size, and restricting permitted operations. During implementation, narrow the instruction further: change only the relevant area, postpone type changes, or stop and redo an approach as soon as it looks wrong. Fast responses make these interventions part of the normal conversation.
Apply the same short cycle to refactoring. After each completed checklist task, ask for a cleanup pass: remove unused imports, eliminate unnecessary lines, and make function structure consistent. This uses the same reduced-waiting opportunity as validation. Cleanup becomes part of completing a small task, rather than an increasingly large job saved for the moment before committing.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Bound the task and persist what the next session needs
Faster generation also makes context management more urgent. Chieng’s illustration assumes context accumulates 20× faster: a window that previously filled in ten minutes would then fill in thirty seconds. This is conditional arithmetic, not a measured compaction interval. The relevant question is how quickly the workflow accumulates context, not just how quickly the model emits tokens.
Break large tasks into smaller, bounded goals before the session becomes crowded. Chieng advises avoiding the 80–100% context-occupancy region because compaction may lose information; that range is her working heuristic, not a universal trigger threshold. A bounded task should be understandable without carrying the entire history of the project in the conversation.
The next step is to put durable memory somewhere a fresh session can read it. Chieng proposes four files:
| File | Durable responsibility |
|---|---|
AGENTS.md | Project guidance and agent responsibilities |
plan.md | Overall plan and ordered checklist |
progress.md | Completed work, remaining work, and where to resume |
verify.md | Checks required before advancing |
In her setup, AGENTS.md includes agent and subagent definitions. Its general role is persistent project instructions, rather than a required subagent-definition format; the other three filenames are workflow conventions. A new session reads the recorded progress to identify its next task, then uses the verification instructions before moving forward.
For the midnight-blue navbar example, a useful initial progress.md could make the distinction between planned work and verified work explicit:
markdown
# Progress
## Goal
Create a midnight-blue navigation bar with four icons.
## Completed
- None yet.
## Next task
Generate candidate designs for human selection.
## Remaining
- Record the selected design.
- Implement only the selected design.
- Review the diff and clean up the changed code.
- Run the checks in verify.md and record their results.
## Verification
Pending. No implementation has been accepted.
This record gives a fresh executor a concrete starting point without pretending that a proposed design has already been implemented or checked. In the planner–executor arrangement, GPT-5.3 or GPT-5.4 Codex creates the plan and GPT-5.3-Codex-Spark executes its checklist one item at a time. The files carry the continuity between those sessions.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Make careful development easier to sustain
The closing slide brings the workflow back to concrete Codex controls: /permissions, /experimental, /skills, /review, and /rename, alongside /new, /resume, and /fork for conversation management. These are the controls shown in the recording, not a guarantee of availability in every current client. They connect the earlier ideas to permissions, reusable procedures, review, and deliberate session boundaries.
The developer-experience payoff is the ability to do quality work without turning every question or correction into a long wait. Faster feedback makes it more practical to stay with the code, examine a small change, request a revision, and verify the result while the problem is still fresh. The model can move quickly while the developer takes the time needed to understand what should happen next.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
OpenAI's launch account of the fast coding model, including its initial capabilities, context window and performance framing.
The partnership announcement explains splitting prefill onto Trainium and decode onto Cerebras, connected through KV-cache transfer.
Research on compressing mixture-of-experts models by pruning experts using router weights and activation magnitudes.
Official code and experiment instructions for REAP expert pruning and comparison methods.
Further reading
- Stop Shipping AI SlopArticle
Sarah Chieng and Sherif Cherfa's practical guide to fast coding workflows, bounded changes, verification and persistent project state.
- How KV caching worksDocumentation
An explanation of how autoregressive transformers reuse cached token information during generation.
Updates since the talk
Current instructions for giving Codex persistent repository guidance through AGENTS.md files.
Read the complete timestamped transcript
- 0:00
[upbeat music] [clapping] Hi, everyone.
- 0:17
So we'll just get right into it. So over the past few years, we as developers have developed a series of bad habits when it comes to developing as a result of slow AI code generation.
- 0:31
And so we-we're all familiar with it. We do things like write massive prompts and try to one-shot. We'll make huge commits, or we'll have our ten agents all on the screen at the same time combobulating, cogitating, thinking.
- 0:46
And so about a month ago, we at Cerebras and OpenAI released a new model, state-of-the-art model, called Codex Spark. Codex Spark can generate code at twelve hundred tokens per second.
- 0:59
And to put that into perspective, if you look at the Sonnet family or the Opus family, those can generate code at about forty to sixty tokens per second. So in this new era, as we're starting to see much faster coding models, this is twenty times faster, not only does it unlock new capabilities and use cases, but it
- 1:18
also requires us to rethink how we as developers interact with the coding model. And of a lot of these bad habits that we had before, that were generating maybe fifty tokens per second of bad code, unless we fix them, they're gonna start generating twelve hundred tokens per second of bad code.
- 1:36
And so that is the topic of today's, uh, talk.
- 1:41
So to get started, my name is Sarah Chieng. I'm the head of developer experience at Cerebras, where we are building the world's largest and fastest AI processor. A large part of my job is that I get to introduce fast inference and fast coding models to developers for the very first time.
- 1:58
And for most people, it's a very exciting moment. There's no thinking and waiting and starting up that you might be really annoyed about. But at the same time, as I said, unless we change our habits, we are not gonna have good code in the future.
- 2:14
And so this talk really is a practical playbook for how we as developers can think about how we interact with the models in this new regime, es-especially in a future where the models are generating code faster than we, the human, can keep up.
- 2:29
So I want to look back at history a little bit. We've had a very exciting past two years. The models have gotten bigger. They're getting smarter. We have bigger context windows.
- 2:39
But the thing that has remained relatively constant over the past two years is coding speeds, is model speed. So if we look at a lot of the popular families, we have Gemini, Claude, GPT, Sonnet.
- 2:50
Over the past two years, they've always been within, you know, fifty to a hundred fifty tokens per second.
- 2:57
And this is Codex Spark. Again, Codex Spark is just the first of many models that we as developers can expect to be much faster than what we're previously used to.
- 3:07
And we even had to change the Y-axis because it's so much faster. And so before we get into the actual playbook and tips, I want to talk about why this is happening.
- 3:15
Why are we suddenly seeing such faster models? And it's actually a very exciting development. It's, it's what many of you probably work on on a day to day, but it's-- there's so many companies that are working on this problem all at the same time.
- 3:28
And as a result, the entire AI inference stack is getting optimized all at once. And so breaking it down, let's go through it really quickly. We have hardware. This is a physical device that inference, training, all of our compute is happening on.
- 3:42
One of the biggest things that we have to think about with hardware is the memory wall. And this is exactly why hardware and memory movement takes up fifty to eighty percent of that latency time for inference.
- 3:52
This is where a lot of the frustration comes from. And so when we are running inference, we have to constantly move our weights and KV cache values between memory and our actual chip.
- 4:03
On the NVIDIA GPU, this is the most traditional type of hardware, all of this memory is stored off-chip on off-chip HBM. And we now have a memory bandwidth bottleneck.
- 4:13
What a lot of newer companies are doing are thinking about companies like Cerebras or Groq. They're thinking about how do we move this memory to be as close to the chip as possible.
- 4:21
And so here's an example of the Cerebras wafer, where all of the chip is, um-- all the memory is distributed across the chip in SRAM, so every core has direct access to the values it needs.
- 4:32
Even more exciting, we have disaggregated inference, and this is an in-- Um, disaggregated inference really has become commercialized in the last few months. This is why NVIDIA bought Groq for twenty billion dollars a few months ago, and this is also why Cerebras and AWS are now partnering to serve the wafer and AWS Trainium together.
- 4:51
So in traditional inference, there's two steps. There's prefill, and there's decode. Traditionally, both of these steps have always been run on the same piece of hardware. Prefill is where we're taking every token that the user inputs and processing it, embedding it, and adding it to our KV cache.
- 5:07
This is a seque-- this is a step that can happen in parallel, and so it's compute bound. Decode, on the other hand, is where we're actually generating the output token by token, and this is sequential and is, as we mentioned, memory bound.
- 5:19
Again, it goes to the same problems that we mentioned before. And so what we're doing and seeing now commercially is that we're splitting up these two steps so that prefill is done on one type of hardware that is compute optimized, and decode is done on another piece of hardware that is memory optimized.
- 5:36
Going up the stack... There's the diagram. Going up the stack, we look at model architecture. There are so many ways that we are training our models and shaping our models to cater to our hardware.
- 5:47
We have specific layer dimensions and memory and model size that we're always thinking about. A great example is a very standard model architecture mixture of experts. Here, instead of activating the entire model all at once for every single token, we're only activating a subset of experts for every time.
- 6:06
And what this does is it allows us to have the intelligence of a much small-- larger model for the compute cost of a much smaller model. And again, we're always thinking about memory and the size of our models.
- 6:16
And a lot of people have been building on top of this in recent years. An example is REAP, Router-Weighted Expert Activation Pruning. I had to read that one [laughs].
- 6:24
Um, and here we're looking at the specific use case. We're seeing which experts aren't being activated all-- at all, and we're pruning them altogether. We're getting rid of them.
- 6:32
Again, we're always thinking about model size. And then at the very top layer of this stack, we have inference optimizations. And this is where many of you might be working in, and a lot of companies that you're far-- probably familiar are also working in.
- 6:45
These are companies like Together, Baseten, Modal, who's also here, Fireworks. And one of the biggest things that we're thinking about at this level is KV cache reuse. And so by storing and reusing previously computed token representations, we don't have to recalculate attention over the sequence at every step.
- 7:05
And now I wanna get to the very top and most exciting part, the developer. This is the current state of what the internet looks like or what Twitter, LinkedIn looks like.
- 7:15
We have someone running six Claude Code terminals at once, f-a five hundred plus agent coding swarm, um, someone running eight agents across five screens. And I get how tempting doing something like this can be.
- 7:27
I feel like if you're on Twitter at all these days, unless you are doing something like that, the internet is basically convincing you that you are living in the Stone Age and that you need to catch up.
- 7:38
But the reality-- what is the reality of what is happening in all these setups? Is that we're generating massive amounts of code that nobody is verifying. And in the new future with much faster inference, this becomes increasingly dangerous.
- 7:52
And so especially with fast inference, we're now gonna be generating technical debt at a level that we've never seen before, and we're not gonna know what to do with it.
- 8:02
And so I'm gonna pivot now to spend the rest of the talk on the practical playbook and tips and workflows and how we can reimagine how we as a developer should operate in this new regime of faster inference.
- 8:12
And as I mentioned, Codex Spark operates at twelve hundred tokens per second. But it really is just the first model in what we should as developers expect and prepare for to be a new regime of faster models across the board.
- 8:26
And so starting with the first one, the first category is just choosing the right models and how do we orchestrate our agents so that we're leveraging different model strengths.
- 8:35
I think historically, we always think about intelligence. There's n-there's no secret that we as developers are not particularly loyal and that we will switch to whatever model, whatever family is the most intelligent at a given time.
- 8:47
And maybe we also think about cost unless our company pays for whatever we want. And so here, now the inference speed is a twenty X difference. Now we also have another vertical to dif-- think about, speed.
- 8:59
And so a good mental model is to use a larger model like GPT-5.4, 5.3 for your planning or your long horizon workflows, and then using a s-faster model like Codex Spark as your actual executor.
- 9:13
And so here's an example. You might ask your five point-- GPT-5.4 to generate your plan. You would generate a s-- um, you would spawn all of your sub-agents with Codex Spark and have it actually oper-- uh, have it actually execute on all of the steps o-- um, one by one.
- 9:29
Another really helpful trick is to actually make skills out of successful sessions and capture trajectories that are working really well. A thing that you can do here is use a model like GPT-5.4 to actually have it do the initial harder, larger task, capture that as a skill, and therefore making it a verifiable, repeatable workflow, and then having
- 9:50
a small, um, s-faster agent like Codex Spark just do it again and again in the background.
- 9:57
The next category I think is even more ex-exciting because this is a ca-category of things that just were not possible and were not practical. These are things we wouldn't do because we're tired of the cogitating, gesticulating,
- 10:11
germinating that you might have seen. And so here I really want us to think about this and internalize this. But at twelve hundred tokens per second, a model like Codex Spark makes validation basically free.
- 10:25
There is no excuse and no reason why you should not be doing things like this, test suites, linting, pre-commit hooks, diff reviews, browser-based QA automations. There's all these things that you can add to every step of your workflow because it is instant.
- 10:40
It's not slowing you down, and it's not you do this all of this at the very end or right before you're about to push your code.
- 10:47
Another tip that I really like is exploring cherry picking. So let's say that I want to code a nav bar and I want it to be midnight blue, I want four different icons, I give it to the model and, and the result's fine.
- 10:59
Instead, what I can do with Codex Spark or s-- much faster model is I can have it tell it to generate fifteen versions in the same time that it would have taken me a previous model to generate one version, and I can cherry pick the version that I like the best.
- 11:12
Even better, I can generate five sub-agents that are each generating fifteen versions, and now I have seventy-five versions, and I pick the one that's best. And this is great for things where we really value quantity or variety, so things like research direction, different types of architecture diref-- um, directions, or even just graphic design.
- 11:30
And the reason why I really like this one is because it almost allows us to artificially induce taste into our model output. So traditionally, it's no secret, it's very easy to sniff out any UI or text that a model writes.
- 11:45
The models themselves do not have taste. And the ways that we've kind of brute force worked around this is that we either create an example ourselves or we find examples for the model, which is time-consuming, or we give the prompt so much detail that we might as well have completed the task ourselves.
- 12:01
This is a great way of saving our time and also getting much better results.
- 12:07
The next tip is kind of more, more so a, a mental model where now that the models are so fast, it should not be you spawn a session, you go get a hamburger, you scroll Twitter,
- 12:22
and then you come back. Now, you can actually sit down, and it's a real-time collaboration that you're able to have with this model. You should view it much more as a pure programmer, and this is the only way that you are going to avoid having bad code.
- 12:37
So you can sit down and ask questions like ha- having it collect all the context across your repo and actually asking it how does it work, being the one in the front seat making decisions and implementations.
- 12:48
The AI should always be helping you make decisions, not the other way around.
- 12:53
The next one, I hate this slide because it's everyone's trigger word and overused word, but [laughs] how do we avoid slop? So as I was mentioning before, it really shouldn't be, you know, you spawn ten agents, you never verify the code, you don't know what's happening under the scene.
- 13:07
Someone asks you to explain, you have to read the code for the first time. Now you can actually have two to three sessions and actually sit down next to your code, and I know this is something we're not really used to, but sit down with it and actually steer it.
- 13:21
Understand what's happening because, again, we now are now experiencing real-time collaboration as we code with this agent. You can be super specific. You can thing-- do things like ban the model from deleting files, give it a max diff size, the model-- have the model only read and write, and even give it steering directions, things like, "Only change
- 13:39
this. Don't touch types yet. Wait, that implementation wasn't quite right. Let's redo that." The graph on the left is a, is a helpful mental model as an example of how the developer, the AI agent, and the code base can all work together and what that should look like.
- 13:55
This next step, refactoring, is very similar to what I was talking about with valida- with verification. Just like with verification, something like constantly refactoring and cleaning up your code automatically is basically free at twelve hundred tokens per second.
- 14:09
So you can do things, instead of doing it at the very end right before you're about to commit your code, you can just re-- you can just bake this into your automatic workflow so that after every single task on that checklist is complete, you're just asking the model to automatically, you know, delete unused imports, clean up unnecessary
- 14:25
lines of code, make it so that all of my functions are structured the same way.
- 14:30
The last category that I want to talk about, and I'm sure that so many of you guys have already heard these two words a countless [laughs] amount of time over the past few days and across so many talks, is context management.
- 14:42
But the reason I'm going to talk to you about it again is because let's say that historically it took you ten minutes to fill up your context before you saw, you know, the God-feared word, compaction.
- 14:55
Now, if you take ten minutes, divide it by twenty, you are now getting compaction in thirty seconds. And so context management, especially with fast inference, is more important to think about than ever, and you can't get away with sloppy practices anymore.
- 15:09
And so all of these, these really are just good practices no matter what coding model you are using or what speeds. But a general, very high-level framework is just always, always break up large tasks into smaller bounded goals.
- 15:23
And this graph on the right is a good mental model for how, how full your context is will then affect your behavior, the model behavior. So you always want to avoid the eighty to a hundred percent because you're gonna get compaction.
- 15:35
Right now, we all know some things might get lost.
- 15:40
And so a good way that you can think about, "How do I externalize this memory so that I can have these small bounded goals?" Like, what does that look like?
- 15:48
So an example of how you can do this and set up an external memory system that is persistent every time you set up a new session is with this four file system.
- 15:57
We have agents.md, which is where we're actually defining all our agents, our sub-agents. We have plan.md, which is what we're creating at the very beginning, and this is where we're just generating the entire plan and step-by-step chep- step-by-step checklist that we're going to go through.
- 16:12
We have progress.md, which is where we're keeping track of what do we need to do and what has been done before. So every time you spawn a new agent or session, there's no context.
- 16:22
It comes in, it looks at progress.md, it sees what's been done before, and it's like, "Okay, here's where I pick up. Here's where the next task needs to be done."
- 16:29
And then the last one's verify.md, and this is what we're using at every single step to just make sure everything looks good, it's clean code, and we can move on to the next step.
- 16:39
And so an example of this is, again, leveraging different models, using a GPT 5.3 or 5.4 Codex, having it create your plan, and then having your GPT 5.3-Codex-Spark actually execute the checklist one by one much faster than before.
- 16:54
And as a final slide, I want to do these, um, a few helpful commands for how you can get the best out of Codex, things like permissions, experimental skills, review, and rename.
- 17:04
But the biggest thing that I really want to emphasize here is that honestly, it's not really about just having faster coding models. What it really means is that the ex- developer experience is actually gonna become so much better.
- 17:17
And when it's becoming so much better, there's so much more we can do, and there's so many ways that we can now avoid creating bad clo- bad code in a way that isn't miserable or us staring at a screen for thirty minutes.
- 17:30
So thank you guys so much for welcoming today-- me today. My name is Sarah Chieng. Um, I'm visiting from SF. It's an honor to be here in London. Um, if you have any questions or need any credits, my handle is [REDACTED:username] across every platform.
- 17:43
Thank you, guys. [audience applauding] [upbeat music]