There's two more things that TDE does not protect...
1) Data in memory. Anyone with access to RAM, or who can cause a core dump and grab a copy of it can read whatever was in memory at the time. If you're concerned about this - at the very least clean up core dump files regularly.
2) Data in transit. The article does say that TDE only protects data at rest. I just feel that this needs to be emphasized. If you want to protect data on the network, you need to enable network encrpytion as well.
I'm hoping that Microsoft will address the encryption+compression problem in the next release. It's really not that difficult. Decrypt the backup stream, compress it, and re-encrypt it. Sure it will add CPU cycles, but if your compressing backups and encrypting databases, you're probably not concerned about the few extra CPU cycles anyway.
I use compressed backups and my own testing has found that TDE increases the backup size by almost double. YMMV.