Hacker News new | ask | show | jobs
by maeln 364 days ago
The part about productivity also remind me that we still often pay for handmade goods, despite them being often a common industrialized good.

For example, if you enjoy cooking, or it is your job, you might be willing to pay for an artisan knife, even though you can buy a good knife for a few bucks. Same with clothes. They are extremely industrialized, but there is still a lot of tailor living of making bespoke clothe.

We might do it for no other reason than an appreciation of the craft, but a lot of time, it is driven by a desire for high quality (and/or customization).

This makes me wonder if one day we will see artisan software developer (I mean, the idea of software craftmanship is already here). LLM&Co are good at outputting a lot of code very quickly, but they are often not good at producing quality code. And I sincerely doubt that it will get any better, this seems to be more or less a consequence of the core technology making LLM. So unless we have a significant paradigm shift, I don't think it will improve much more. It already feels like we reach the point of diminishing return on this specific tech.

So what about making smaller software, but better software, for client wanting nothing but the upmost quality ? Just like bladesmith, we will have a bunch of new fancy tool at our disposal to be able to code better and faster, but the whole point of the exercice will still to be in control of the process and not give all the decision power to a machine.

3 comments

> This makes me wonder if one day we will see artisan software developer (I mean, the idea of software craftmanship is already here). LLM&Co are good at outputting a lot of code very quickly, but they are often not good at producing quality code.

The reason I think we might not see this for software even though we do other goods is that the output of a developer is not code it is software. It's possible for good (fit for purpose, easy to use, fast, pretty, whatever metric) software to be built on bad code. The craft of the code is not necessarily apparent in the product in the same way it can be with physical goods.

Whether or not LLMs can consistently output "good" software is less clear to me and I'm not interested in trying to make a prediction about it. But if they do I don't see "hand crafted" code being a thing. No one cares about code.

Those who write code do care about the code though, if only because it makes their job harder when the code is complete shit. It might be like welding, where only another welder can appreciate a good weld, and spot oxidization and shitty welds and judge the welds as being good/bad. If there's some janky software that desperately wants to be refactored/rewritten, then (LLM written or not) fellow programmers should rightly judge the code as being crap and choose to stay away from it or refactor it into being better. It might be, as pointed out, functional code, and the end user might not notice (or they might; shitty code is brittle and prone to having bugs), but all else being equal, if there are two products and one has shitty code and one is beautifully architected, I know which one I'd rather use, assuming the state of the code is known.
> Those who write code do care about the code though

Woof, our careers have brought us across very different coworkers.

> This makes me wonder if one day we will see artisan software developer (I mean, the idea of software craftmanship is already here).

Would you rather the software that drives your car be "artisan software", where labels were carefully chosen by a human?

Software isn't the end product. It's a tool that's supposed to do something we want. We may want an artisan to design our house or iPhone, but we don't want them using "artisan hand crafted" rulers and compilers.

Just because I want/use an artisan knife or bake my own bread in my kitchen doesn't mean I want an artisan microwave or raise my own cows.
I would never feel confident driving over a “vibe coded” bridge. Some products demand careful human attention to every aspect of the design.
To be cynical, software "engineering" has largely been a joke forever. We don't get licensed or inspected outside of very specific fields. Most of it is slapped together quick as an MvP and pumped out with bugs fixed as they're prioritized by managers.

Significant portions of our field think simply typing a codebase is just too much work, let alone proving it works. So you're appealing to a quality market that doesn't really exist to begin with. Unlike knives, which always had that high-quality market.

Then, artisan products are often made with higher quality materials and have an essence of personalization that gives a "soul" to the object (tsukumogami). The time it takes to make is measured in hours, maybe days. And then you have it.

Software just isn't personal like that (and cuter marketing doesn't count, that's a different department). Software can't be made of higher quality parts that feel weighty in your hand. It's just something you interact with. And it takes time to build and requires updates, so the valuation model is a lot less clear.

You can argue that you can make less buggy software. But users today refuse to pay for software more often than not. It must be free, or they won't try it. And they rarely appreciate stability as much as they complain about being behind.

I just don't see this coming to pass. It sounds like cope, like a telegraph operator saying someone will opt for "artisan messaging" at the dawn of the landline.