In this conversation with Matt Pocock, the central point is that the key to leveraging AI agents is not the model itself, but the 'harness' that lets you use the model optimally. Matt stresses the importance of strategic programming for using AI efficiently, and shares in-depth insights on a range of topics: how to delegate work to AI, personalized learning systems, and how to build a business in the AI era. In particular, he offers a realistic view of the changes AI will bring, along with the fundamental capabilities and mindset developers need, and gives concrete advice for succeeding in the AI era.
1. The Key to Using AI Is the 'Harness' 🛠️
The video opens by emphasizing the importance of the 'harness', which determines how well you can use a model—more than the AI model itself. Matt points out that focusing only on improving model performance is the wrong approach. He explains that optimizing the harness—by providing the right prompts, granting the right skills, and improving the environment in which the model operates—is far more important.
"Everyone is obsessed with the model, but I think we should care more about the harness. What can we do to get the most out of the harness? We need to provide the right prompts, grant the right skills, and improve the environment in which the model runs. As I said about Fable, the model is useful, but the harness is equally important, and you have far more control over the harness than over the model."
Matt advises people to focus on the fundamentals that have proven effective for 30–40 years. Asked how to optimize token usage, he answers, "Have a codebase that's easy to change," once again emphasizing the importance of basic software design principles.
2. Strategic Programming and the Developer in the AI Era 🧠
Matt explains that to succeed in the AI era, you must be skilled at strategic programming, not tactical programming. Inspired by John Ousterhout's software design philosophy, this concept has become even more important because AI can now efficiently handle tactical programming—the everyday work of writing code and fixing bugs.
- Tactical programming: The everyday work of writing code directly, dealing with syntax, and resolving bugs. AI has all but consumed this domain.
- Strategic programming: The big-picture work of structuring the codebase for the long term, devising strategies to increase development speed, and designing interfaces between modules.
"AI has basically eaten tactical programming. It's gone now. AI does tactical programming better than you, because it can do it more cheaply. So you have to be good at strategic programming to make the most of this infinite pool of tactical programmers."
To use AI effectively, you need excellent delegation skills, which are closely tied to the fundamental principles of software design.
- Design the hard parts in advance,
- Define the scope of work clearly,
- Consider the interfaces between modules,
- Write good tests, and
- Provide enough documentation so AI can make changes effectively.
Matt notes that while AI improves senior developers' capabilities tenfold or more, it brings only a relatively small improvement to junior developers. This supports his claim that an individual's skill determines the ceiling of what AI can do.
"AI makes senior developers 10x better. It no longer makes sense to hire so many juniors, because a junior gets a little help from AI, but a senior gets enormous help from AI and can do far more. Your skill is the ceiling of what AI can do. If your skill is low, AI can't go beyond that either."
3. A Personalized Learning Tool: The Teach Skill Demo 🎓
Matt demonstrates the 'Teach Skill' he built, showing the potential of personalized AI learning. The skill provides customized learning material tailored to the user's goals and current level, advancing learning through an interaction that feels like talking to a real teacher.
-
Background: Drawing on 10 years of teaching singing and development, Matt embedded teaching principles into an AI skill.
-
How it works: The Teach Skill understands the user's 'Mission' and provides integrated instruction on the knowledge, skills, and wisdom needed to achieve their goal. For example, Matt uses his own past experience as an example and enters, "I'm a vocal coach, and I want to build an app for managing student schedules and writing notes."
-
Personalized instruction: The skill checks the user's current working environment (an empty directory) and proposes a customized learning path for a "Vibe Coder" (a developer who only writes code but lacks the fundamentals). As the initial learning topic, it offers the basics of using Git.
"If a Vibe Coder can read code and use a basic terminal, the most important knowledge gap is almost never more syntax. It's the things around the code that let you ship without fear."
-
The learning process: Lessons are delivered as HTML files and review the learning material through Git command practice along with quizzes. Quizzes are used as an effective teaching technique for strengthening memory.
"Quizzes are abnormally effective at increasing the strength with which something is stored."
-
State persistence: The Teach Skill is a stateful skill; it stores the user's learning progress (mission, starting point, the decision to learn Git, the zone of proximal development, and so on) locally to provide continuous personalized instruction. It's like a great teacher who remembers a student's learning history and guides the next step.
Matt boasts that through this skill he became able to solve a Rubik's Cube from memory, emphasizing that the skill is highly effective for developer education. The skill can be installed from Matt Pocock's GitHub repository via the command npx skills latest add mattskils.
4. What Makes a Good Agent Skill? 🤖
Matt divides good agent skills into two types.
-
Procedure skills: Skills the user invokes directly to elicit a specific behavior from the model. Matt says this is the approach he mainly uses, with the
grill meskill being a representative example. Thegrill meskill turns the AI into a cross-examining interviewer that helps you stress-test your ideas and uncover unexpected problems."My
grill meskill is one of the most popular skills, and it basically turns the model into an adversarial interviewer. It questions you, interviews you, and presents ideas you might not have considered until you reach a shared understanding." -
Ability skills: Skills intended for the model to invoke on its own. For example, a skill that automatically checks coding standards while writing code.
Matt reveals that he prefers using procedure skills while keeping control in his own hands. This is a way of using AI as a tool to strengthen his own capabilities, rather than delegating his thinking to AI.
5. The Agentic Engineering Setup and the "Bitter Lesson" Debate 🏎️
Matt explains his agentic engineering environment, saying he mainly uses Claude Code (Opus 4.8, medium effort) to do planning and local implementation work.
- AFK (Away From Keyboard) work: Through a tool he built called Sand Castle, Matt runs agents in a sandbox so that agents can do work even while the developer is away from the keyboard. This provides security benefits and lets him run multiple agents in parallel, greatly improving productivity.
- GitHub Actions integration: By combining Sand Castle with GitHub Actions, he automates repetitive tasks such as PR (Pull Request) review and code analysis.
Matt places greater value on optimizing the harness—the system surrounding the AI—than on the model itself. He compares obsessing over the AI model to focusing only on the engine of a Formula 1 car, arguing that you have to consider the whole system, including the chassis, aerodynamics, and so on.
"Everyone is obsessed with the model. Everyone is obsessed with the engine of a Formula 1 car, but the engine is actually only part of the whole system. There's the entire chassis, how it moves through the air, and many other factors. Everyone is obsessed with the model, but I think we should care more about the harness. What can we do to get the most out of the harness? We need to provide the right prompts, grant the right skills, improve the environment in which the model runs, improve the codebase, and so on."
The host, David Ondrej, raises a question about the "Bitter Lesson," asking whether everything won't immediately get better once a better model is used. The Bitter Lesson is the idea in machine learning research that no matter how sophisticated your optimizations are, increases in compute power ultimately overwhelm everything. Matt says he might be caught up in this Bitter Lesson, but he still believes in the importance of optimizing the harness and building a solid codebase.
"I still think there's a lot to gain from focusing on optimizing the harness and building a good codebase where the agent can work well—without tripping the agent up before it even gets started."
He stresses that instead of focusing on the model, you should focus on the software development fundamentals that have held true for 30–40 years. A well-designed codebase makes it possible to do the same work with a less powerful model, which has the effect of reducing token costs.
6. Agentic Loops and the Queue 🔁➡️📦
Matt shares his view on 'agentic loops,' which recently became a hot topic on Twitter. He explains that while agentic loops partly serve to drive more token usage for AI labs, behind that there's the value of AFK (Away From Keyboard) work.
- Human-in-the-loop work: Work where a human and an agent need to discuss things together, such as planning or complex implementation.
- AFK (Away From Keyboard) work: An approach where you delegate a specific task to an agent and the work proceeds even while the developer is away. Matt says AFK work has dramatically increased his productivity.
Instead of the 'loop' concept, Matt proposes the 'Queue' concept. Development is essentially the process of working through a queue of tasks (a backlog), and the agent is just one of the nodes that pulls work from this queue and performs it.
"I mostly think of all of this as queues, not loops. A queue is the backlog of work I need to complete. ... This is not a loop. A queue eventually gets resolved. When a pull request is merged, that task disappears from the queue. Development is basically just a queue of work that needs to get done."
He points out that, in a team development environment, a single loop performing all work indefinitely doesn't match reality. Instead, he emphasizes that a human must still be the final decision-maker, managing the queue and setting priorities. The AI does the work in an automated way and presents results to the human for final review.
7. Business and Hiring in the AI Era 💼
Matt says that even in the AI era, the fundamental principles of building a business don't change.
- Talking to customers and understanding their needs is the most important thing.
- AI is a huge help in implementing ideas, but the human role is essential in deciding which ideas to implement.
"Honestly, I don't think much has changed. ... To build a business, you have to stick to the fundamentals. You have to talk to customers and figure out what they need. And you have to build what looks like what they need and solve a real problem. I don't think anything has changed here."
When it comes to hiring, he emphasizes the balance between young, passionate developers who aggressively use AI tools and senior developers with a solid foundation in software development.
- Junior developers: Based on their enthusiasm for AI and deep understanding of new tools, they can improve AX (Agent Experience).
- Senior developers: They know how to create a good DX (Developer Experience), which leads to a good AX. Senior developers contribute to building an environment where AI can easily understand and work with the code.
Matt concludes that while AI replaces the developer's tactical programming role, strategic thinking and problem-solving ability still remain a uniquely human domain.
8. Practical Advice for Using AI ✨
Matt offers two pieces of practical advice for people trying to start using AI.
-
Reset all your skills, plugins, and agent settings, and start from a 'blank slate.'
"The first thing I'd do is delete all my skills, all my plugins, all my MCP servers. Delete the Claude MD, delete the agent MD, go back to a state with nothing, and observe what the agent does."
Too much configuration can actually clutter the context window and reduce the AI's efficiency. After understanding how the AI works in its default state, you should add what you need, focusing on procedure skills.
-
Focus on delegating implementation work using AFK (Away From Keyboard) agents. Matt emphasizes that AFK-style automation can bring enormous productivity gains. The initial setup takes some effort, but once it's built it's highly effective.
Closing 💡
The conversation with Matt Pocock offers developers a realistic perspective and a practical approach for the AI era. He repeatedly stresses the importance of the 'harness' for using a model effectively, rather than the AI model's performance itself, showing that basic software design principles and strategic thinking ability will become the competitive edge of the AI era. He says it's important to understand AI not as a mere tool but as a 'multiplier' that expands your capabilities, and to continually develop your own skills and wisdom.
