> I think where intuition fails a lot of us (myself included) is that in the software world if you have the code/documentation for something then building it is trivial. But in the hardware world, even if you have all the instructions and knowledge, actually applying that know how to create a working project is still very far away, through certainly nowhere near as far away as if you have started from scratch.
It's certainly true that you can build software if you have the code (well, mostly true. Modern frameworks suffer from quite severe bitrot). But I'm not sure that you can extend it.
Large software projects rely on people understanding them. If everyone who worked on the project is gone, it's very hard for someone to regain the architectural understanding required to extend or refactor things. Without any overlap, there's nobody to answer questions. As long as there's been a continuously overlapping stream of developers, that knowledge is more or less retained - but if all the developers leave, and someone picks up the project again later it's almost impossible for them to make meaningful improvements.
It's certainly true that you can build software if you have the code (well, mostly true. Modern frameworks suffer from quite severe bitrot). But I'm not sure that you can extend it.
Large software projects rely on people understanding them. If everyone who worked on the project is gone, it's very hard for someone to regain the architectural understanding required to extend or refactor things. Without any overlap, there's nobody to answer questions. As long as there's been a continuously overlapping stream of developers, that knowledge is more or less retained - but if all the developers leave, and someone picks up the project again later it's almost impossible for them to make meaningful improvements.
AI probably changes this completely.