> Asteroid mining on any sort of commercial scale is far future, not near future. Even with fully reusable rockets, asteroid mining wouldn't be profitable; anything we need can be obtained cheaper on Earth.
It's certainly in the future, it just all depends on what is far to you. Many companies who want to get in on this are hoping to attempt within the next 10-15 years (obviously commercial mining would come some years later after a successful attempt). If it can be successfully navigated it would have the potential to be crazy profitable!
It's too expensive to bring materials up but if you can mine materials in space and deliver them to the various space companies / government departments is where you'd make your money. Mining water, in theory, should be crazy cheaper as long as you can capture the asteroid efficiently enough. NASA has already said they would love to see more work in this space so they can purchase materials cheaper while in space and they're even hoping to capture an asteroid in the mid 2020s as a type of test for this scenario.
> Satellites are generally easier targets to hit than ballistic missiles.
This misses my entire point: in order to destroy the kinetic projectile you would have to launch a preemptive strike against the satellite. There is no way around it. You won't be able to defend yourself against a large projective being precision dropped onto your location without a lot of energy (so depending on what country you are maybe you can knock several into a few direction or vaporize with a high enough yield but you only get one chance at destroying it). Meanwhile a ballistic missile, while faster, can be destroyed with a hot enough laser.
I understand they're not practical and if you want to use an asteroid itself that's even more awkward. But when we start mining asteroids, in my opinion, it's going to become crazy practical and cheap.