PostHole
Compose Login
You are browsing us.zone2 in read-only mode. Log in to participate.
rss-bridge 2026-02-28T13:00:00+00:00

7 AI coding techniques I use to ship real, reliable products - fast

What separates casual vibe coders from the elite builders? It's not prompts. It's systems. Here's the exact framework I use.


Innovation

Innovation

Artificial Intelligence

7 AI coding techniques I use to ship real, reliable products - fast

What separates casual vibe coders from the elite builders? It's not prompts. It's systems. Here's the exact framework I use.

Written by
David Gewirtz, Senior Contributing Editor
Senior Contributing Editor
Feb. 28, 2026 at 5:00 a.m. PT

[digital transformation concept]

Vertigo3d / iStock / Getty Images Plus*

Follow ZDNET: Add us as a preferred source on Google.


ZDNET's key takeaways

  • Treat the AI like another developer, not a magic box.
  • Encode design systems and user profiles in system prompts.
  • Every fixed bug becomes a permanent lesson learned in the project's DNA.

Ever since the days of punched cards, I've self-identified as a programmer and a computer scientist. The programmer side is the practical side of my engineering identity, the person who crafts code line by line. The computer scientist is the theoretician, the scientist, the strategist, and the planner.

While I love the theory and science of computers, I've always enjoyed the hands-on feeling of cutting code. I think it's probably akin to how some woodworkers prefer hand tools over power tools for the visceral feel of working with wood.

Also: Is Perplexity's new Computer a safer version of OpenClaw? How it works

Unfortunately, I've never had much time to code. My day-to-day job has been as a company executive, founder, educator, and writer. I do love making software products, but I've never managed to get more than one small product done each year, using little bits of available nights and weekend time.

All that changed this past September. That's when I started using agentic vibe coding tools, such as OpenAI's Codex and Claude Code.

Since September, I've built and shipped four major products (WordPress security add-ons), built a working iPhone app for managing 3D printer filament, and am close to having a beta of an app my wife requested for managing sewing patterns. These last two are being built simultaneously for iPhone, iPad, Apple Watch, and Mac.

As a sole coder, agentic AI has been a force multiplier of almost breathtaking capability.

Also: I got 4 years of product development done in 4 days for $200, and I'm still stunned

In this article, I'm going to take you through seven best practices I use. These practices help me work with AI as a partner, and generate products of a quality suitable for production use. At the end, I'll also share a bonus best practice that comes in handy more often than you might expect.

This is vibe coding. But it's vibe coding with engineering discipline, and an underlying framework designed for robustness and product quality. If you want to use AI to build your apps, follow these best practices.

Primary practice: Written instructions

The items listed below are specific, deliberate practices. Each one comes from something I purposely built into my workflow.

The way I make these practices stick is I've added them to the "ini" files for the AIs, the CLAUDE.MD and AGENTS.MD files. I've also added other files used to document the project itself. I'll describe those in more depth as you read the rest of this article.

Also: 10 ChatGPT Codex secrets I only learned after 60 hours of pair programming with it

Let's start with my first best practice, codified when I found that agent behavior in Xcode was unreliable for multiple parallel processes.

Definitely keep reading until the end, because the aforementioned bonus best practice can be a real game-changer.

1. Sequential visibility over parallel speed

The AI companies are touting the new ability to run multiple agents in parallel. However, it's very difficult to manage multiple agents running in parallel, especially when you can't see what they are all doing.

Worse, I found that this approach causes crashes and hangs, leaving projects in limbo. Until this becomes a manageable and visible technique, I only want to run one agent at a time.

Also: 10 things I wish I knew before trusting Claude Code to build my iPhone app

Manageability must take precedence over speed, especially when the AIs hide so much more of what you'd normally see line by line if you were coding it all yourself.

My rule: "Do NOT use background agents or background tasks. Do NOT split into multiple agents. Process files ONE AT A TIME, sequentially. Update the user regularly on each step." In this rule, "the user" is me, since it's an instruction to the AI about its own usage.

Why it's elite: I learned this the hard way. Claude seemed to like launching parallel agents in Xcode. But after a few times when one or more parallel agents got stuck, became unresponsive, had to be killed, and left the codebase changes half-finished and in an indeterminant state, I got fed up.

The principle: I chose slower but visible over faster but opaque. Yes, I'll admit that waiting for the AI can get tedious. But I'll take predictability and recoverability over rash speed every time.

2. Migration tracking as a first-class artifact

My two Apple projects are being built for four platforms each: Mac, iPhone, Watch, and iPad. The capabilities and interfaces of these devices are quite different, especially for my apps that rely on NFC (available only on the iPhone) and other features that are most appropriate for different platforms.

For example, in the sewing pattern app, there's a very powerful AI component for scanning and categorizing PDFs imported from the Mac's file system, which is a workflow less likely to be used on an iPhone.

Also: AI agents are fast, loose, and out of control, MIT study finds

The challenge here is that when I'm working on one platform, I don't want to lose track of changes for the others. So I have details about migrating platform-wide changes. These details are specifically encoded as an artifact that can be observed, tracked, and referenced.

My rule: "Every time you make a change to an app that would also need to be applied to iOS, iPad, Mac, or Watch apps, log it in Docs/IOS_CHANGES_FOR_MIGRATION.md. Include: date, files changed, which platforms it applies to, what specifically changed (old to new values, code snippets if helpful), any notes about platform-specific adaptations completed and/or needed."

[...]


Original source

Reply