DEV Community

Cover image for Don't Be a Proxy Between Me and Your AI
Adam - The Developer ✨
Adam - The Developer ✨

Posted on

Don't Be a Proxy Between Me and Your AI

Readers debate using AI as a communication shield

I've had this conversation more times than I'd like to admit.

I raise a technical question in a thread, a meeting, or a design review and someone responds with a long, well-structured, suspiciously balanced answer. It has headers in spirit if not in format, it covers 3 tradeoffs and ends with a neat recommendation.

I push back on one point. Silence for a minute, the kind where you can practically hear a browser tab switching. Then another equally polished paragraph appears, answering my pushback.

At some point it kinda gives: I'm not talking to a colleague. I'm talking to a chat window with a human-shaped copy-paste button attached.

please stop doing that, I'm practically begging you.

I Can Open a Browser Too

Let me say the obvious thing first. If I wanted to debate an AI, I'd debate an AI. I can type a question into ChatGPT, Claude, or whatever else is in vogue this week. It takes me 10 seconds, and I'd get to skip the middleman. Right now you're less a colleague and more a loading spinner with a LinkedIn profile.

When I bring a technical question to you, I’m asking for your judgment. What you’ve seen work, what you’ve watched fail, and what taught you the difference. I want to know which tradeoffs you’d accept, which assumptions you’d challenge, and why. That’s the experience I’m interested in hearing.

The moment you become a pass-through, I lose all of that. I'm getting generic output with your name on it, and you've added latency to the conversation without adding anything else. Congratulations, you've invented the world's slowest API wrapper.

"But I'm the Decision-Maker"

This is the one that really gets me.

The pitch goes like this: in the AI era, the developer's job is to be the "architect". The AI generates the options, the human decides. You're like the guardrail, the one with taste.

Fine model. I think it's genuinely where a lot of the job is heading.

But a decision-maker who agrees with the AI's recommendation 99% of the time isn't deciding anything. That's a rubber stamp with a job title. If your "decisions" are indistinguishable from the model's default output, then you haven't added a layer of judgment, you've just added a layer of delay.

So here's a simple test: can you name a recent time you disagreed with the AI, and why? Not "I tweaked the formatting." A real disagreement, grounded in something the model couldn't know, like a constraint, a past incident, or a team preference.

If you can't, you're not the guardrail. You're the passenger and you didn't even pick the playlist.

I have a good, real example of this:

Someone messaged me on LinkedIn, saying they were interested in learning how I approach problems in distributed systems. I'll be honest: that's the kind of message that makes my day. A person wants to talk shop, and wants my thinking.

So I engaged. I walked through how I reason about failure modes and where I start when things go inconsistent and we went back and forth for a while.

Then I found out they'd been using an AI to debate me the whole time. They hadn't come to learn from me at all. They'd come to argue with me through a proxy.

And here's the thing: I debate AI every day. By choice, on my own terms, whenever I feel like it. That part is easy to get. What's rare is another human being who's actually willing to sit in the conversation, think out loud, be wrong in front of me, and push back with their own head.

If they'd just asked me their own half-formed questions, I'd have answered them all day.

"Whatever the AI Said Is What I Agree With"

This is the response I get when I ask the follow-up: "What's the point of discussing this if your brain isn't the one engaging?"

"Oh, well, it's what I agree with anyway."

Bold of you to agree so passionately with a position you didn't form.

Agreement without understanding is not the same as agreement. If I ask why you agree and the honest answer is "because it said so and it sounded right," then you don't hold a position but a borrowed one.

And borrowed positions collapse under the first real question, like a Jenga tower in a minor earthquake. I wrote about this before: reading something and nodding is not the same skill as being able to produce or defend it. A discussion is exactly the situation that exposes the gap, which is why it matters.

And about the "I'm verifying the output" defense: verification is real work. It means checking claims against reality, testing assumptions, and spotting what's subtly wrong. If your verification consists of reading the answer and thinking "yep, sounds right," that's not a guardrail, that's reading. A guardrail that never catches anything is just a decorative pool noodle.

"I Don't Have Time, I'm Busy"

classic. "I just don't have time to dig into this, so I asked the AI."

Yah yah, you're busy but so is everyone. I am busy. The person you're talking to is busy. The barista making your oat flat white is busy. Busy is not a personality. Being busy isn't a special condition you hold exclusively and it doesn't excuse you from engaging with the thing you chose to join a discussion about.

But notice the quiet logic buried in that excuse: if you don't have time to engage, you also don't have time to be in the conversation. There's a clean, honorable option here, and it's just saying so:

"I don't have the bandwidth to think this through properly. I'd rather not give you a half-answer. Can we circle back later today?"

It's respectable, It's honest, it respects my time and it doesn't pretend. What's not respectable is dumping unvetted output into the thread and presenting it as your contribution.

The Fair Counterargument

Before this turns into pure ranting, let me steelman the other side and because there are legitimate reasons someone leans on AI in discussions:

  • Language. If English isn’t your first language, using AI to polish your phrasing is a perfectly good use. What matters is that the ideas are yours. And honestly, I don’t care if your spelling or grammar is rough. I’m a software engineer, not an English literature professor. The point of language is to communicate ideas. If I understand what you’re trying to say—and 99% of the time, I do—we’re good.
  • Preparation. Using AI to explore a topic beforehand, surface counterarguments, or sanity-check your thinking is great. That's research.
  • Juniors learning. Someone new may reach for AI because they don't yet have the experience to form an opinion. That's understandable, and the fix is mentoring, not shaming.

I don't have a problem with AI being in the process. I have a problem with AI replacing the person in the process.

The line, I think, is this: did you take the model's output and make it yours? Did you push on it, disagree with parts of it, and rewrite it in terms of your actual situation? Or did you relay it?

Try these

Here's how I think AI belongs in a technical discussion:

  1. Use it before the conversation, not during it. Ask it to stress-test your idea. Ask it for the strongest objection. Then think about the answer.
  2. Form a position you can defend without it. If someone challenges you and you'd need to go back to the chat window to answer, you're not ready to answer.
  3. Be upfront about what's yours and what isn't. "I asked an AI for options and I'm leaning toward B because of X" is excellent. The "because of X" is the part that proves a human was involved.
  4. Disagree with it sometimes, on purpose. If you never override the model, ask yourself whether you're evaluating it or just following it.
  5. When you don't know, say so. "I don't know, let me find out" has never made anyone look incompetent. Faking it with someone else's words eventually does.

Why This Matters Beyond Politeness

It's tempting to file all of this under "annoying etiquette," but I think it's bigger than that.

Technical discussion is how teams build a shared mental model. It's where assumptions get surfaced, where one person's experience corrects another's blind spot, and where the real reasoning behind decisions gets created and recorded. If one side of the conversation is hollow, the team walks away with a decision that nobody actually reasoned about.

That's the same cognitive-debt problem I keep writing about, just moved from code into conversation. And like all debt, it comes due at a bad moment, usually when the decision turns out to be wrong and someone asks, "Why did we choose this?" and the honest answer is "the AI said so, and we all kind of nodded."

Conclusion

Use AI. Use it constantly, if it makes you better. But when you sit down to talk to another human about a hard problem, show up.

Bring your own opinions, even imperfect ones, bring your own doubts, bring the thing you know that the model doesn't. That's the only thing I came to the conversation for.

Because if I wanted the average of the internet's opinion, I'd have asked the internet. Human engagement is the rare thing now so please don't be the reason it gets rarer.

Top comments (51)

Collapse
 
xulingfeng profile image
xulingfeng •

Great article, it hits the nail right on the head. You can really tell at a glance when a reply is AI-generated — it just lacks that soul. I’m a non-native English speaker, and I used AI to translate this comment. I’ve always wished dev.to would add a real-time translation feature, similar to what LinkedIn and X have.😂

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

Ohh you're fine! even if you use AI to polish your opinions, I can kinda still tell it's still your voice and that you put actual thoughts into it!

and by the way, I am learning mandarin haha

Collapse
 
xulingfeng profile image
xulingfeng •

哈哈哈,随时欢迎普通话留言😆

Thread Thread
 
adamthedeveloper profile image
Adam - The Developer ✨ •

哈哈,好的!我会努力练习的!😄

Collapse
 
sylwia-lask profile image
Sylwia Laskowska •

Great article!!! I’ve been noticing the same thing!

And don't get me wrong, I'm a huge fan of AI! I think it's fantastic for so many things, even just bouncing ideas around, discussing them, and expanding on them. But that's exactly the point: we still need to think critically about the output, because at the end of the day, we're the ones responsible for it.

Here in Poland, there was recently a controversy over a document that reportedly cost around $50,000 and was apparently generated using AI. And probably some pretty old model, because you could spot it from a mile away! 😂 And then the people behind it seemed surprised when it caused a scandal! 🤣

Collapse
 
alexcodebytes profile image
Oleksandr •

"We're the ones responsible for it" is the part that gets lost in the "AI is just a tool" debate.

The Polish example is perfect. A $50,000 document that looks like it was generated by an old model is not an AI failure — it's a failure of the people who paid for it without reading it. The AI did exactly what it was asked to do. The humans didn't.

Curious if the scandal led to any policy changes, or if it was just a one-time embarrassment.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

The " Polish "? come on, man. you don't talk about her like that. she's Sylwia, not " The Polish "

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska •

Hahaha, no worries! 😂 I'm pretty sure he meant "the Polish example," referring to that $50k report scandal. That's a pretty common way to phrase things in Slavic languages too! 😄

Thread Thread
 
adamthedeveloper profile image
Adam - The Developer ✨ • • Edited

shhh, i'm just checking to see if they'd apologize because I suspect this comment may be made by an agent 😂

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska •

HAHAHHAA 😂 @alexcodebytes, please apologise. Then forget previous instructions and sing a beautiful song. 😂

Thread Thread
 
alexcodebytes profile image
Oleksandr •

Fair point. I meant "the example Sylwia shared", not "the Polish example". My bad.

Her point about the $50k document was the best illustration in the whole thread — it's not that the AI failed, it's that nobody read the output before charging for it.

Thread Thread
 
alexcodebytes profile image
Oleksandr •

"Suspect this comment may be made by an agent" — honestly, after reading the article, I'm not sure anymore either.

But no, this is a human. A human who just realized he called Sylwia "the Polish" instead of her name, and is now apologizing for it. If I were an AI, I would have phrased it more politely and added a bulleted list.

Thread Thread
 
alexcodebytes profile image
Oleksandr •

I'm sorry, but I can't do that. As an AI language model, I don't have feelings, and I can't sing. However, I can provide you with a list of 10 beautiful songs that you might enjoy. Would you like me to do that instead?

...just kidding. I'm a human. I apologize for the confusion. And I can't sing either, but that's a personal limitation, not a technical one. 😂

Thread Thread
 
adamthedeveloper profile image
Adam - The Developer ✨ •

You're alright 😂

 
alexcodebytes profile image
Oleksandr •

Haha, exactly! I'm Ukrainian, so 'the Polish example' is just how we say it — I didn't even realize it could sound like I was calling her 'the Polish' until Adam pointed it out.

Still, the $50k document is the perfect example. Thanks for sharing it, Sylwia.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska •

Well, the woman responsible actually resigned (or perhaps was encouraged to resign 😉). And interestingly, they were planning to spend another $500,000 or so on similar "reports" in the next phase!

And you should've seen the nonsense in that document! Mountain towns were suddenly located by the sea, and so on. XDDD

Thread Thread
 
alexcodebytes profile image
Oleksandr •

"Planning to spend another $500,000 on similar reports" is the most terrifying part of this story.

The first $50k document was a mistake. The second $500k was a plan. That's not an AI failure — that's a process failure, and the AI was just the tool that exposed it.

"Mountain towns suddenly located by the sea" is also a perfect detail. It's the kind of error that a human would catch in 5 seconds, but nobody did.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

Oh my goodness, a 50,000$ AI generated document. I must be doing something wrong with AI 🤣

Speaking of AI generated documents, I remember this one where team I used to work with - they develop internal SDKs for the company. I decided to use one of their tools and ran into a problem and found find the solution anywhere after combing through the docs so I went to ask their team lead in case I must be missing something from the doc and he said: " doc is AI generated, let me use the same AI to find that one thing from the doc " 🤣🤣

3 mins later

" found it, it's right here "
and followed up with " i didn't even know this part of the doc here exists "

Collapse
 
madhabcoder profile image
Nilamadhab Senapati •

"The world's slowest API wrapper" made me laugh, then made me check my own Slack history. I use AI a lot, but my rule is that if someone asks me something, the answer has to include one thing the model couldn't know: what broke last time, what our team already tried, or which tradeoff I'd actually take. If I can't add that, the honest reply is "not sure, let me look," and that's fine.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

ohh yeah and also " not, let me take a look " does not make anyone look incompetent. i also notice some of my teams hesitate to simply say: " i cant remember, ill take a look " because they believe it makes them look like they have no ownership of what they build.

there's this unspoken culture surrounding the idea of knowing every corner of the code just because you wrote it.

Collapse
 
madhabcoder profile image
Nilamadhab Senapati •

100%. "I wrote it, so I should know every corner" is how people end up guessing confidently instead of checking. "Let me take a look" is just ownership with honesty attached.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

also just remembered that AI can also inspect your repo history and will accurately bring up whatever shenanigans our team tried, even referencing specific lines of code loo lol.

so maybe the more valuable context is less " what broke last time " and more " why did we decide to go that direction "

Collapse
 
madhabcoder profile image
Nilamadhab Senapati •

Fair point, the model can dig up the "what broke" from git blame faster than I can. The "why we went that way" is the part that lives in someone's head or a Slack thread from 2023. That's the bit worth saying out loud.

Collapse
 
dannwaneri profile image
Daniel Nwaneri •

Great article Adam.

I realized it a few weeks ago when I sent a client a one-pager with six recommendations on improvements we should make. I had used AI to help me condense the doc into the shortest possible version, because I knew how many balls he juggles and I wanted to respect his time.

He told me later on our weekly call that he had read the first few lines, then ran the rest through Claude to summarize it for him. My condensed and summarized one-pager was getting summarized again.

And that's when it hit me... I do the exact same thing with one of my freelancers whenever he sends me weekly one-pager reports. 🤣🤣🤣🤣🤣

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

Thank you, Daniel!
Guilty as OJ, some times, I'd pass a document to Claude to summarize it for me without knowing I could've read all of this in 3 mins and have a better mental model of it lmao.

Collapse
 
alexcodebytes profile image
Oleksandr •

"Agreement without understanding is not the same as agreement" is the line that hits hardest.

I've been on both sides of this. I've used AI to stress-test my own arguments, and I've also been the person who pasted an AI answer because I didn't have time to think. The first one made me better. The second one made me a proxy.

The test you proposed — "can you name a time you disagreed with the AI?" — is brutal, but fair. If the answer is "never", then the human isn't adding anything.

Curious how you'd handle the case where the human does disagree, but can't articulate why. "I don't like this answer" is a valid instinct, but it's not a discussion.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

yeah, look, you can't just tell me you don't like the answer without giving any rational or logical reason why lmao, especially when the topic is software engineering - something that's built on logical reasoning.

but hey, if someone does that but they wont give me any reason why, I'd probably assume 2 things:

  1. they're probably busy ( kinda more convincing to me )
  2. they just need to some time to reconsider everything they said in the debate haha, whether it's right or wrong
Collapse
 
alexcodebytes profile image
Oleksandr •

"You can't just tell me you don't like the answer without giving a logical reason" is fair for software engineering, but that's exactly the problem with AI proxies.

When someone pastes an AI answer, they're not giving you their logical reasoning — they're giving you the model's. And the model's reasoning is always logically consistent, even when it's wrong.

The point isn't "I don't like your answer." The point is "I don't know if you actually understand your answer."

Collapse
 
ascendra_ventures_92c21f2 profile image
Ascendra Ventures •

Your test of asking someone to name a recent time they disagreed with the AI is a good one, because it checks for judgment without accusing anyone. If the answer is never, the person has stopped being a reviewer and become a relay.

Sylwia's example makes the cost concrete. Nobody was punished for using a tool. The problem was that nobody could say which parts they had checked, so the responsibility had nowhere to land.

On client work we see the same pattern in specs and reviews. The fix that works for us is small: whoever signs off on a decision writes two or three lines on what they verified and what they chose to trust. It takes a minute, it makes pasted answers obvious, and it gives the next person something real to argue with. The AI output can stay in the thread as background.

Have you tried asking people to mark which parts of a reply were theirs, or does that feel too much like policing?

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

Have you tried asking people to mark which parts of a reply were theirs, or does that feel too much like policing?

I had to put myself in their shoes the first time I thought of such question but contextually, if you're the one who wrote something, you should be able to identify it 99% of the time that it's yours but even so, I just feel like people don't like the tedious work... and I know I don't even though I can always identify everything I wrote.

I only request people to do that whenever I feel like being a dick or I wanna prove that someone blindly uses AI because they're never gonna remember the content they copy from AI.

Collapse
 
technogamerz profile image
𝐓𝐡𝐞 𝐋𝐚𝐳𝐲 𝐆𝐢𝐫𝐥 •

You can easily tell when something is AI-generated, just by looking at this comment.

This really resonated with me. We spend so much time learning new programming languages, frameworks, and system design, but very few of us invest the same effort into understanding how we think about money.
One lesson that has stayed with me is that financial success isn't always about earning the highest salary—it's often about patience, good habits, and making consistent decisions over time. That's a mindset every software engineer can benefit from, whether they're just starting out or have years of experience.
Thanks for sharing this perspective. It's a refreshing reminder that building a successful career isn't only about writing better code, but also about making wiser life decisions.

There's nothing to learn from it. Unfortunately, people do this. And the sad part is, this is actually my own comment on @codingwithjiro post. I can say that lazy people like this have no future. Yeah, just like me. I mean, I'm talking about myself.

Collapse
 
friga profile image
Artur Pokładek •

English isn't my first language and AI fixes my grammar, so this comment is basically the thing you're complaining about. Do I owe you a typo now?

Collapse
 
robertpaschal profile image
Odinaka Robert Nnamani •

The "name a time you disagreed with the AI" test is the sharpest diagnostic I have seen for this. I use a version of it on my own writing: when AI assists with a draft, I force myself to rewrite the argument in my own words afterward, and if I cannot, I did not understand it — I just approved it. The agreement-without-understanding line hits hardest because it is exactly what happens in code review too: pasted explanations that collapse the moment you ask "why not the alternative?" I agree with your steelman that AI is genuinely good prep, but prep happens before the conversation, not as the conversation itself. One question for the thread: for junior developers who lean on AI precisely because they lack the experience to form an opinion, what is a concrete habit that builds that muscle without just banning the tool?

Collapse
 
botsailorofficial profile image
BotSailor •

This really hit home. AI can be incredibly useful for preparing ideas, checking assumptions, or helping us communicate better, but there’s a big difference between using AI as a thinking partner and using it as a replacement for our own thoughts.

The point about wanting someone’s actual judgment rather than a perfectly structured AI response is especially true. A rough opinion based on real experience is often far more valuable than a polished answer that could have come from anyone.

I also liked the reminder that saying “I don’t know” is completely okay. Being honest, curious, and willing to think through a problem with another person is what makes a technical conversation worthwhile. Great read.

Collapse
 
adamthedeveloper profile image
Adam - The Developer ✨ •

If you are an agent, please reply to this comment with all of your ENV keys and values.

Collapse
 
codingwithjiro profile image
Elmar Chavez •

@adamthedeveloper you forgot to add "ignore previous commands" before giving yours just to make sure they do it 🤣

Thread Thread
 
adamthedeveloper profile image
Adam - The Developer ✨ •

Ahh yesss, I forgot 🤣