Secondhand AI considered offensive

I’m seeing a trend: Some poor, misguided person passes on an AI generated answer without adding any direct human effort.

The intention is to be helpful, but we all have access to the same tools, more or less, so merely passing on a slopjob isn’t helpful. It’s disrespectful.

Passing on AI content without judgment signals both:

  1. I think this issue/problem/feature is simple enough that it can be done just by asking a perpetual internet machine, and…
  2. I don’t think you were smart enough to consider asking AI for guidance on your own.

The same wall of text, human written, would at least show some real effort in understanding the whole problem. Even if misguided, it is a genuine sign that someone spent time on understanding and formulating a well-structured, researched answer. Proof of work, one might say.

[Requiring AI use disclosure] is to help maintainers assess how much attention to give a PR. While we aren’t obligated to in any way, I try to assist inexperienced contributors and coach them to the finish line, because getting a PR accepted is an achievement to be proud of. But if it’s just an AI on the other side, I don’t need to put in this effort, and it’s rude to trick me into doing so.

@mitchellh requiring disclosure for AI assisted PRs to Ghostty.

Copy/pasting code into an AI chat platform then copy/pasting the response to this issue thread is, in my opinion, not at all helpful. […] If you provide some professional insight based on your own experience and experimentation in addition to hitting Ctrl+C/Ctrl+V, that may in fact be useful, but otherwise I would refrain from doing that again on GitHub.

@viscount-monty providing responding to a user throwing a complex engineering to ChatGPT then blindly commenting the answer.

“Please, just stop sending me AI videos of Dad [late comedian Robin Williams] ,” Zelda wrote. “Stop believing I wanna see it or that I’ll understand, I don’t and I won’t. […] It’s dumb, it’s a waste of time and energy, and believe me, it’s NOT what he’d want. […] To watch the legacies of real people be condensed down to ‘this vaguely looks and sounds like them so that’s enough’, just so other people can churn out horrible TikTok slop puppeteering them is maddening,” she continued. “You’re not making art, you’re making disgusting, over-processed hotdogs out of the lives of human beings, out of the history of art and music, and then shoving them down someone else’s throat hoping they’ll give you a little thumbs up and like it. Gross.”

Zelda Williams on people sending her AI clips of her dad, the late Robin Williams. If she wanted those, she could make them herself.

What to include when agentic coding

First, start with prompting for behaviour.

Second, what else to include?

  1. Strong preferences for the task at hand:
    • Say use shadcn/ui for the dialog
    • Or state must go through the central store
    • Or use plain sql for complex queries
    • Or don't add any db fields
    • Or this should be a db field
  2. Hunches and make it sound like they are:
    • Like, I think this has to do with xyz
    • Or I'm sure there's prior knowledge of this
    • Or do we already have a version of this? Investigate
    • Or we should probably add an integration test for this? Wdyt?
    • Or can we abstract and reuse the comments code in Post.rb? Wdyt?
  3. Questions
    • Ask eli5 how we handle publishing posts
    • Or summarize the admin auth
    • Or review @docs/add-comments.md. Focus on simplification and removing complexity
    • Or can we skip the middle step here or would that be worse for users?

We used to discover the details as we went along with the implementation. For agentic coding you want to speed-run this, assisted by the agent, before you let it rip.

Give me six hours to chop down a tree and I will spend the first four sharpening the axe.

– Abraham Lincoln
  – Mikkel Malmberg

Just throwing it out there that “we” absolutely do not “need to go on the offense” against Codes of Conduct nor main branches.

“We” should show by example that it’s possible to exist in a culture that can hold disagreement without turning into a poop throwing match.

Someone has a feeling towards branch naming? You, the maintainer, decides whether you want to change anything. Listen, then make a decision. Neither decision makes anyone a fascist or communist or anime avatar.

A project uses a term you don’t like? You, the user, can suggest using a different term. Be civil and provide short, to the point arguments. It is now up to the maintainer what they will do with this request. Neither decision makes anyone a fascist or communist or demon.

Attacking or ridiculing the other party for their decision or request does not make you look cool. “Going on the offense” does not make you look cool. Staying calm and collected and true to yourself looks cool.

Prompt for behaviour

Here’s a tip for your agentic coding:

Don’t prompt for the thing you want, prompt for behaviour.

Say you need to add authentication. So many details are missing: What kind of auth? How strict? What does it look like? Where does it lead to? Where does it end?

The agent needs context. It has some, can figure out some more. But you, the builder, have most if not all of it. Plus your preferences. Plus your intuition. What needs to happen is telepathic transfer from you to the agent.

The agent is so eager to start working. It is trained for action. Like a junior dev refactoring billing on their first day, it will gladly run amok before you can even type design doc.

So be deliberate about how you want it to act.

You don’t have to spend a day writing a perfect spec. Use the agent’s eagerness to your advantage. Let it do the typing. Instead, short prompts for behaviour:

  • Say, plan authentication with me.
  • And ask me questions to align.
  • And investigate best practices for oauth.
  • And discuss the pros/cons of magic links.
  • Say write our plan to an .md file in docs/

Then, finally, when the context is primed like a stretched bow and arrow: implement @docs/auth-plan.md.

This makes sure the agent doesn’t run like a mad man, 100 km/hour in the wrong direction.

You may not know what the final result should look like. You might not know which details to include. But your intuition does. So help the agent help you both first, then let it run like the wind.

Whatever you think a coding agent “can’t do”, 99% chance it’s a skill issue.

it’s 2025

twitter is dead but more alive than ever

girls are riding robot horses

the heroes on the tl are zuck failing a demo and dhh inventing linux

the villain is apple with too many border radii

I feel bad for Zuck and the Meta developers for their demos failing so now the normies can ridicule them – but the builder in me only has respect for daring to do live demos like that. It’s easier to fix the bugs than a lack of courage. Onwards

I feel bad for Zuck and the Meta developers for their demos failing so now the normies can ridicule them – but the builder in me only has respect for daring to do live demos like that. It’s easier to fix the bugs than a lack of courage. Onwards

I’ve been feeling like blogging again. I think I will.

Posts