What should I be aware when I want distribute say 0.0001 bitcoin to 50 bitcoin wallets. I this be done with one transaction? what are the implication of transaction fees?
I want my students to experience the bitcoin phenomena.
Bitcoin Stack Exchange is a question and answer site for Bitcoin users, developers, and enthusiasts. It only takes a minute to sign up.
Sign up to join this communityI read this on bitcoinfees.com
If any of the outputs (including any change) of your transaction are less than 0.01 BTC, then a fee of 0.0005 BTC is required.
This is called bitcoin dust. Smaller transactions as you intend todo comes with a fee.
Well, I don't see the point in giving each student 0.000002 bitcoin, they cannot do anything with it as it is less than the transaction fee.
I'd recommend you to split maybe 1 BTC or 0.5 BTC amongst your student, to that they can actually use the coins.
For the practical side of the question, this can (and should) be done in a single transaction to reduce data overhead. Bitcoin allows to specify multiple inputs and outputs in a transaction, so you can take some bitcoins from your wallet and send some amount to 50 different addresses. However though, I think the original Qt client does not support this. (EDIT: As julian-goldsmith pointed out in his comment, it does seem to have this functionality after all.)
You could consider using a more advanced wallet like Armory (I have no experience with MultiBit or Electrum, maybe they can do the job as well). I think the web-wallet on Blockchain.info supports multiple outputs as well.
As long as the outputs are sufficiently big, like Filip says bigger than 0.01 BTC, you will not have to pay a fee, but of course you always can to support miners.