3,7 Millionen Zeilen Flow-Code zu TypeScript migrieren
"Pinterest migrierte 3,7 Millionen Codezeilen von Flow zu TypeScript in acht Monaten, was zu besserer Typsicherheit, einer verbesserten Entwicklererfahrung und einer erleichterten Rekrutierung führte. Das Unternehmen hatte 2016 zunächst Flow gegenüber TypeScript bevorzugt, weil es eine graduelle Einführung und eine nahtlose Integration mit React bot. Als die Branche jedoch TypeScript als Standard für die JavaScript-Typüberprüfung etablierte, entschied sich Pinterest für die Übernahme aufgrund der besseren Community-Unterstützung, der Sprachfunktionen und der Verfügbarkeit von Talenten. Die Migration wurde mittels eines "Big-Bang"-Ansatzes durchgeführt, der den Prozess in drei Phasen unterteilte: Einrichtung, Konvertierung und Integration. Die Einrichtungsphase umfasste die Konfiguration von TypeScript und @typescript-eslint, während die Konvertierungsphase die Migration von Abhängigkeiten, das Ausführen von Codemods und das Unterdrücken von ESLint-Fehlern beinhaltete. Die Integrationsphase konzentrierte sich auf die Anpassung bestehender Systeme an die neue TypeScript-Umgebung. Das Unternehmen schrieb ein Skript, um den gesamten Prozess zu automatisieren und Merge-Konflikte und manuelle Eingriffe zu minimieren. Nachdem die Migration durch tägliche automatisierte Tests, mehrere Runden manueller Tests und byte-genauere statische Analyse validiert wurde, rollte Pinterest den TypeScript-Zweig erfolgreich aus. Das Unternehmen lernte viel von der Open-Source-Community und trug zu Stripes flow-to-typescript-Codemod bei. Pinterests Erfahrung dient als wertvolle Lektion für andere Unternehmen, die eine ähnliche Migration in Erwägung ziehen."