It's a bit insane how it seems that "deterministic and reproducible", what I would consider to be a cornerstone of good software development, has apparently become an afterthought in the age of LLMs. All that for the sake of perceived convenience.
Not even convenience at times, I think that for some the amount of technical-sounding text LLMs can output on demand is comforting. It feels serious. It feels like it's doing something important.
Meanwhile the rest of us have to deal with these low-signal/high-noise walls of text in commit messages and PR comments. Or ask another LLM to summarize them, I suppose. "Doing and undoing, it's all work", as we say in French.
Devil's advocating here... is human code deterministic and reproducible? If I am assigned some non-trivial task, and write it twice with a week in-between, the code is not going to be identical, though it will meet the requirements. Or, if you give 3 different senior devs the same task on the same day, they will all be different, but still meet the requirements. What is different about asking an LLM to write code?
Well, for one thing, a human actually understands what he's doing. He isn't just generating something plausible based on statistics. As a result he makes fewer mistakes, can catch his own mistakes, and can learn from those mistakes.
Not even convenience at times, I think that for some the amount of technical-sounding text LLMs can output on demand is comforting. It feels serious. It feels like it's doing something important.
Meanwhile the rest of us have to deal with these low-signal/high-noise walls of text in commit messages and PR comments. Or ask another LLM to summarize them, I suppose. "Doing and undoing, it's all work", as we say in French.