"You're safe if none of your addresses are used to receive coins from people who know who you are and you never send coins to people who know who you are."
(1) How am I supposed to know who "knows" me and who doesn't? Strangers to me often have all sorts of information about me in their databases, even if I have never heard of them before.
(2) A sufficiently unique and detailed set of transactions can be sufficient to uniquely identify you, like a fingerprint.
Any anonymity in this system is very weak and won't withstand any vigorous investigation effort by competent technical investigators. It bears no resemblance to the strong anonymity available with, for example, David Chaum's digital cash and various relatives of that blind-signature scheme. It is in no sense secure in the same kind of way the hash chain or other cryptographic properties of the system are secure. Of course the Chaumian ecash systems don't have the decentralized trust in terms of transaction clearing that this system has. So there's you're tradeoff, better currency security but no strong anonymity. It's probably reasonable to give up anonymity for better currency security if one has to make that tradeoff, but let's not throw around the description "anonymous" as if Bitcoin securely has that property, it does not.
Now somebody could develop a system to issue securely anonymous digital bank notes, and use bitcoins as the reserve currency for the issuing bank(s), thus achieving both strong anonymity and currency security greater than fiat or government-currency-backed anonymous cash. One could audit the bank reserves by looking at its publicly signed bitcoin chains (taking advantage of the *lack* of anonymity in Bitcoin). This strikes me as a pretty nice combination, but it would require some additional software and services currently lacking.