53

AI code and software craft

Enterprise software tends to particularly bad because it's being sold to managers who won't use it themselves. Consumer software tends to be more user-friendly (or it won't sell), but popular software isn't always what you want.

When writing software for yourself, there is a bias towards implementing just the features you want and never mind the rest. Sometimes the result can be pretty sloppy, but it works.

However, code health is a choice. You just need to know what to ask for. A coding agent can be used as a power washer to tidy up a project. This won't result in great art, but like raking leaves or cleaning your steps or plowing a driveway, it can be satisfying.

Just as you wouldn't use a power washer to clean a painting, maybe there's some code that's too delicate to use a coding agent on? But for a project that has good tests and isn't that delicate, which I believe includes most web apps, nobody's going to want to pay for you to do it by hand anymore. It would be like paying someone to clear the snow in a parking lot with a shovel rather than hiring someone with a plow.

2 hours agoskybrian

> 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 compare the difference between manually coding and operating a coding agent to the difference between a handsaw and a chainsaw - the end result is the same but the method is very different.

27 minutes agowill__ness

> 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.

8 minutes agoacedTrex

Speak for yourself.

2 minutes agonubg

The AI code takeover will not free engineers up to do craftsmanship. It will annihilate the last vestiges of craftsmanship forever.

an hour agoslotrans

The framing of craft vs. slop misses something important: most production software quality problems aren't about aesthetics or elegance, they're about correctness under real-world conditions.

I've been using AI coding tools heavily for the past year. They're genuinely useful for the "plumbing" - glue code, boilerplate, test scaffolding. But where they consistently fail is reasoning about system-level concerns: authorization boundaries, failure modes, state consistency across services.

The article mentions AI works best on "well-defined prompts for already often-solved problems." This is accurate. The challenge is that in production, the hard problems are rarely well-defined - they emerge from the interaction between your code and reality: rate limits you didn't anticipate, edge cases in user behavior, security assumptions that don't hold.

Craft isn't about writing beautiful code. It's about having developed judgment for which corners you can't cut - something that comes from having been burned by the consequences.

25 minutes agokxbnb

Most people using LLMs dont have this craft...... which begs the question. Should they be using LLMs in the first place? Nope. But given that its rammed down their throat by folks internally and externally, they will.

24 minutes agoj33dd

This argument is basically just the 1800s Luddite vs Industrialist argument recast for a new age. Group A thinks quality is about human agency, and that machines are being used to bypass the apprenticeship system and produce inferior goods. Group B thinks efficiency is the highest priority, and craft is just vanity. Of course as we know we went a third way, and human roles just shifted.

I think one promising shift direction is humans do NOT like to talk to bots, especially not for anything important. It's biological. We evolved to learn from and interact with other humans, preferably the same group over a long time, so we really get to understand/mirror/like/support each other.

an hour agoHerring

I dont think it's the same at all. when weaving was displaced, yes some people were pissed about losing their livelihood, but the quality of the cloth didn't diminish.

when CNC came for machining, no one really bitched, because the computers were just removing the time consuming effort of moving screws by hand.

when computers write code, or screenplays, the quality right now is objectively much worse. that might change, but claims that we're at the point where computers can meaningfully displace that work are pretty weak.

sure that might change.

an hour agoconvolvatron

Cloth absolutely has gotten worse over the last two hundred years since industrialization. It's also orders of magnitude cheaper, making it worth it, and certainly new types of cloth are available that weren't before, but we're not better off in every possible way.

an hour agogbear605

>but we're not better off in every possible way

I'd argue that we are, because cloth of higher quality than anything that has ever existed before is available today, it's just really expensive. But high quality cloth was also expensive back then.

I think you are making the error of comparing cheap clothes of today with expensive clothes of the past, rather than cheap clothes with cheap clothes and expensive with expensive. People of the past might have had higher quality clothes on average, but its because those clothes were expensive despite being the cheapest available. Trust me, if Shein was around in 1780, everyone would be wearing that garbage.

19 minutes agoWarmWash

The result being worse generally doesn't stop humans from being displaced. Clothes made today are notably worse than the handmade ones.

an hour agoodo1242

The available quality of cloth did, in fact, diminish.

an hour agofwip

It has nothing to do with luddites.

Software quality about speed of delivery and lack of bugs.

If you're fine with software which gets a little bit harder to work on every time you make a change and which might blow up in unexpected ways, AI is totally fine.

Ive yet to meet many AI champions who are explicit about their desire to make that trade off though. Even the ones who downplay software quality arent super happy about the bugs.

an hour agopydry

> If you're fine with software which gets a little bit harder to work on every time you make a change and which might blow up in unexpected ways, AI is totally fine.

While the speed and scale at which these happen is definitely important (and I agree that AI code can pose a problem on that front), this applies to every human-written piece of software I've ever worked on too.

an hour agotrevwilson

Maybe kids will end up preferring to talk to bots, much like the generations after my own actually preferred digital compression artifacts in their music.

an hour agobitwize

Can it get me a job if I get laid off (networking)? Can I crash on its couch for a while? It might displace tv/netflix, which yes is a huge market, but I don't think much more than that.

an hour agoHerring

> People have said that software engineering at large tech companies resembles "plumbing"

> AI code [..] may also free up a space for engineers seeking to restore a genuine sense of craft and creative expression

This resonates with me, as someone who joined the industry circa 2013, and discovered that most of the big tech jobs were essentially glorified plumbers.

In the 2000s, the web felt more fun, more unique, more unhinged. Websites were simple, and Flash was rampant, but it felt like the ratio of creators to consumers was higher than now.

With Claude Code/Codex, I've built a bunch of things that usually would die at a domain name purchase or init commit. Now I actually have the bandwidth to ship them!

This ease of dev also means we'll see an explosion in slopware, which we're already starting to see with App Store submissions up 60% over the last year[0].

My hope is that, with the increase of slop, we'll also see an increase in craft. Even if the proportion drops, the scale should make up for it.

We sit in prefab homes, cherishing the cathedrals of yesteryear, often forgetting that we've built skyscrapers the ancient architects could never dream of.

More software is good. Computers finally work the way we always expected them to!

[0]https://www.a16z.news/p/charts-of-the-week-the-almighty-cons...

an hour agojumploops

> joined the industry circa 2013, and discovered that most of the big tech jobs were essentially glorified plumbers

Most tech jobs are glorified plumbers. I've worked in big tech and in small startups, and most of the code everywhere is unglamorous, boring, just needs to be written.

Satisfaction with the job also depends on what you want out of it. I know people who love building big data pipelines, and people who love building fancy UIs. Those two groups would find the other's job incredibly tedious.

an hour agodanpalmer

The right job for a person depends on whether they can rise above the specific flavor of pain that the job dishes out. BigTech jobs strike me as having an inextricable political element to them: so you enjoy jockeying for titles and navigating constant reorgs?

The pay is nice but I find myself…remarkably unenvious as I get older.

an hour agomattgreenrocks

Plumbing has certification and industry best practices, and its leaks generally affect a few blocks at most rather than spraying across the entire internet.

19 minutes agostrken

It’s easy to forget that any artifact - painting, music, text, or software - that appeals to a large number of people is, by definition, an average on the spectrum of quality.

Popular music tends to be generic. Popular content is mostly brainrot these days. Popular software is often a bloated mess because most users’ lives don’t revolve around software. They use software to get something done and move on.

I never understood the appeal of “craft” in software. Early computer pioneers were extremely limited by the tech of their time, so the software they hacked together felt artsy and crafty. Modern software feels industrial because it is industrial - it’s built in software factories.

Industrial software engineers don’t get paid to do art. There are research groups that do moonshot experiments, and you can be part of that if it’s your thing. But lamenting the lack of craft in industrial software is kind of pointless. Imagine if we’d stopped at crafty, handmade auto engines and never mass-produced them at scale. We don’t lament “crafty engines” anymore. If you want that, go buy a supercar.

Point is: AI is just another tool in the toolbox. It’s like Bash, except calling it that won’t pull in billions of dollars in investment. So “visionaries” call it ghost in the machine, singularity, overlord, and whatnot. It produces mediocre work and saves time writing proletariat software that powers the world. Crafty code doesn’t pay the bills.

But I’m not saying we shouldn’t seek out fun in computing. We absolutely should. It’s just that criticizing AI for not being able to produce art is an old thing. The goalpost keeps shifting, and these tools keep crushing it.

I don’t use AI to produce craft, because I don’t really do craft in software - I have other hobbies for that. But I absolutely, proudly use it to generate mediocre code that touches millions of people’s lives in some way.