upvote
Craftsmanship is not dead in other industries in the same way it is being talked about for software.

Sure, that cheap desk that arrived in a flat box and got assembled by me and a screwdriver was mass produced in a factory. But it's design had way more expert craftsmanship put into it than would ever be feasible for a bespoke product. High upfront design cost, then mass produced at a low marginal cost.

That had been the state of art for software from the beginning. When you download Firefox, there is no expert programmer carefully building you an artisinal web browser. There is a CDN server sitting in a data center somewhere copying bytes out of its cache for you.

One of the things AI us threatening to do is replace the CAPEX craftsmanship, which has not happened at scale in other industries.

What AI has had more success at it replacing low end "artisinal" software; which is a category that has thus far been so uneconomical is essentially doesn't exist.

reply
Physical industries are very different than software. Leather shoes are made many times, 1x per customer. Code is created once, using the same product for all customers. This gives a lot more leverage on investing in a quality product.

I also don't agree that software is disposable for the same problem. If it's a temporary problem sure, the code is thrown away and we create something new when another, different problem comes up that can be solves with software.

But if it's an enduring problem? The code sticks around.

reply
There's a really interesting angle here from machining.

A screw used to be a bespoke and precious object. It took a ton of time and effort to make a good screw. What we would today consider a 'machine screw' could only be made by extreme labor from someone very, very skiled.

But the thing about machines is that a machine can transfer craftsmanship. You can make a single really, really good screw and then a machine can transfer the quality of that screw into countless new screws.

In the modern era, screws of all types and qualities are more or less equally disposable. We produce in the billions today screws that would take days or weeks to cut by hand.

I sort of view AI the same way I'd look at a lathe without a leadscrew. You have to make your own screw by hand the first time, and then you can transfer whatever quality you can muster to any number of new screws. If you get better at making new screws, you can load that into the lathe and start making more and better screws. But you are fundamentally limited by the quality of screw you can make yourself. If all you can manage is a crooked lumpy mess, then that's all you'll be able to get out of the machine.

reply
Slightly agree. :)

I don't think handmade shoes are the right comparison, unless you're talking about software that's meant to be used by just one person.

The more apt comparison might be to the engineers building and maintaining the manufacturing equipment in the shoe factory. It's a degree removed from the consumer, but there's definitely still craftsmanship involved there.

reply
Going to be awfully hard to market rote machine maintenance as craftsmanship, but there are some suckers out there
reply
"software is _unfortunately_ becoming more and more "disposable"[0], in the same way other products are"

Software has been the most disposable object in our lives since you could push a new build over the web. Builds change overnight, new versions every month with small updates. You have it backwards. Software has very little to no regulation compared to physical products and requires little to no effort to change. It has been disposable for decades at this point.

The change is large numbers of developers feel they are becoming disposable.

We will see if that is actually true if any of the AI companies can actually monetize their government cash infusions.

reply
> Builds change overnight, new versions every month with small updates.

Small updates are in no way throwing away the entire thing. A monthly update is not a start-from-scratch redevelopment. The old version was not disposed of in the way you are trying to imply.

reply
Thought experiment: would a junior developer armed with a modern day gpt-5.5 or opus 4.8 in 2015 would have been considered a 10x developer (assuming nobody knew they were using AI)?
reply
If you want to play games like that, you could also flip it around and ask if the AI would have been eventually fired (assuming no one knew they were talking to a computer).

Not sure what that proves.

reply

  > considered a 10x developer
The 10x developer never existed. You're telling me these people are doing a year's worth of work in 1.2 months? Seriously?! 10x?! In a year you can probably learn to program from scratch and participle if you're working 8hrs per day 5 days a week

We need to stop exaggerating so much. A 2x dev would be insane! A 1.5x dev does a year's work in 8. A 1.1x dev does it in 11. Saving a whole month itself is a massive amount of money saving. Our "10x" devs are really 1.1x and I'm not sure why we see that as anything less than wildly impressive.

Can we stop exaggerating so much?

reply
Of course they do. Have you literally never run into a problem that the average developer can not solve, but a expert can solve? That is infinity times more productive.

Even assuming that maybe the average developer could come to learn how to solve the problem you can easily see the gap between taking months to learn how to solve a problem versus already knowing how to solve it on short notice being over 10x.

Large productivity differences are mostly a function of differences in capability than differences of speed in solving rote problems easily within their capabilitys.

reply
Depends on whether they have one of the bosses that judge employees’ quality by the number of lines written.
reply
No. I experienced this firsthand. Brought on a on level dev who was using Ai. Created slop, when asked how it works, he just said “it’s all in the documentation” Lots of good documentation, but that’s bot what I needed. I needed an engineer that understood and knew what he created. I’m no longer at that org.
reply
[dead]
reply
I don't think craftsmanship is dead, but I do think we've built a lemon economy.

The thing that creates the lemon markets is that you can't really distinguish quality until after purchase. This is extra hard with software because the average population is tech illiterate. It's even hard to distinguish when people are tech literate (and not all of HN is). Same thing with cars, most people can't tell the difference, so they buy based on price.

We kinda did this to ourselves. We pushed everything online and killed all the stores. Remember when no one would buy anything online because how risky it was? Then they created "free returns, no questions asked" and people would buy a few things and then send it back? That gave a store like feel with the convenience of home. So everyone moved online, the stores struggled to keep up, the Internet retailers kept running in the red (just like physical stores), the physical stores died, then the online sites needed to get a profit, so free returns stopped or diminished (or drove up the cost of goods. Yay arbitrage! It's like paying for credit card fees when you pay with cash \o/). So now everything is just worse.

We do similar things everywhere. We've started running the whole economy this way. By looking at it through a spreadsheet. Data is great, don't get me wrong, I'm an incredibly mathy person myself, but these are just proxies. To do good data analysis you also need to see beyond the math. To see where the proxy measurement isn't perfectly aligned with the desired measurement. How the measurement[0] can mislead you.

  > "what I need for my usage"
I hate how prolific this saying is. You can't know that you have all you need for your use case without first knowing more than you need. It's not something you asymptotically approach, you *have* to surpass it[1]. Without going beyond you, with no doubt, are just setting yourself up to live with unknown unknowns. It's absolute insanity that we say this bullshit with a smug look like we've discovered something profoundly intelligent.

[0] all measurements are proxies. You can't measure anything directly. No, you can't measure a meter. You can measure a comparison to a meter stick. You can measure the time of flight of a laser. You can do all sorts of things like that but everything is always a proxy. If you think this just matters for high precision, well... just look at any house.

[1] an incredibly talented third party could get you exactly to where you need but now you've just doubled the people working

reply
More like a lemon tree economy. We can still talk about which trees to pick in order to not get lemons.
reply
> In my most other "industries", craftsmanship is not _dead_, but it's been pushed to the wayside for (significantly) cheaper and more available alternatives.

What if for a lot of software projects out there you don't need craftsmanship but you need something closer to real engineering: "This is what a sane PostgreSQL setup and transaction management for your app looks like, this is how you do validations and the ORM layer and logging and interaction with APIs and request queueing, this is how a good front-end page looks like, here's the off-the-shelf component library you use, here's how your process errors and show toast messages and handle redirects without messing around with browser history, here's all the accessibility and mean things you DON'T do (like hijacking scroll, not having contrast, having too many animations etc.)."

You don't have a rockstar building a bridge, nor do you usually have craftsmen taking risks on innovative materials and new approaches: most of the time, you just build the damn bridge in ways that have worked for decades and have been proven. Software industry doesn't seem to know what is proven or works, cause it's a moving target. Outside of maybe niches like writing code for airplanes, completely different standards there, not sure if most devs would personally want to work in those conditions, though.

Instead on one hand you have orgs and devs that are moving too fast and create a lot of churn without nailing down what works and doesn't, on the other hand you have a lot of people (myself included) that often have to push out slop because tech stacks are a mess and you still have deadlines which don't care about any of that, and largely the state of software development seems like a comparison between Windows 9X, the UI/UX of which was at least partially based on usability studies, and the modern version which... well, you can see for yourself.

reply
I still remember times when my work was mostly cleaning and refactoring old code written just to have higher LOC by devs from India paid in cents per line.

They were creating fast like AI and so mich like AI. But they were merely humans. Cleaning this slow and buggy mess took years killed many companies.

Today we have AI and industrial quantity of code without any engineering skill involved in the process

reply
Yeah, even though I like 'craftsmanship' here, stakeholders don't. I think "durability" is pretty good. 'Engineering standards' perhaps. I think we'll start to see the groundwork laid for software engineering as a proper engineering field, where specific performance characteristics are required for certain stakes.

Code can be like "heavy machinery", maybe needs license to operate. If an app has sensitive data in it, it becomes like a residential structure subject to building codes and inspections. I shudder to think of how this would play out it our oligarchic, anti-competitive environment though.

reply

  > stakeholders don't
Because why would they? Most stakeholders don't have long term incentives, only short term. So the incentive is to buy low, cut corners, sell high. What's more incredible[0] is that the aggregation of this somehow makes long term growth.

[0] It's not incredibly, it's monopolies

reply
Hah. What a dream. Instead they’ll hire a team of what is essentially interns and have them deploy mass amounts of minuscule features with 0 guidance because, “hey - it’s cheap as hell and does 75% of what it’s supposed to do.”

A license to operate the code, what a trip.

To be frank, most other business units that are not tech or tech adjacent do not care about the code in the slightest, or the maintenance / security / durability of said code. It’s a tough world to live in. We understand the value of good code, maintainable systems, and proper design across the board. Relaying that to leadership who does not see the value is time wasted.

“What do you mean we need to rewrite it to adhere to engineering spec? It already works. Just deploy it to production”.

I don’t think we’ll ever be treated as engineers. We just had a non-technical person spin up a vibe-app that is now in production, real (measured, methodical, secure, spec driven, efficient) development is actively being devalued at my company and probably across the board…

Rant over. You propose a good solution I just can’t envision a future like this, there’s too much value in “barely good enough”, but perhaps the ramifications of that will eventually bring about your proposed future!

reply
This is Indian Jugaad mentality being imported into Software Development. English equivalent is Kludge.

https://en.wikipedia.org/wiki/Jugaad

reply
Software engineers are not artists nor shoemakers. They are factory makers.

A good analyst makes a hand-crafted, custom report in a day. A programmer makes a factory that makes thousands of reports per second for a thousand clients.

I am yet to find a factory at HomeGoods.

Now the kind of factories we make might change, but isn't it the fun part?

reply
It is definitely the fun part to me and scaling a factory is the challenge we all decide every day we write code.

I think of AI agents as a factory unlock too.

Anything of quality needs inspection, review, and so on before you ship it. The human in the loop step is critical for value delivery.

Many software companies don't think of themselves as factories but they ship a product to a million customers and it solves a work unit of value for each customer.

Now AI agents may eventually reach a similar potential where many kinds of work can be manufactured by an agent.

The difference I think we are saying as engineers is shipping code isn't the unit of value if you want to turn a code agent into a code factory. It's just a byproduct of the value. Code is the liability, tool, or contract to delivering the value. Poor engineering results in poor output that cannot scale or poor quality that no one wants.

Without us inspecting and reviewing the output you risk the value not being delivered. Also without us, in the past you don't have a factory to begin (although vibe coding has collapsed how soon people can setup a software factory now), scaling it takes engineering effort. We build the factory and also ensure it is operating well to deliver that value to customers.

The ability for a program for loop to do a million iterations is foundational to our knowledge. AI agents just scale that up and is one of the tools we use to get there.

I'm not scared of agents making code cheap. I just see them as another tool in the arsenal to build scalable systems now. Yes some people don't need to scale and some don't need anything of quality. That's fine and is welcomed to improving people's lives. If they want to scale or need a quality factory line they come to us to deliver that still.

I think it's myopic to think this isn't coming. But it's also short sighted to assume our value is gone at building, shipping, and operating factories.

reply
> Now the kind of factories we make might change, but isn't it the fun part?

No, I don't think it's the fun part. Judging by the number of people glooming over LLMs, not many people seem excited about it.

reply
I remember when the Mac made everyone a publisher.
reply
Great programmers learn all documents are high latency state-machines.

A "Report" is just a document feature projection.

People may initially think this is in err, then think again... =3

reply
Yeah someone should train these LLMs on straight compiled machine code/binaries and the output so they can start writing directly in binary.
reply
That is like running Photoshop reliably on an encrypted image.
reply
> but anything built around long running business processes should not be treated in that way.

Arguably they are even more willing to cut corners though. Nothing by IBM or SAP should be considered "crafted", yet those companies have a strong place in the world of business today.

reply