> unwilling to call a product "done"

Unlike modern physical products, software often has a contiguous lineage, with less individual hard cuts between releases, that e.g. necessitate setting up a new production line for each iteration.

Of course you can call individual releases "done" but then you also have to accept that the same realities apply to it that it's utility will decay over time same as e.g. household appliances do, where you also wouldn't use one that's 40 years old.

Calling a software project as a whole "done" (and claiming that it doesn't have bugs and doesn't need maintenance) would be akin to Apple saying the iPhone (the whole product line/smartphone niche) is "done".

> Of course you can call individual releases "done" but then you also have to accept that the same realities apply to it that it's utility will decay over time same as e.g. household appliances do, where you also wouldn't use one that's 40 years old.

Physical appliances decay because of wear and tear, which digital products are uniquely immune to.

Replacing and fixing physical wear and tear is more like having to occasionally clean your logs folder, or reinstall your OS. Admin maintenance on a specific installation, not updates to the product from the developer. The product itself stays the same.

Software churn, updates that change the product itself and not just the way it's run, are more like General Electric requiring you let one of their employees into your house to paint the appliance a new color every month.

> Calling a software project as a whole "done" (and claiming that it doesn't have bugs and doesn't need maintenance) would be akin to Apple saying the iPhone (the whole product line/smartphone niche) is "done".

Which seems like it would be fine? What do 95% people use their smartphone for, that an iPhone from 10 years ago was not already able to do? Besides, this comparison is a bit circular as software dropping support is often the part that forces consumers to upgrade hardware.

Hardware products without software churn do in fact get used basically forever. When they do break, they can also be replaced with the exact same product, without all the issues that running old software gets you.

Apple could make a forever-iPhone that lasts 10 years, or 40 years. But it's more profitable, competitive, exciting, and convenient to release a new product line every year (while turning old hardware into e-waste via software updates).

I'm not saying it's better or worse that things are this way, but it does cause some problems and should not be presented as inevitable.

All that you say is true in a world (or for product categories) that has reached a technological plateau.

The point about household appliances that I was trying to make wasn't about individual appliances decaying (= breaking down), but about the utility of a model decaying over time, as it e.g. becomes uncompetitive because it has worse energy efficiency than it's modern counterparts (or in the case of refrigerators uses harmful greenhouse gases).