<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: eram</title>
    <description>The latest articles on DEV Community by eram (@eram).</description>
    <link>https://dev.to/eram</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1103051%2F5ba0e461-c5f0-4db1-bc5e-4e70d1f86e7b.jpeg</url>
      <title>DEV Community: eram</title>
      <link>https://dev.to/eram</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/eram"/>
    <language>en</language>
    <item>
      <title>Stop Burning Your AI Limits: A Token Diet for Long Coding Days</title>
      <dc:creator>eram</dc:creator>
      <pubDate>Tue, 04 Aug 2026 10:09:22 +0000</pubDate>
      <link>https://dev.to/eram/stop-burning-your-ai-limits-a-token-diet-for-long-coding-days-o2h</link>
      <guid>https://dev.to/eram/stop-burning-your-ai-limits-a-token-diet-for-long-coding-days-o2h</guid>
      <description>&lt;h1&gt;
  
  
  Stop Burning Your AI Limits: A Token Diet for Long Coding Days
&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;A 3-tier framework for taming reasoning models, context bloat, and $50/1M output costs.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;You get access to Anthropic’s flagship Fable 5 (or whatever frontier reasoning model OpenAI just dropped this morning), fire up your editor, and start shipping with absurd momentum.&lt;/p&gt;

&lt;p&gt;Two hours in, the wall hits: &lt;strong&gt;&lt;code&gt;limit reached.&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It’s frustrating, expensive, and deeply embarrassing when you have to tell your team lead you can’t push code because your AI assistant is taking a mandatory union break.&lt;/p&gt;

&lt;p&gt;After spending a week pushing Fable 5 to its absolute limits, I realized you don’t need to cap your productivity, buy secondary accounts, or wait for weekly resets. You can easily code all day without ever touching that rate limit.&lt;/p&gt;

&lt;p&gt;The secret isn’t prompting harder — it’s understanding how next-gen reasoning models actually consume tokens, and adopting a ruthless habit of &lt;strong&gt;context hygiene&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Next-Gen Models Eat Your Budget Alive
&lt;/h2&gt;

&lt;p&gt;Before fixing the leak, you have to understand where the tokens are going. Modern reasoning models suffer from a three-way compounding cost problem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Asymmetric Pricing:&lt;/strong&gt; At $10/1M input and $50/1M output tokens, generating responses is 5x more expensive than feeding in context. Output is where budgets go to die.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unstoppable Reasoning Overhead:&lt;/strong&gt; Internal “thinking” tokens are hardcoded on. Every step the model ponders behind the scenes counts directly toward your output allowance. You’re literally paying for its internal existential crisis.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Invisible Resend Tax:&lt;/strong&gt; AI models don’t “remember” past turns. Every time you hit enter, your entire chat history, attached schemas, and system files are packaged up and sent right back through the wire.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you stack bloated config files, background MCP servers, and raw file dumps on top of that, your actual task gets squeezed into a tiny corner of the window while system bloat burns through your weekly cap.&lt;/p&gt;

&lt;p&gt;Here is the ROI-ordered framework to clean up your context window, optimize your model orchestration, and keep your dev flow uninterrupted all day long.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tier 1: High-Impact, Zero-Effort Wins (Behavioral Switches)
&lt;/h2&gt;

&lt;p&gt;These are instant habits with the highest token-preservation yield. Zero setup required.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Demand a Blueprint Before Execution (Plan First, Code Second)
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;The Single Highest-ROI Habit in Vibe Coding.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Never let a reasoning model raw-dog a complex refactor without a plan. If you tell an agent to “fix this state management bug” across 12 files, it will happily burn 15,000 output tokens generating broken code, realizing its mistake, and undoing its own work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Demand a plan first. “Write a 5-step blueprint for how you will refactor this. Do not write code yet.” Spending 300 tokens on a plan prevents a 15,000-token hallucinated refactor loop. It’s the difference between a surgical edit and a nuclear meltdown.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Kill the Monologue (Fresh Sessions)
&lt;/h3&gt;

&lt;p&gt;The second most expensive habit is keeping one mega-chat open for an entire working day.&lt;/p&gt;

&lt;p&gt;Remember the Resend Tax: asking “can you fix this typo?” at 4:00 PM on a morning thread means paying to re-send 80,000 tokens of morning context.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Treat chat sessions like disposable Kubernetes pods. Finished a discrete subtask? Hit &lt;code&gt;New Chat&lt;/code&gt; (or &lt;code&gt;/clear&lt;/code&gt; in CLI). Fresh context = fast answers = cheap tokens.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Drop the “Effort” Knob to Medium
&lt;/h3&gt;

&lt;p&gt;Next-gen reasoning models feature a built-in effort level parameter (ranging from &lt;code&gt;low&lt;/code&gt; to &lt;code&gt;max&lt;/code&gt;). The default setting is almost always set to &lt;code&gt;high&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;For 80% of routine engineering tasks, running at &lt;code&gt;max&lt;/code&gt; effort is like firing up a particle accelerator to microwave a hot dog.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Internal benchmarks on reasoning models show that dropping effort to &lt;code&gt;medium&lt;/code&gt; preserves near-identical task accuracy while reducing expensive output reasoning tokens by up to 76%.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Match the Payload to the Model
&lt;/h3&gt;

&lt;p&gt;Reaching for your premier flagship model for a quick regex check or a basic unit test is an insane waste of capital.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Haiku 4.5 / GPT-mini:&lt;/strong&gt; Repetitive tasks, small inline edits, quick search. (Dirt cheap)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sonnet 5 / GPT-5.2:&lt;/strong&gt; Your default daily driver for feature work and code generation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Opus 4.8 / GPT-Pro:&lt;/strong&gt; Heavy logical planning and complex system architecture.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fable 5 / GPT-6:&lt;/strong&gt; Reserved &lt;em&gt;exclusively&lt;/em&gt; for the 20% of problems that make you want to quit tech and start a lavender farm.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Use Static Workspaces (Projects / System Prompts)
&lt;/h3&gt;

&lt;p&gt;If you find yourself copy-pasting the same system architecture notes, coding standards, or API specs into every new session, you’re manually paying a redundant token tax.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Use the &lt;strong&gt;Projects&lt;/strong&gt; feature in web UIs or persistent system prompt files. Platforms cache static project background efficiently under the hood so you don’t pay full price to re-send foundational context on every prompt.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tier 2: Environment &amp;amp; Terminal Hygiene (Developer Tooling)
&lt;/h2&gt;

&lt;p&gt;If you’re using terminal agents like Claude Code, Cursor, or custom CLI toolsets, these fixes eliminate silent background token leaks.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Keep Config Files Slim (CLAUDE.md / System Specs)
&lt;/h3&gt;

&lt;p&gt;Config files like &lt;code&gt;AGENTS.md&lt;/code&gt; are silently prepended to every single API call. If your config file is an 800-line manifesto containing your entire company’s git branching strategy, you are burning cash on every keystroke.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Audit your config file. Keep it under 200 lines. Ask yourself for every line: “If I delete this, will the model actually break?” If not, purge it. Offload specialized rules into modular skills that only load when invoked.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Prune Inactive MCP Servers &amp;amp; Tool Schemas
&lt;/h3&gt;

&lt;p&gt;Model Context Protocol (MCP) servers are incredible, but they have a dirty secret: every connected server dumps its full tool schemas into the context window, even if you never use them.&lt;/p&gt;

&lt;p&gt;Four inactive MCP servers (e.g., Postgres, GitHub, Slack, Jira) can burn ~50,000 tokens before you even type “hello”.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Turn off servers you aren’t using right now (&lt;code&gt;/mcp disable&lt;/code&gt;). Less background schema noise = more context room for actual code.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Trigger Manual /compact Points
&lt;/h3&gt;

&lt;p&gt;Most CLI tools auto-summarize your chat when context gets full, but automatic compression usually happens at the worst possible moment — mid-task, wiping out crucial variables.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Take control of compression. Run &lt;code&gt;/compact&lt;/code&gt; manually at natural stopping points between features. Pass explicit instructions: &lt;code&gt;/compact keep the architecture decisions and state management bug context&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Point to File Paths, Don’t Dump Raw Blobs
&lt;/h3&gt;

&lt;p&gt;Pasting raw PDFs, massive log files, or high-res screenshots straight into context is a quick way to destroy your limit:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1 page of PDF text is 3,000 tokens easy.&lt;/li&gt;
&lt;li&gt;1 screenshot ~1,500 vision tokens.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Pass exact file path references (&lt;code&gt;src/components/Header.tsx:45&lt;/code&gt;) instead of pasting file contents. If dealing with documents, convert to plain text first. Text is cheap; vision is a luxury tax.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tier 3: Advanced Agentic Patterns &amp;amp; Architecture
&lt;/h2&gt;

&lt;p&gt;For multi-agent setups, heavy refactors, and power users who refuse to let rate limits dictate their work day.&lt;/p&gt;

&lt;h3&gt;
  
  
  10. The Orchestrator-Worker Pattern (Top Model Directs, Sub-Agents Execute)
&lt;/h3&gt;

&lt;p&gt;Stop making your $50/1M output reasoning model write boilerplate CSS or standard CRUD operations.&lt;/p&gt;

&lt;p&gt;Instead, turn your top model into an &lt;strong&gt;Orchestrator&lt;/strong&gt;. It designs the implementation plan and dispatches sub-agents (running Sonnet or Opus) to do the heavy lifting. The sub-agents burn cheap tokens writing code, and only return a concise summary back to the Orchestrator.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────┐
│    Orchestrator (Fable 5 / GPT-5.6)     │  &amp;lt;-- High Intelligence / Low Output
└────────────────────┬────────────────────┘
                     │ Dispatches Tasks
      ┌──────────────┼──────────────┐
      ▼              ▼              ▼
  ┌─────────┐   ┌─────────┐   ┌─────────┐
  │ Worker  │   │ Worker  │   │ Worker  │   &amp;lt;-- Cheap / Fast Models (Sonnet/mini)
  │ (Opus)  │   │ (Opus)  │   │ (Opus)  │       Heavy Code Generation Happens Here
  └────┬────┘   └────┬────┘   └────┬────┘
       │             │             │
       └─────────────┼─────────────┘
                     │ Returns Summaries Only
                     ▼
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Warning:&lt;/strong&gt; Multi-agent loops can consume tokens 15x faster if left unchecked. Always scope the team size to the task!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  11. Protect the Prompt Cache (Never Swap Settings Mid-Session)
&lt;/h3&gt;

&lt;p&gt;Prompt caching gives you up to a &lt;strong&gt;90% discount&lt;/strong&gt; on input tokens by reading pre-indexed context.&lt;/p&gt;

&lt;p&gt;However, switching models or altering effort parameters mid-session instantly invalidates the cache. The system is forced to re-read and re-index the entire history at 100% full price. Pick your model and effort level at the start of a thread and stick with them.&lt;/p&gt;

&lt;h3&gt;
  
  
  12. Work in Short Handoff Loops
&lt;/h3&gt;

&lt;p&gt;When a complex feature reaches 70% context capacity, don’t ride it into the ground until the model starts hallucinating.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt; Ask the model to generate a 20-line &lt;code&gt;handoff.md&lt;/code&gt; file summarizing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What was completed.&lt;/li&gt;
&lt;li&gt;Current state of the codebase.&lt;/li&gt;
&lt;li&gt;Next immediate steps.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Start a fresh session (&lt;code&gt;/clear&lt;/code&gt;), feed it &lt;code&gt;handoff.md&lt;/code&gt;, and keep shipping with a clean, lightning-fast context window.&lt;/p&gt;

&lt;h2&gt;
  
  
  Free: An Automated token-saver Skill
&lt;/h2&gt;

&lt;p&gt;Memorizing 12 rules while trying to meet a sprint deadline is annoying. So I built a lightweight, open-source skill called token-saver that handles this hygiene for you automatically.&lt;/p&gt;

&lt;h3&gt;
  
  
  What it does:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Audit Mode&lt;/strong&gt;: Scans your &lt;code&gt;CLAUDE/AGENTS.md&lt;/code&gt;, counts active MCP servers, evaluates your chat habits, and gives you a prioritized action plan.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Co-Pilot Mode&lt;/strong&gt;: Runs silently in the background, nudging you to clear chats between tasks, suggesting /compact calls at natural pause points, and preventing accidental raw file dumps.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  How:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open terminal
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   &lt;span class="nb"&gt;cd&lt;/span&gt; ~  &lt;span class="c"&gt;# or `cd %userprofile%`&lt;/span&gt;
   npx skills add weblegions/token-saver-skill-v3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and choose local install.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;tell your CLI agent: “Install the skill located in ~/.agents/skills/token-saver”. Using browser Web UIs? Simply upload the zip under Settings -&amp;gt; Skills.&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Now run it like&lt;/p&gt;

&lt;p&gt;&lt;code&gt;/token-saver audit&lt;/code&gt; &amp;lt;&amp;lt; run once to help you “clean” your project&lt;/p&gt;

&lt;p&gt;&lt;code&gt;/token-saver save&lt;/code&gt; &amp;lt;&amp;lt; run in the beginning of session&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;Surviving a long coding day on next-gen AI isn’t about paying for tier upgrades — it’s about respecting the physics of context windows.&lt;/p&gt;

&lt;p&gt;Plan before coding, keep your sessions short, prune background schemas, and let sub-agents do the heavy lifting. Adopt these 12 habits, install the skill, and you’ll never see the dreaded limit reached screen again. Now go ship some code.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Would love your perspective on this.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>vibecoding</category>
      <category>agents</category>
      <category>tokenomics</category>
      <category>coding</category>
    </item>
    <item>
      <title>How to Make Your Data Science Project the Beyoncé of the Boardroom</title>
      <dc:creator>eram</dc:creator>
      <pubDate>Wed, 10 Sep 2025 08:49:25 +0000</pubDate>
      <link>https://dev.to/eram/how-to-make-your-data-science-project-the-beyonce-of-the-boardroom-47kj</link>
      <guid>https://dev.to/eram/how-to-make-your-data-science-project-the-beyonce-of-the-boardroom-47kj</guid>
      <description>&lt;p&gt;&lt;em&gt;(…and not another sad statistic in a Gartner report)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Gartner just dropped another &lt;a href="https://www.gartner.com/en/newsroom/press-releases/2025-06-25-gartner-predicts-over-40-percent-of-agentic-ai-projects-will-be-canceled-by-end-of-2027" rel="noopener noreferrer"&gt;sobering forecast&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;by 2027, more than 40% of agentic AI projects will be scrapped — victims of ballooning costs, intangible ROI, and governance headaches.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Here’s the thing: success in data science isn’t about dodging failure; it’s about designing your process so that success becomes the default setting. That means setting goals that actually make sense, being brutally honest about what AI can and can’t do for your business, planning like you’re building a rocket, treating your data like royalty, modeling with discipline, building apps that can take a punch, and never — &lt;strong&gt;ever&lt;/strong&gt; — taking your eyes off the ball once you launch.&lt;/p&gt;

&lt;p&gt;In this post, I’ll break down each of those moves into practical, field‑tested steps. Nail them!&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Set Your Business Objective Like a Pro
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - When “Perfect” Became the Problem&lt;/strong&gt;&lt;br&gt;
A fintech startup proudly declared their goal: “Zero fraud.” Noble? Sure. Achievable? About as likely as finding a parking spot in downtown Boston at 6 p.m. Within weeks, they were rejecting half their legitimate customers. Fraud rates dropped, but so did revenue — and customer goodwill. The pivot — “reduce fraud by 40% while keeping approval rates above 90%” - turned them from villains into heroes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Setting moon‑shot goals like “100% accuracy,” “no false positives,” or “Chat itself is the product,” without defining a deliverable or business value.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Wins&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Write your goal in plain business language so anyone - from your CFO to your intern - can understand it.&lt;/li&gt;
&lt;li&gt;Attach a number and a time frame: “increase retention by 15% in six months” beats “make customers happier.”&lt;/li&gt;
&lt;li&gt;Tie the metric directly to revenue, cost savings, or risk reduction so it matters to decision‑makers.&lt;/li&gt;
&lt;li&gt;Pressure‑test the goal with a “what if” scenario — if hitting it would break another part of the business, it’s not the right goal.&lt;/li&gt;
&lt;li&gt;Keep a “goal sanity” checklist and revisit it quarterly to make sure you’re still solving the right problem.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Be Realistic (But Still Dreamy)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - The Dashboard That Paid the Bills&lt;/strong&gt;&lt;br&gt;
A retail chain wanted “AI that predicts fashion trends” — the kind of moonshot that looks great in a pitch deck. Three months later, they realized the real money was in predicting inventory shortages. Less sexy, more profitable. Their “trend predictor” became a humble dashboard that saved millions in lost sales — and nobody cared that it didn’t make the cover of Wired.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Pretending your core product is AI when it’s actually a food delivery app, a laundry service, or a retail chain.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Moves&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Audit your current processes and find the bottlenecks or blind spots AI could fix.&lt;/li&gt;
&lt;li&gt;Prioritize use cases that improve existing revenue streams before chasing “industry disruption.”&lt;/li&gt;
&lt;li&gt;Celebrate unglamorous wins — the boring stuff often pays the biggest bills.&lt;/li&gt;
&lt;li&gt;Keep the “dream” projects in a sandbox until the basics are delivering measurable ROI.&lt;/li&gt;
&lt;li&gt;Build a roadmap that layers quick wins first, then progressively more ambitious projects.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzqyeza8fl37y1e5v357d.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzqyeza8fl37y1e5v357d.webp" alt="No, Yolo! This is not a dog!" width="526" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;center&gt;&lt;small&gt;
No, Yolo! This is not a dog!
&lt;/small&gt;&lt;/center&gt;

&lt;h2&gt;
  
  
  3. You Need a Team to Build a Rocket to Mars (Because You Kind of Are)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - A Pregnancy Problem&lt;/strong&gt;&lt;br&gt;
A healthcare AI project was meant to flag “high risk” patients. But skipping domain experts in the planning phase, the model ended up flagged “high risk” patients… who were actually just pregnant. Without someone who understands the data’s context, your “life‑saving” model can become a very expensive pregnancy test.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Missing diversity in the team, underestimating dataset work, rushing timelines.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Success&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ensure every project team has at least one domain expert who can sanity‑check assumptions and understand the data.&lt;/li&gt;
&lt;li&gt;Budget 80% of your timeline for data collection, cleaning, and labeling - it’s not glamorous, but it’s where the magic happens.&lt;/li&gt;
&lt;li&gt;Set delivery dates based on realistic estimates, not investor‑friendly fantasies.&lt;/li&gt;
&lt;li&gt;Build in checkpoints where the team can pause and reassess before committing to the next phase.&lt;/li&gt;
&lt;li&gt;Document every assumption so you can revisit and adjust them as you learn.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  4. Treat Your Data Like a VIP Guest
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - When Cats Became Guitars&lt;/strong&gt;&lt;br&gt;
An image‑classification project trained on photos where cats happened to be sitting next to guitars. The label? “Guitar.” The result? Every cat became a guitar. Technically “accurate,” but useless.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Too little data, dirty data, missing field data, or mislabeled examples that poison the model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Take&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Run automated checks for missing values, duplicates, and inconsistent labels.&lt;/li&gt;
&lt;li&gt;Have humans spot‑check random samples for labeling, sanity - machines can’t catch every nuance.&lt;/li&gt;
&lt;li&gt;Test your model against adversarial examples - like an apple with “iPod” taped to it - before shipping.&lt;/li&gt;
&lt;li&gt;Keep a “data hygiene” log so you can trace and fix issues quickly when they pop up.&lt;/li&gt;
&lt;li&gt;Establish a recurring “data audit day” where the team reviews and cleans the dataset.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm96e4q5c54mvcz5lc77z.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm96e4q5c54mvcz5lc77z.webp" alt="Attack on an apple" width="799" height="234"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;center&gt;&lt;small&gt;
Attack on an apple
&lt;/small&gt;&lt;/center&gt;

&lt;h2&gt;
  
  
  5. Model Like You Mean It
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - Lost in Translation&lt;/strong&gt;&lt;br&gt;
A social media sentiment model trained only on X (aka Twitter) slang failed miserably on LinkedIn posts. “Crushing it” meant “awesome” on X, but on LinkedIn it often meant “burnout incoming.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Jumping to conclusions, skipping cross‑validation, choosing algorithms heavier than your infrastructure can handle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Playbook&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Always split your data into training, validation, and test sets - and actually use them.&lt;/li&gt;
&lt;li&gt;Match algorithm complexity to your deployment environment. A 200‑layer neural nets inside a mobile app — no!&lt;/li&gt;
&lt;li&gt;Test on data from different sources to catch context‑drift issues early.&lt;/li&gt;
&lt;li&gt;Monitor for model decay and retrain before performance drops below acceptable thresholds.&lt;/li&gt;
&lt;li&gt;Keep a “model graveyard” of past experiments so you don’t repeat mistakes.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  6. Build Applications That Can Survive the Real World
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case - The Chatbot That Went Rogue&lt;/strong&gt;&lt;br&gt;
An AI chatbot launched without proper safeguards. Within 24 hours, it was spewing offensive content because users figured out how to “train” it in real time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: No safeguards, scaling issues, switching to auto‑pilot too soon, not preparing for attacks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Edge&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Simulate hostile user behavior before launch to see how your system reacts.&lt;/li&gt;
&lt;li&gt;Keep a human review step in place until the model has proven itself in production.&lt;/li&gt;
&lt;li&gt;Add anomaly detection and rate‑limiting to prevent abuse at scale.&lt;/li&gt;
&lt;li&gt;Maintain a rapid‑response plan for rolling back or disabling features if something goes sideways.&lt;/li&gt;
&lt;li&gt;Train your ops team to recognize and respond to early warning signs of failure.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfcu7fjh2ewaajpx28sk.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfcu7fjh2ewaajpx28sk.webp" alt="Now with extra seamlessness — — who needs visible craft?" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;center&gt;&lt;small&gt;
Now with extra seamlessness — — who needs visible craft?
&lt;/small&gt;&lt;/center&gt;

&lt;h2&gt;
  
  
  7. Monitor, Measure, Optimize — Forever
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Field Case&lt;/strong&gt; - The Three‑Minute Ride That Wasn’t&lt;br&gt;
A ride‑sharing app’s ETA model started showing “3 minutes” for every ride, no matter the distance. Passengers were thrilled for about 30 seconds — until they realized the number never changed. Drivers were confused, support tickets piled up, and social media had a field day. The culprit? A server clock drifted by 17 minutes, throwing off the calculations. Monitoring caught it — but only after a week of chaos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old Fail&lt;/strong&gt;: Assuming it just works, missing KPIs, skipping A/B testing, ignoring real‑user feedback.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your Levers&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Define success metrics before launch and track them continuously.&lt;/li&gt;
&lt;li&gt;Run A/B tests on model updates to measure real‑world impact.&lt;/li&gt;
&lt;li&gt;Collect and act on feedback from actual users, not just your dev team.&lt;/li&gt;
&lt;li&gt;Set up alerts for anomalies so you can fix issues before they become PR disasters.&lt;/li&gt;
&lt;li&gt;Conduct consistent "postmortems" on both successes and setbacks to continue learning.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F26vmxhkklnzqxasgzl6y.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F26vmxhkklnzqxasgzl6y.webp" alt="Google Translate doing its best at speaking Hausa" width="636" height="237"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;center&gt;&lt;small&gt;
Google Translate doing its best at speaking Hausa
&lt;/small&gt;&lt;/center&gt;

&lt;h2&gt;
  
  
  Final words
&lt;/h2&gt;

&lt;p&gt;This post is a re‑imagining of &lt;a href="https://www.slideshare.net/slideshow/why-so-many-data-science-projects-fail-112757707/112757707" rel="noopener noreferrer"&gt;a lecture I first gave back in 2019&lt;/a&gt;. Strangely enough, the challenges - and the remedies - have outlived the seismic shifts brought on by the rise of LLMs. The tech has evolved, the buzzwords have changed, but the fundamentals still decide who wins and who flames out. Get those fundamentals right, and your project won’t just survive. It’ll headline the main stage, strut in the spotlight, and have the whole boardroom singing along. 🙂&lt;/p&gt;

&lt;p&gt;In a follow‑up post, I’ll dive deeper into my latest AI/LLM reflections - what’s changed, what hasn’t, and where I think the next big wins will come from. Stay tuned.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Originally posted &lt;a href="https://itnext.io/how-to-make-your-data-science-project-the-beyonc%C3%A9-of-the-boardroom-c1cb8a9681ba" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>devjournal</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Vibe Coding from the Trenches</title>
      <dc:creator>eram</dc:creator>
      <pubDate>Wed, 14 May 2025 08:39:28 +0000</pubDate>
      <link>https://dev.to/eram/vibe-coding-from-the-trenches-446</link>
      <guid>https://dev.to/eram/vibe-coding-from-the-trenches-446</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;“I see you’re trying to show me the contents of that file, but it appears to be empty. Ah, now I see the issue. Let me try a different approach to debug this…”&lt;br&gt;
— Cursor Agent 250511.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Alright, intro!
&lt;/h2&gt;

&lt;p&gt;Let’s talk about the latest ripple making waves across the tech pond. You probably caught the buzz last week when Shopify’s CEO, Tobi Lütke, dropped an &lt;a href="https://x.com/tobi/status/1909251946235437514" rel="noopener noreferrer"&gt;internal memo&lt;/a&gt; that basically set a new baseline: &lt;strong&gt;using AI isn’t just encouraged anymore, it’s practically expected.&lt;/strong&gt; The memo even suggested teams need to justify not using AI before asking for more resources or headcount. Forbes quickly jumped on this, slapping a catchy (and maybe slightly terrifying?) &lt;a href="https://www.forbes.com/sites/josipamajic/2025/04/08/hire-ai-not-humans-shopify-ceos-radical-mandate-catching-vc-attention/" rel="noopener noreferrer"&gt;“Hire AI, Not Humans”&lt;/a&gt; headline on it.&lt;/p&gt;

&lt;p&gt;Now, before we dive deep, let’s be clear: this isn’t another think piece about the grand future of AGI, whether LLMs will pass the Turing test next Tuesday, or how the job market is going to morph entirely (though, yeah, those are big questions!).&lt;/p&gt;

&lt;p&gt;Instead, I want to zoom in on something super relevant to those of us actually &lt;em&gt;building&lt;/em&gt; things: the hype around &lt;strong&gt;Agentic Coders&lt;/strong&gt;, or “&lt;strong&gt;Vibe Coding&lt;/strong&gt;” as it is now tredy to call it. The promise is seductive, right? If AI can whip up graphics, translate languages on the fly, or slash presentation prep time, surely it can handle software engineering? Can startups really run lean with 5 devs instead of 50, like some breathless posts suggest? And personally, as an engineer, is this the silver bullet that finally unlocks that &lt;a href="https://medium.com/ingeniouslysimple/the-origins-of-the-10x-developer-2e0177ecef60" rel="noopener noreferrer"&gt;mythical “10x developer”&lt;/a&gt; status we all heard about?&lt;br&gt;
(Co-pilot won’t let you create Studio Ghibli style illustrations any longer, but ChatGPT still does…)&lt;br&gt;
Here we go: My Reality Check on “Vibe Coding”&lt;/p&gt;

&lt;p&gt;To find out, I rolled up my sleeves and spent the last couple of months putting &lt;strong&gt;six different Vibe Coding products&lt;/strong&gt; through their paces on real work. Here’s the lowdown from the trenches:&lt;/p&gt;

&lt;h3&gt;
  
  
  The Not-So-Groovy Parts (Where the Vibe Gets Weird):
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hallucination Station&lt;/strong&gt;: Oh boy. I saw AI agents confidently referencing libraries that simply don’t exist, either in my codebase or anywhere on npm/PyPI/etc. They’d suggest calling phantom methods on perfectly good, existing libraries. They even started inventing configuration keys in my YAML and JSON files like they were writing avant-garde poetry for my linters.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fantasy Code Chronicles&lt;/strong&gt;: In one memorable instance, the agent decided the best way to parse something was with a complex regex. Anyone who’s wrestled with parsing knows: that’s usually a job for a lexer/parser combo. It wasn’t just suboptimal; it was the wrong tool for the job.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Regex Roadblock &amp;amp; Model Hopping&lt;/strong&gt;: Speaking of regex, another time, the agent wrote flawed regex pattern… and then got completely stuck trying to fix its own mistake. I eventually had to switch to a different AI model (looking at you, o3-mini) just to get past it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The “Ship It” Temptation&lt;/strong&gt;: This is a sneaky one. The AI spits out code that looks plausible. It’s super tempting for a dev (especially one under pressure) to just grab it and move on without truly understanding the how or why. That’s tech debt waiting to happen, and good luck debugging it later if you didn’t grasp it initially.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Code Quality — Duplication Drama&lt;/strong&gt;: I saw the same logic rewritten multiple times in slightly different ways, leading to classic code duplication. Not exactly DRY (Don’t Repeat Yourself).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Code Quality — Junior Moves&lt;/strong&gt;: Experienced devs spend tons of time refactoring, generalizing, using inheritance, tweaking existing functions and classes. The agents? They often behaved like enthusiastic junior devs, preferring to “invent the world” by writing brand new code for every little thing instead of building smartly on what’s already there.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Silent Breaking Changes&lt;/strong&gt;: One agent tweaked my Linter config. Seemed innocent enough, until I realized it necessitated small, annoying changes across the entire codebase. And the agent? Blissfully unaware of the ripple effect it caused.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Library Loyalty Issues&lt;/strong&gt;: I use a specific, slightly less common open-source library (&lt;a href="https://deepkit.io/documentation/runtime-types" rel="noopener noreferrer"&gt;deepkit/types&lt;/a&gt;). The agent seemed determined to either replace it entirely or just ignore it, defaulting to more mainstream choices like Joi or even React libraries (in a backend context!). This got really obvious when there was a bug — instead of fixing the code using my preferred library, it just rewrote the whole section using a different library. Not helpful!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security? What Security?&lt;/strong&gt;: This was genuinely concerning. Agents generated code that introduced vulnerabilities — specifically, forgetting to add input validation for data coming from external sources and neglecting to implement authorization checks on newly created API endpoints. Yikes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lost in Translation (Jargon &amp;amp; Ambiguity)&lt;/strong&gt;: I often slipped up, using slightly “wrong” or ambiguous terms in my prompts. Asking for changes related to a ‘privilege’ when my code uses the term ‘permission’. Mentioning ‘swagger’ instead of the precise ‘OpenAPI’. Using internal shorthand like ‘CVE’ interchangeably with ‘vulnerability’ or ‘weakness’. A human teammate, even a junior one, would likely pause, ask for clarification, or realize a simple request shouldn’t require building a whole new universe of code. The agent? It often went full bazooka, interpreting a minor tweak request as a signal to construct entirely new models and libraries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Ripple Effect (also a Lost in Translation)&lt;/strong&gt;: Tools like Morph.ai promise seamless integration, letting agents act directly on JIRA tickets. Cool concept, but now your Product Managers and Business Analysts need to be super precise with their language, basically speaking the same internal dialect as your codebase. If a PM writes a story about changing a ‘product’ but your system calls it a ‘catalog ID’, the agent might get hopelessly confused or build the wrong thing entirely.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Honestly? There were definitely moments I felt like I was wasting more time, painstakingly explaining the requirements, trying to guide the refactoring process, pointing out missed edge cases. Absolutely had a few “why didn’t I just write this myself?!” &lt;a href="https://thoughtworks.medium.com/https-www-thoughtworks-com-insights-blog-generative-ai-claude-code-codeconcise-experiment-b3b1f31d718c" rel="noopener noreferrer"&gt;breakdowns&lt;/a&gt;, cursing the digital void.&lt;/p&gt;

&lt;p&gt;And yeah, you could argue that some of these issues — misunderstanding requirements, needing guidance on refactoring — sound like onboarding a new human team member. True! But here’s the kicker: the agent delivers its answers with absolute, unwavering confidence. It never doubts itself. Imagine having a teammate who knows they’re right, even when they’re completely off-base. Annoying, right? You wouldn’t want that vibe on your team.&lt;/p&gt;

&lt;h2&gt;
  
  
  But What About Those Slick Demos?
&lt;/h2&gt;

&lt;p&gt;We’ve all seen them — those &lt;a href="https://www.youtube.com/watch?v=BOpX2VYNofA" rel="noopener noreferrer"&gt;mind-blowing demos&lt;/a&gt; from tools like v0 or Lovable, where an entire app seemingly springs into existence from a simple prompt. And yes, they are awesome! For whipping up a quick prototype, testing a small concept, or scaffolding something based on simple templates, they can definitely work and speed things up.&lt;/p&gt;

&lt;p&gt;But scaling that to a real-world, production-grade application? One with multiple microservices, hundreds or thousands of files, strict linting rules, established coding patterns, and specific company best practices? Sorry, but we’re not there yet. Check back next year, maybe?&lt;/p&gt;

&lt;h2&gt;
  
  
  Performance Puzzles:
&lt;/h2&gt;

&lt;p&gt;Can these agents help optimize algorithms or find performance bottlenecks? Sometimes, maybe. They might point you in a vaguely correct direction. But just as often, I found they’d latch onto my (potentially) flawed hunch and dig the rabbit hole even deeper, suggesting ineffective fixes or repeating suggestions I’d already ruled out.&lt;/p&gt;

&lt;h2&gt;
  
  
  Okay, Okay — FOCUS! Where Does Vibe Coding Actually Shine?
&lt;/h2&gt;

&lt;p&gt;It’s not all &lt;a href="https://news.ycombinator.com/item?id=43448432" rel="noopener noreferrer"&gt;doom and gloom&lt;/a&gt;! Based on my experiments, these tools are genuinely useful for specific tasks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Unit Test Automation&lt;/strong&gt;: This is a big one. Pointing an AI at existing code and asking it to generate unit tests? It’s often surprisingly good at this, saving a ton of boilerplate time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Refactoring Assistance (with Guardrails)&lt;/strong&gt;: Once you have those solid tests, AI can be a great partner in refactoring older, gnarlier code. It can help explain undocumented logic and then assist in rewriting it using more modern approaches. Crucially, the tests keep it honest.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reducing Handoff Friction&lt;/strong&gt;: Need to jump into a part of the codebase you’ve never touched before? An AI agent can help you add small features or make targeted changes without needing a deep, upfront understanding of the entire module. Think code bits, not massive features.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Language Learning Accelerator&lt;/strong&gt;: If you’re a JavaScript pro needing to dabble in Java (or vice-versa), these tools are fantastic tutors, helping you translate concepts and syntax quickly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated Code Review Buddy&lt;/strong&gt;: When you think your code is ready, running it past an AI reviewer can surface genuinely insightful suggestions for improvement, catching things you might have missed. Like, 25% good suggestions and 75% nagging. But still.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skip Google and forget Stack Overflow&lt;/strong&gt;. This one is 75% good for the Viber. If you know what your question should be, it will give you a concise answer, spearing you from endless scrolling on the internet.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Bottom Line: Peer Programmer, Not Replacement (Yet?)
&lt;/h2&gt;

&lt;p&gt;Let’s crunch some rough numbers. Assume a developer spends about 5 hours a day actually heads-down coding (the rest is meetings, design, reviews, learning, lunching etc.). If AI tools make that coding time, say, 30% more efficient — which feels plausible to me — that translates to roughly a 15–20% overall productivity boost for a typical developer.&lt;/p&gt;

&lt;p&gt;That’s &lt;strong&gt;huge&lt;/strong&gt;! It’s a significant improvement and absolutely justifies Tobi Lütke’s stance that reflexive AI usage should be the baseline.&lt;/p&gt;

&lt;p&gt;But does it mean we’re replacing devs wholesale or creating legions of 10x engineers overnight? &lt;strong&gt;Nope&lt;/strong&gt;. &lt;a href="https://www.lesswrong.com/posts/4mvphwx5pdsZLMmpY/recent-ai-model-progress-feels-mostly-like-bullshit" rel="noopener noreferrer"&gt;Not anytime soon&lt;/a&gt;. It’s powerful augmentation, a new tool in the belt that makes good developers better and faster at certain things. It helps, it assists, it speeds up knowledge building. But the human element — the critical thinking, the architectural vision, the nuanced understanding of requirements, the collaborative problem-solving, the ability to doubt and question — remains absolutely essential.&lt;/p&gt;

&lt;p&gt;So yeah, embrace the AI assistants. Expect them to be part of the workflow. But keep your brilliant human developers close — you’re going to need them more than ever to wield these powerful new tools effectively.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>vibecoding</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
