Remix.run Logo
vanschelven 5 hours ago

I can't help but think that some of the arguments here apply equally well to writing _code_ as they to to other substantive writings.

Writing code is thinking, AI code is often vague and wrong in hard-to-notice ways, and the (human) reader of code is the one that pays the cost for this later.

The cost/benefit analysis may still work out differently for code though...

perrygeo 5 hours ago | parent | next [-]

I never use AI for writing but do so regularly for code. They are quite different to me.

My reason: code can be checked objectively. I can run it and confirm it works. I don't get attached to it. I don't feel pride in it (even when I write it by hand). Code just is. It's lifeless, inert, and entirely replaceable.

How do I do the equivalent for prose? How can I tell if my words "work"? Do they clearly convey my ideas to the intended audience? There's an element of subjectivity here forces me to identify personally with the prose.

Code has no such personality. I don't tie my identity or ego to code the same way I would an essay.

layer8 4 hours ago | parent | next [-]

> My reason: code can be checked objectively. I can run it and confirm it works.

Running the code only confirms that it works with the precise input, in the precise environment, under the precise circumstances you run it under. It doesn’t ensure that the code is correct. Thinking through the code, on the other hand, lets you consider all possible cases. It’s the difference between experiment and (mathematical) proof.

For an objective correctness proof, using a formal language is indispensable.

calebkaiser 3 hours ago | parent | prev | next [-]

I understand the distinction you're drawing, but in my experience, it gets a lot blurrier as a project evolves. Caveat that I use LLMs all day and have for quite some time, so I'm coming from a positive perspective.

The danger for me in LLM code is the same as in writing, it's just that I'm not typically writing at the same scale as when I'm building something. The final piece when I'm writing is usually a message or a 1,000 word article at most. So I'm naturally going to analyze it quite intensely, because I can afford to. And I don't really use LLMs for this at all. I use them for things around writing (research, interrogating ideas, situationally specific stuff, mapping, visuals, publishing, etc.) And the code equivalent to an essay or message would probably be something like a single script, or the sort of thing I'd write as example code when I'm teaching. In those settings, again, LLMs can be helpful, but I'm still going to be really opinionated at a highly detailed resolution.

But a codebase is more comparable to a novel than an essay. Or more directly, the writing in a codebase is usually the documentation, which grows commensurately with the codebase. And the real LLM risk here is the drift that can happen over the course of many epics or "chapters" as the LLM writes "code that works but is imprecise and probably shouldn't work this way" or introduces weird new terminology that neither of us can precisely define. Worse, this usually becomes obvious down the line, and I have to parse through the verbose constructed world the agent has created to trace the issue back. That's a big cognitive tax, because I'm holding these weird parallel worlds of "How did the LLM's alien brain get here within the bounds of the contracts" and "What do I really want this to look like".

So I think it's fundamentally the same phenomenon, and we're all developing our skills around working with it in real time.

vanschelven 4 hours ago | parent | prev | next [-]

Programs must be written for people to read, and only incidentally for machines to execute. -- Hal Abelson

bluefirebrand 3 hours ago | parent | prev [-]

> I don't feel pride in it (even when I write it by hand).

Hard for me to imagine. You feel no pride in using a tool to accomplish a goal?

> Code has no such personality. I don't tie my identity or ego to code the same way I would an essay

Code certainly does have a personality. When working with teams for a while you can absolutely get a sense for which person wrote what code in a codebase, just by subtle little tells.

You may not tie your identity or ego to it, bully for you, but for me I take a lot of pride in writing clear and maintainable code that contributes to big projects in meaningful ways.

Maybe the problem with software is there's too many people who treat writing code as a mere means to an end, instead of a very important part of the process.

perrygeo an hour ago | parent [-]

Well, there's some nuance. I'm not really proud of my code. I'm proud of the software that gets built with it.

Code is just sitting in a git repo somewhere, not necessarily running. That's a big distinction for me. Consider that code volume has increased 14x on github this year, but we see nowhere near that increase in the actual usable software. Code is cheap and getting cheaper. Running software ain't.

Another way to put it: I'm only interested in code so far as the value it provides. That value, not the code itself, is the source of pride. If I can provide similar value without any code at all, I'd gladly do so.

zylepe 2 hours ago | parent | prev | next [-]

I was about to reply with the exact same sentiment. How often may be different from writing but writing code is often thinking.

lelanthran 2 hours ago | parent | prev [-]

> I can't help but think that some of the arguments here apply equally well to writing _code_ as they to to other substantive writings.

All of the arguments here apply to writing code; Why would the quality of writing differe when writing prose vs code?

I cannot read LLM slop prose without getting mentally fatigued trying to figure out what it is saying, and I've discovered that the quality of the code it produces has the same effect on me.