There's a website that shows you how much money you've received, from whom, and how much you have now? Wow, the public nature of bitcoin had never sunk in until I saw that.
Using Bitcoin the way the EFF is using it (giving out a single address for all transactions) will result in anyone being able to see all funds received. The recommended way, however, is for each transaction to receive its own address. For example, clicking on the EFF's Donate button would then create an address that would be used only for that one donation.
One such innovation that takes advantage of a publicly visible blockchain is an online lottery. With a public transaction log, one can wager and know that the operator isn't cheating by not revealing all wagers. BitLotto, for instance just had a monthly draw. I know exactly how many tickets were bought because each wager appears in the blockchain. I can then know that the winning tickets was chosen fairly because I can replicate the algorithm myself. And I can know that the payment to the winner was made as that will appear in the blockchain as well.
Because nearly all the expenses of running a lottery are absorbed by the bitcoin network, these lotteries can be run profitably even when paying out 99% of the amounts wagered.
In other words, Bitcoin is versatile. When anonymity is desired it can be attained. When a fully auditable transaction register is needed, there are methods to allow that as well.
Not quite. Your wallet can have an arbitrary number of addresses. You can receive at one address, then send that balance out to a dozen different people using a dozen different sending addresses.
...no. That's not how it works. Your wallet has a pool of private keys. Addresses are the corresponding public keys. You can send or receive from any address you have the private key for (minor simplification, but doesn't affect my point).
There is no transaction necessary to send money from a completely new address, other than the transaction itself. All of your addresses point to the same wallet.
Each bitcoin is owned by the public key that it was last sent to. You can't send it from a different key - it won't be accepted by the network. The public key continues to own it until a transaction signed by that public key is accepted by the network. Read the whitepaper.
It's like my wallet is open to everyone!