1. A method implemented by a computing device, the method comprising: running a first program on a computing device and capturing interaction data between the first program and at least one external service during the running; executing the first program and a second program on the computing device in parallel, wherein the first program and the second program are driven by the interaction data during the executing, and wherein the second program is a translated version of the first program in a different programming language based on a translation process; verifying an accuracy of the translated version at least in part by comparing program flow and in-program data at equivalent lines of code between the first program and the second program; responsive to detecting a discrepancy in the program flow or the in-program data between the first program and the second program based on the comparison: analyzing the discrepancy to determine a nature of the discrepancy; and modifying the translation process, based on the nature, to generate a modified translation process based on at least one line of code corresponding to the discrepancy; translating the first program into a third program based on the modified translation process; and verifying an accuracy of the third program at least in part by comparing program flow and in-program data at equivalent lines of code between the first program and the third program.