Why we replaced SyncML with our own contact sync protocol · HackerTrans