newself: changing money at a hotel is also a really bad deal. While there may be no 'commision' a fee is built into a really crappy exchange rate.
If you need cash, get it at your bank before you leave home. Otherwise, paying for things with a credit card will usually get you a good exchange rate (and miles!). Plus, its safer than carrying cash. Withdrawing cash from a bank machine (with a debit card) will also get you a good rate, but there may be a service fee. Getting a cash advance on your credit card also gets you a good rate, but if you don't pay it off right away, the interest is a killer (ditto with purchases).