We introduce a novel way of efficiently dealing with worst-case insdel errors, i.e, insertions and deletions in communications. Insdel errors are strictly more general, much harder, and significantly less well understood than symbol corruptions. The synchronization strings we introduce can transform insdel errors to these more benign Hamming-type corruptions, essentially without overhead. This has many applications. One important example is a simple black-box construction which transforms any error correcting code (over a large constant size alphabet) into one that can correct insdel errors as well. This leads to the first near-MDS insdel error correcting codes which for any rate R > 0 can efficiently tolerate a 1-R-o(1) fraction of worst-case insdel errors.