Dark Wallet coinjoin goes through a server, but the server cannot see any details of your transaction nor can they steal your coins. All details are encrypted for the counterparty, and all signing happens in the client.
The only weakness here is that a server gets taken down stopping the service in which case you switch to another service. Even if the NSA controlled the server, they wouldn't be able to steal your coins or observe your transaction at all.
Lastly the server is sharing messages with other servers (we are improving this too), so it isn't really centralised. It is federated kind of like how different email providers inter-operate with each other. The decentralised aspect will only improve over time as we develop standards and deploy technology.
More info: https://bitcointalksearch.org/topic/m.6526623
DW dev
It is centralized or it is not. Like being pregnant. You cannot be a little bit pregnant. Dark Wallet, although I believe it can be a great tool, is still centralized. You have to trust a 3rd party somehow. DarkCoin is decentralized.