I think it's interesting, the debate on looking at code. Do you think it makes a difference whether the software factory is running against a mature codebase (10+ years worth of tech with plenty of questionable engineering decisions) versus new codebases, potentially authored entirely by LLMs?
Does ensuring the "quality" of a codebase no longer matter for long term maintainability? Or do we just not care about maintainability anymore?
Quality absolutely matters, but it's more about system design and less about implementation now. I think, for eg, it is way more important to have a strong opinion about what is happening at the folder level than at the file level
Why do we now care more about the folder level than the file level? The overarching architecture of a system has always mattered more for ensuring its quality than any individual file, but the system is still composed of those files, and they are all interconnected.
Basically, conventional software engineering wisdom has said each file should be well-engineered, and, indeed, we opened pull requests and reviewed code on the file-level. I'm not saying that's definitely the right way, but I'm wondering why you think that's no longer how we should view software engineering.
I think it's interesting, the debate on looking at code. Do you think it makes a difference whether the software factory is running against a mature codebase (10+ years worth of tech with plenty of questionable engineering decisions) versus new codebases, potentially authored entirely by LLMs?
Does ensuring the "quality" of a codebase no longer matter for long term maintainability? Or do we just not care about maintainability anymore?
Quality absolutely matters, but it's more about system design and less about implementation now. I think, for eg, it is way more important to have a strong opinion about what is happening at the folder level than at the file level
Why do we now care more about the folder level than the file level? The overarching architecture of a system has always mattered more for ensuring its quality than any individual file, but the system is still composed of those files, and they are all interconnected.
Basically, conventional software engineering wisdom has said each file should be well-engineered, and, indeed, we opened pull requests and reviewed code on the file-level. I'm not saying that's definitely the right way, but I'm wondering why you think that's no longer how we should view software engineering.
I think if you use agents to their maximum capabilities, you mostly don't have to review individual files. Smarter people may disagree!