{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreicksbdjoafrlfmj47sez2t2y5erhlqvidsjot2eu2vahfg5e5tra4",
"uri": "at://did:plc:25rdn5elo5izoxrmtis34zuk/app.bsky.feed.post/3mppaiwg7kai2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreiamah3nz7lmxgbkyhemlooza6hmucxtzzar7i4cmix6e4zya7wggu"
},
"mimeType": "image/webp",
"size": 59862
},
"path": "/joedev090/stop-asking-ai-to-write-code-teach-it-how-to-work-1m47",
"publishedAt": "2026-07-02T22:54:54.000Z",
"site": "https://dev.to",
"tags": [
"ai",
"developertools",
"softwareengineering",
"buildinpublic",
"Matt Pocock's open-source Skills",
"mattpocock",
"skills",
"Sign Up To The Newsletter",
"View on GitHub"
],
"textContent": "Most developers use AI like autocomplete. The best developers use it like a software engineer.\n\nOver the past year, AI coding assistants have become part of our daily workflow. Whether you're using ChatGPT, Claude Code, Codex, Cursor, or GitHub Copilot, they can generate code in seconds.\n\nBut here's the problem:\n\nMost of us are still writing prompts like:\n\n\"Build me a login page.\"\n\nor\n\n\"Fix this bug.\"\n\nBut what is the result?\nSometimes it's great. Sometimes it's a mess.\nThe difference isn't the model, it's the workflow.\n\nAfter exploring Matt Pocock's open-source Skills repository, I realized something important:\n\nAI doesn't just need instructions. It needs a process.\n\nInstead of asking an AI to code, we should teach it how a software engineer works.\n\n**What are AI Skills?**\n\nThink of a Skill as a reusable engineering workflow.\n\nInstead of giving AI a single prompt, you give it a structured way of thinking.\n\nExamples include:\n\n * Understanding requirements\n * Writing a Product Requirements Document (PRD)\n * Planning implementation\n * Debugging systematically\n * Improving architecture\n * Creating tests before code\n * Documenting handoffs\n\n\n\nThe result is significantly more consistent than one-off prompts.\n\n**Whether You're Building an MVP or Maintaining a Legacy System**\n\nThese workflows are useful regardless of your experience.\n\n_🚀 Building an MVP_\n\nBefore writing code:\n\n * Validate the idea\n * Clarify requirements\n * Create a roadmap\n * Break work into manageable tasks\n\n\n\nInstead of rushing into implementation, you build with intention.\n\n_🏢 Working on an Existing Product_\n\nMost software engineers spend far more time maintaining software than creating greenfield projects.\n\nSkills help you:\n\n * Understand unfamiliar codebases\n * Investigate bugs methodically\n * Improve architecture incrementally\n * Document decisions for the rest of the team\n\n\n\n**My Favorite Skills**\n\n_1. Grill Me_\n\nInstead of generating code immediately, the AI starts asking questions.\n\nExamples:\n\n * Who is this feature for?\n * What problem does it solve?\n * What are the edge cases?\n * What constraints exist?\n\n\n\nIt behaves like a senior engineer or product manager reviewing your idea.\n\n_2. Write a PRD_\n\nTurn a simple idea into a professional Product Requirements Document.\n\nA good PRD includes:\n\n * Goals\n * User stories\n * Scope\n * Acceptance criteria\n * Risks\n * Success metrics\n\n\n\nThis is incredibly valuable for solo developers, startups, and open-source projects.\n\n 1. PRD → GitHub Issues\n\n\n\nA document is useful.\n\nActionable tasks are even better.\n\nThis workflow automatically transforms a PRD into:\n\n * Epics\n * GitHub Issues\n * Milestones\n * Dependencies\n\n\n\nPerfect for agile development.\n\n 1. TDD (Test-Driven Development)\n\n\n\nRather than jumping directly into implementation, the AI follows the classic cycle:\n\nWrite a failing test\nImplement the feature\nMake the test pass\nRefactor\n\nEven if you don't practice strict TDD today, this workflow naturally produces cleaner, safer code.\n\n 1. Diagnose\n\n\n\nOne of my favorites.\n\nInstead of randomly changing code until something works, the AI:\n\n * Reproduces the issue\n * Builds hypotheses\n * Validates each hypothesis\n * Finds the root cause\n * Proposes a solution\n\n\n\nThis is exactly how experienced engineers debug production issues.\n\n 1. Zoom Out\n\n\n\nSometimes AI focuses too much on a single file.\n\nThis workflow forces it to understand the bigger picture:\n\n * Project structure\n * Modules\n * Dependencies\n * Architecture\n * Data flow\n\n\n\nEspecially useful when joining a new team or exploring a large repository.\n\n 1. Improve Architecture\n\n\n\nTechnical debt is inevitable.\n\nThis Skill reviews your project looking for:\n\n * Large classes\n * Tight coupling\n * Duplicate logic\n * Poor separation of concerns\n * Better abstractions\n\n\n\nIt's like having an architecture review whenever you need one.\n\n 1. Handoff\n\n\n\nEvery engineer has ended a work session thinking:\n\n\"I'll remember where I left off.\"\n\nYou probably won't.\n\nThis workflow creates a clean handoff document including:\n\n * Current progress\n * Decisions made\n * Remaining work\n * Known issues\n * Next steps\n\n\n\nPerfect when switching devices, using different AI assistants, or collaborating with teammates.\n\nA Workflow I Would Recommend\n\nInstead of asking AI random questions throughout the day, I'd recommend something like this:\n\n💡 New Idea\n│\n▼\n🧠 Grill Me\n│\n▼\n📝 Write a PRD\n│\n▼\n📋 Generate GitHub Issues\n│\n▼\n🧪 Build with TDD\n│\n▼\n🐛 Diagnose Bugs\n│\n▼\n🏗 Improve Architecture\n│\n▼\n📄 Create a Handoff\n\nThis mirrors how experienced engineering teams actually work.\n\n**Why This Matters for Junior Developers**\n\nIf you're just starting your software engineering journey, these workflows teach you how experienced engineers think, not just how they code.\n\nYou'll naturally learn:\n\n 1. Requirement analysis\n 2. Product thinking\n 3. Software architecture\n 4. Debugging\n 5. Testing\n 6. Documentation\n\n\n\nThese are the skills that accelerate your growth from junior to senior.\n\n**Why Senior Developers Should Care**\n\nSenior engineers aren't measured by how fast they type.\n\nThey're measured by how well they make decisions.\n\nUsing structured AI workflows helps:\n\n * Reduce context switching\n * Improve code quality\n * Standardize development practices\n * Make AI outputs more predictable\n * Spend more time solving problems instead of rewriting generated code.\n\n\n\nFinal Thoughts\n\n✅ AI won't replace software engineering principles.\n\n✅ If anything, it makes them even more important.\n\n✅ The better your process, the better your AI becomes.\n\n✅ Stop asking your AI assistant to simply write code.\n\n✅ Start teaching it how your engineering team works.\n\nYour future self—and your teammates—will thank you.\n\nWhat AI workflows have made the biggest difference in your daily development? I'd love to hear how you're using them.\n\nThis is a resume of this github repository, please check it out!!\n\n## \n mattpocock\n / \n skills\n \n\n### Skills for Real Engineers. Straight from my .claude directory.\n\n\n\n\n# Skills For Real Engineers\n\nMy agent skills that I use every day to do real engineering - not vibe coding.\n\nDeveloping real applications is hard. Approaches like GSD, BMAD, and Spec-Kit try to help by owning the process. But while doing so, they take away your control and make bugs in the process hard to resolve.\n\nThese skills are designed to be small, easy to adapt, and composable. They work with any model. They're based on decades of engineering experience. Hack around with them. Make them your own. Enjoy.\n\nIf you want to keep up with changes to these skills, and any new ones I create, you can join ~60,000 other devs on my newsletter:\n\nSign Up To The Newsletter\n\n## Quickstart (30-second setup)\n\n 1. Run the skills.sh installer:\n\n\n\n\n npx skills@latest add mattpocock/skills\n\n 2. Pick the skills you want, and which coding agents you want to install them on. **Make sure you select** …\n\n\n\n\n\n\n\n\n\n\nView on GitHub\n\n\n\n\n\n",
"title": "Stop Asking AI to \"Write Code\". Teach It How to Work."
}