Setting aside software for now, this comment helped me clarify something in my thinking. I feel like this is pretty incomplete and I don't explain it well, but here's a start......