Good question. I wonder I'd its better to read up on how to be a better coder (code complete etc.) and also learn about architecting systems. None of this is usually taught in CS.
No one, but that's an irrelevant hypothetical because people do want to hold them and that's unlikely to change. Even if people in the US did want to get paid in a different currency, they would still need some USD to pay their tax bill.