开发者审阅 AI 生成的初稿并划清责任边界

Lately, one question keeps coming up while I work on my projects: how much should I actually lean on AI for coding?

I don't mean the big "will AI replace programmers" debate. I mean something much more practical: for the task in front of me today, should I hand it off to AI, or do I need to keep a close eye on it myself?

These days I work full-time on my own products and content, and I take on some custom software work too. My day-to-day is building real projects alongside AI agents like Claude, Codex, and Hermes. Take MakanCloud, my restaurant SaaS: ordering, central kitchen, delivery, staff scheduling, POS, QR-code ordering. A lot of those modules I've pushed forward on my own, step by step, with AI in the loop.

The more I use it, the more convinced I am that the value of AI coding isn't that it's "magic." It's that it takes the parts of the job that used to eat up tons of time and makes them manageable and easy to iterate on.

1. AI is great at turning a blank page into a first draft

AI turns a blank page into a first-draft structure you can edit and verify

The most painful moment in writing code often isn't optimization. It's starting from zero.

How to set up an endpoint, how to read a config, how to get a script running, how to kick off a test file. None of this is necessarily hard, but getting started takes a lot of energy.

Now I just ask AI to give me a rough structure first. It's rarely perfect, but once there's a first version, I can start cutting, tweaking, asking follow-up questions, and verifying.

For indie developers this is huge. When you're building a product solo, you're the backend, the frontend, ops, docs, and debugging all at once. If every one of those starts from a blank page, the startup cost alone can grind you down.

What AI really solves here is getting me into "review and decide" mode faster, instead of being stuck on "where do I even begin."

2. AI is also great at the tedious stuff

Here's what I regularly hand off to AI:

  • Explaining code I haven't looked at in a while
  • Mapping out which call chains a bug might be passing through
  • Filling in edge cases for test coverage
  • Turning feature changes into docs or release notes
  • Checking for obvious gaps in error handling and config

It's not that I couldn't do these before. I just tended to put them off, because they take patience and a lot of jumping back and forth between files.

That's exactly where AI shines: it never gets bored, it'll check things over and over, and it helps me lay all the scattered pieces out on the table.

But I don't take its conclusions at face value. Especially on real projects, I treat it as a reminder system, not a referee.

3. Requirements and business judgment can't be outsourced

Building MakanCloud really drove this home for me.

A restaurant system isn't done just because the pages look nice and the API works. In a real restaurant, staff are slammed, the Wi-Fi can be flaky, the printer might drop offline, and a single extra step in a workflow can make or break whether people actually use it.

AI doesn't have that on-the-ground feel.

It can write me an order state machine, but it can't tell me whether that state design is right. It can generate an admin page, but it can't tell me what the owner, the front-of-house staff, and the kitchen each actually need to see. It can optimize my code, but it can't understand why a certain feature absolutely has to stay simple.

So figuring out requirements, making workflow trade-offs, and setting product priorities are on me.

4. Security, architecture, and shipping are my responsibility

The developer personally handles sensitive info and pre-launch delivery checks

There are also some things I'm just not comfortable letting AI decide on its own.

Production credentials, customer data, server details: none of that should be casually dropped into a prompt. Same goes for architecture trade-offs. Do I ship fast first, or leave room to scale? Where is it fine to keep things simple, and where does it need to be solid from day one?

Those calls aren't about coding skill. They're about responsibility.

Code that runs isn't the same as code that's ready to ship. Testing, builds, rollback plans, monitoring, error handling before launch: at the end of the day, I'm the one who has to sign off on all of it.

AI can help me move faster, but it can't take the fall for me.

My takeaway

Here's how I think about AI coding now:

AI is a highly productive teammate, not the person who's ultimately accountable.

What I hand off to it: drafting, organizing, explaining, filling gaps, reviewing. What I keep for myself: requirements, architecture, security, and responsibility for delivery.

Once that line is clear, it actually becomes way more useful. I've stopped expecting it to nail the perfect answer in one shot. Instead, I've built it into my workflow so it helps me move real products forward faster.

If you're coding with AI too, try making your own list: which tasks can AI take a first pass at, and which ones do you need to make the call on yourself?

I'll keep sharing how I use AI to build real projects. If you're into AI coding workflows, restaurant tech, or custom software, drop a comment and let's chat.