> In the pre-LLM era, the economic value of "understanding" and "shared knowledge" about the programs themselves was only that it made maintenance and changes cheaper.
This only holds if there is a bright line separation between the problem, the solution, and the implementation of the solution. And that is not the case.
Understanding the implementation frequently improves your understanding of the solution, which improves your understanding of the problem, which leads to better solutions. Sometimes it leads to realizing that there is a completely different problem you should be solving.
So what I’m refuting is that there is no value to understanding the program.
But beyond that black box products that users know how to use but don’t understand is also a vast oversimplification.
Frequently software is useful specifically because it forces users to adopt a process not just because it allows them to do something they were previously doing faster. In those cases the process is usually informed by the implementation, so the user needs to understand parts of the implementation even if it’s indirectly.