I understand that point of view. It just missing that most of the actual scientists are not top programmers. It is hard to be both. You can hire professional programmers to do some work but that has its limit and you will need more active participation from actual scientists. We usually have this discussion at CERN. But usually the very delicate components and code that works in harsh conditions and time constraints are done in a more throughout process with help of professional programmers (many of them are very capable physicists) but the majority of physicist can work in a world where what is important is to get something done in reasonable amount of time. Usually physics analysis where physics and statistics is more important than the implementation itself.
I don't know about the dynamics of how this plays out usually in NASA but I would think this problem is there and the approach is probably the same too.