1. A method comprising: receiving a source text in a first language; generating, via a processor, a machine translation of the source text, wherein the machine translation is in a second language distinct from the first language; generating a first list of alternative translation possibilities in the second language corresponding to a first portion of the source text; generating a second list of alternative translation possibilities in the second language corresponding to a second portion of the source text, wherein the first portion of the source text is distinct from the second portion of the source text; ranking the first list of alternative translation possibilities, to yield a ranked first list of translation alternatives in a first order; presenting, to a first user, the machine translation, the ranked first list of translation alternatives in the first order, and the second list of alternative translation possibilities, wherein the user is participating in a collaborative translation of the source text from the first language to the second language with a second user, the collaborative translation allowing the machine translation, the ranked list, and the second list of alternative translation possibilities to simultaneously be presented to both the first user and the second user; receiving an input from the first user, the input identifying a translation possibility from the second list of alternative translation possibilities; re-ranking the ranked first list of alternative translation possibilities in the first order based on the input, to yield a re-ranked first list of translation alternatives in a second order; presenting the re-ranked first list of translation alternatives to the first user; and transmitting the re-ranked first list of translation alternatives to a device associated with the second user for display to the second user, such that the re-ranked first list of translation alternatives is simultaneously presented to both the first user and the second user.