Live data from Hacker News

AI code and software craft

alexwennerberg.com

131–140 of 157 posts

Re: AI code and software craft

#131

Earlier quoted context omitted.

I agree. The article's logic is incoherent. It conflates the choice of tools with the decision what product to make and what level of quality to aim for. If AI can be used to make bad (or good enough) software more cheaply, I have no problem with that. I'm sure we will get a huge amount of bad software. Fine. But what matters is whether we get more great software as well. I think AI makes that more likely rather than…

I wonder if that's only really true for "pre-LLM" engineers though. If all you know is prompting maybe there's not a higher quality with more focused that can really be achieved. It might just all meld into a mediocre soup of features. To be clear not against AI assisted coding, think it can work pretty great but thinking about the implications for future engineers.

>If all you know is prompting maybe there's not a higher quality with more focused that can really be achieved.

That's true of any particular individual but not for a company that can decide to hire someone who can do more than prompting.

>It might just all meld into a mediocre soup of features

I don't think the relative economics have changed. Mediocre makes sense for a lot of software categories because not everyone competes on software quality.

But in other areas software quality makes a difference it will continue to make a difference. It's not a question of tools.

Re: AI code and software craft

#132
post #130

Earlier quoted context omitted.

> You have a lot of control over what the LLM creates. No, you don't, you have "influence" or "suggestion". You can absolutely narrow down the probability ranges of what is produced , but there is no guarantee that it will stick to your guidelines. So far, at least, it's just not how they work. > You don't have 100% control over what your LLM devs are doing, but more than you think. Just like normal managers don't mi…

I think i have enough control, probably more than when working with developers. Here's something i recently had claude code build: https://github.com/ako/backing-tracks If you check the commit log, you'll see small increments. The architecture document is what i have it generate to validate the created architecture: https://github.com/ako/backing-tracks/blob/main/docs/ARCHITE... Other than that most changes start wit…

> I think i have enough control.

This is probably just a disagreement about the term "control", so we can agree to disagree on that one i suppose.

The rest of the reply doesn't really relate to any of the points i mentioned.

That it's possible to successfully use the tool to achieve your goals wasn't in dispute.

I'll try to narrow it down:

---

> You are not a victim at the mercy of your LLM.

Yes, you absolutely are, it's how they work.

As i said, you can suggest guidelines and directions but it's not guaranteed they'll be adhered to.

To be clear , this also applies to people as well.

---

Directing an LLM (or LLM based orchestration system) is not the same as directing a team of people.

The "interface" is similar in that you provide instructions and guidelines and receive an attempt at the wanted outcome.

However, the underlying mechanisms of how they work are so different that the analogy you were trying to use doesn't make sense.

---

Again, LLM's can be useful tools, but presenting them as something they aren't only serves to muddy the waters of understanding how best to use them.

---

As an aside, IMO, the sketchy salesmen approach to over-promising on features and obscuring the the limitations will do great harm to the adoption of LLM's in the medium to long term.

The misrepresentation of terminology is also contributing to this.

The term AI is intentionally being used to attribute a level of reasoning and problem solving capability beyond what actually exists in these systems.

Re: AI code and software craft

#134
post #130

Earlier quoted context omitted.

I think i have enough control, probably more than when working with developers. Here's something i recently had claude code build: https://github.com/ako/backing-tracks If you check the commit log, you'll see small increments. The architecture document is what i have it generate to validate the created architecture: https://github.com/ako/backing-tracks/blob/main/docs/ARCHITE... Other than that most changes start wit…

> I think i have enough control. This is probably just a disagreement about the term "control", so we can agree to disagree on that one i suppose. The rest of the reply doesn't really relate to any of the points i mentioned. That it's possible to successfully use the tool to achieve your goals wasn't in dispute. I'll try to narrow it down: --- > You are not a victim at the mercy of your LLM. Yes, you absolutely are,…

Looks like we just have different expectations: i don't want to micromanage my coding agents any more than i micromanage the developers i work with as a product manager. If the output does what it is supposed to do, and the software is maintainable and extendable by following certain best practices, i'm happy. And i expect that goes for most business people.

And in practice i have more control with a coding agent than with developers as i can iterate over ideas quickly: "build this idea", "no change this", "remove this and replace it with this". Within an hour you can quickly iterate an idea into something that works well. With developers this would have taken days if not more. And they would've complained i need to better prepare my requirements.

Re: AI code and software craft

#135

> But there are serious limits. [Your coding agent] will lie to you, they don't really understand things, and they often generate bad code. I think that really high quality code can be created via coding agents. Not in one prompt, but instead an orchestration of planning, implementing, validating, and reviewing. Its still engineering work. The code still matters. Its just a different tool to write the code. I'd compa…

> the end result is the same but the method is very different. I dont think anyone really cares at all about LLM code that is the exact same end result as the hand written version. It's just in reality the LLM version is almost never the same as the hand written version, it's orders of magnitude worse.

So far, I haven't seen any comparison of AI (using the best available models) and hand written code that illustrates what you are saying, especially the "it's orders of magnitude worse" part.

Re: AI code and software craft

#136

I don't get why the author assumes AI-assisted coding can never produce elegant software. I am learning new things from AI almost in every interaction.

AI can produce elegant software but not on its own. It requires a human with taste to direct and guide it.

Re: AI code and software craft

#137
Agreed. AI-generated code is "mid" by nature. You won’t feel amazed seeing AI-generated code because its "reasoning" competes with that of a potato.

I have recently started exploring AI-coding -- note that I said AI coding and not vibe-coding because that is for the brain-dead.

By AI coding, I mean I know the inputs, outputs, structures the code should have and the necessary context to write the code. Then, articulating the requirements in English as best as I can and feeding it to agents.

Needless to say, the code is pathetic; it chooses to implement meaningless abstractions even after explicitly providing the design and plan to follow.

I don’t understand how we, as a collective species, agreed to believe the criminally wrong lies of tech CEOs that, instead of implementing a “reliable system by hand,” we choose to convey our ideas and instructions in an “ambiguous,” “inconsistent,” and “context-dependent” language (English), which is then passed through a probabilistic system to generate the reliable system.

Re: AI code and software craft

#138
Great article, but doesn't address the fundamental issue: defining quality. Other than some objective metrics like code coverage, there is little agreement about what constitutes good code. The closest thing to a consensus might be the rules encoded in linters/formatters. Each Rubocop or eslint rule had to go through code review and public scrutiny to be included and maintained. Most often the rules are customized per project/team. Of course this runs into the same problem the article mentions: narrowness of vision. It seems the only way to achieve a high-minded ideal is the BDFL model of software development.

Re: AI code and software craft

#139

Earlier quoted context omitted.

You give examples where crafts based on pre-industrial technology still exist. You're right, but you're proving the GP's point. 200 years ago, being a blacksmith was a viable career path. Now it's not. The use of hand tools, hand knitting, and hand forging is limited to niche, exotic, or hobbyist areas. The same could be said of making clothes by hand or developing film photographs. Coding will be relegated to the sa…

I doubt hobbyists would describe their hobby as purgatory. I doubt the laborer would describe their toil as "craft".

> I doubt hobbyists would describe their hobby as purgatory.

Programmers have become accustomed to a lot of cultural and financial respect for their work. That's about to disappear. How do you think radio actors felt when they were displaced by movies? Or silent film actors when they were displaced by talkies?

> I doubt the laborer would describe their toil as "craft".

Intellectual labor is labor. I'm a laborer in programming and I definitely consider it a craft. I think a lot of people here at HN do.

Re: AI code and software craft

#140

Earlier quoted context omitted.

You give examples where crafts based on pre-industrial technology still exist. You're right, but you're proving the GP's point. 200 years ago, being a blacksmith was a viable career path. Now it's not. The use of hand tools, hand knitting, and hand forging is limited to niche, exotic, or hobbyist areas. The same could be said of making clothes by hand or developing film photographs. Coding will be relegated to the sa…

I know people who make their living doing those niche things. So what if they're niche? Enterprise Software Architect is niche. Aerospace Engineer is niche. Hell, finding somebody under the age of 40 who can write Assembly is niche. Everything gets worse overtime. Even before AI, I was constantly complaining about how technology is enshittifying. I'm sure my parents complained about things getting worse, and their pa…

> So what if they're niche? Enterprise Software Architect is niche.

It's a question of supply and demand in the labor market. Right now, we are paid well and afforded respect because demand for our service is higher than the supply. When anyone can use AI to do our job, the supply will exceed the demand.

There are blacksmiths still working today. Their work is niche. And although blacksmithing today requires no less skill than it did 200 years ago, there is significantly less demand, and very few can make a living at it.

Post reply on HN