That argument really doesn't work. Most of those censors are needed in orbital rocket too.
Shuttle software was far more complex then Falcon 9 and it runs on 70s computers.
GPS is not really needed, its just there as a backup. Launching on a ship might be tricky, but on land you can target a pretty big landing area.
> advances in stuff like convex optimization and fluid dynamics make a real difference in practicality of doing so, both on the rocket and during design.
True, but if you do more iterations on first stages that you drop into the ocean anyway, you can build design and iterate.
Shuttle didn't fail because of they could figure out reentry conditions.
> There's also significant improvements in metallurgy that make it easier to do things like long-life turbopumps, carbon-fiber composites help with mass fraction,
SpaceX uses very little carbon fiber.
There is truth to the improvements in metallurgy but its not metal issue that caused the RS-25 to not work well in practice is not really the metal.
> CNC machining and additive manufacturing that make complicated parts affordable
While true, that makes the benefit of making it reusable even more worth it.
It seems to me that SpaceX simple had the right design and the right setup to test and iterate. There was nothing fundamentally stopping NASA from doing this instead of the Shuttle. Nobody else even tried to make a reusable rocket.
I would argue this could have been done in the 70s and it would have worked nearly as well.