Cost and convenience.
Cost: When time is money especially for our purpose designing something and getting it running on a chip with just a few clicks of a button is huge. When you decide to take the final design from development to production the cost is rather shocking, to reinforce the first point you then have to get in line at one of the world’s fabs and wait for that process to complete. In the meantime you may already be shipping thousands of FPGA‘s running your design to clients(Who made later ask why did you ever ship FPGAs, they are so less efficient, lol). And that’s exactly what we see, when hashing moved from the CPU it spent a little time in FPGA‘s before the ASICS came out.
Convenience: When designing a chip, simulation is really slow, pushing it out to an FPGA for debug is just the most practical thing to do. Later when it’s out in the field (where it gets its name) sending out a tweak is an extremely valuable feature to have. There is programmable logic that is not reprogrammable that preceded FPGAs. It should be noted though they’re not infinitely reprogrammable in the same way ram is infinitely rewriteable.