But the question is, can bitcoin really substitute dollar or other currency sometime soon?
Not until the confirmation issue is resolved. I wouldn't want to buy a chocolate bar and have to wait 10-30 minutes until my payment was confirmed. I want to pay and go instantly.
Good point! Although in some shops they accept bitcoin, which is provided by BitPay. There is also an ability to chargeback if you think you received the wrong product etc. They dont wait for a confirmation
(which I dont really understand)But replacing the whole fiat money would be sometime possible in some years when everybody in the world starts using bitcoin. Today its just impossible, some people dont even have knowledge on how to handle an electronic device. So lets wait and see

because it depend on the amount, for small amount you must wait for confirmation(otherwise there are better chance for a possible attack...), hence the chocolate example, for big amount you can go with the pending transactions