This is nearly 100% due to NASA having a flat-to-decreased budget over the past 30 years. NASA gives an amazing return on investment, but Congress doesn’t care and NASA is forced to rely on third party companies.
I think it's a budget allocation issue, not an overall budget issue. SLS+ML and Orion are absolute money pits. MSR was ballooning in price for all the wrong reasons. On top of that, NASA got a taste of firm fixed price contracts leading to companies underbidding and putting up their own money, which worked out in some cases and not others (SpaceX and Intuitive Machines on one side, Boeing and Collins on the other).
Communism was the best thing to happen to NASA. It's absolutely insane how terrified we are of communism that we'd actually give NASA a nice budget just so we could prove we're better in a space pissing contest.
I think we need more communism to be afraid of lol
Except the issues aren't really tied to defunding.
NASA fundamentally changed who bears risk on space projects, pushing the risk to the open market. Legacy aerospace companies have been unable to compete when they have to eat cost overruns. A lot of startups have also been failing as well.
If the market was more mature, with multiple successful SpaceX like companies, this wouldn't be an issue.
Some startups are working and some aren't. That shouldn't be surprising. This is one of the reasons for dissimilar redundancy on a lot of these contracts.
"New Space" companies that survive the startup phase are stealing market share and giving a kick in the pants to legacy primes in a lot of areas. NASA centers need to shape up, too.
There are some good points in the article and I think some poor comparisons. I have seen examples of what they mention. NASA is still demanding things from companies like a cost plus contract but paying them like a firm fixed price contract. This basically means that the only companies that will succeed in the long run are those that have billionaire funding instead of shareholders. Assuming SpaceX doesn't have cost overruns is just silly, it's just that NASA doesn't see them.