Duolingo ist eine der beliebtesten Sprachlernplattformen der Welt und mit über 200 Millionen Downloads eine der am häufigsten heruntergeladenen kostenlosen Bildungs-Apps bei Google Play.
Die meisten Menschen lernen eine neue Sprache, um bessere Chancen zu haben. Duolingo hat es sich zur Aufgabe gemacht, seinen über 300 Millionen Nutzern kostenlose und zugängliche Sprachkurse anzubieten.
Vorgehensweise
Nachdem die Anzahl der Zeilen im Code jedes Jahr um 46% gestiegen war, beschlossen die Android-Entwickler von Duolingo einstimmig, von Java zu Kotlin zu migrieren.
Ganz im Stil von Duolingo hat das Team den Migrationsprozess gamifiziert, indem es einen Wettbewerb mit einer täglichen Bestenliste veranstaltet und zum Lernen angeregt hat. Die erfahrenen Kotlin-Entwickler des Teams wurden zu „Kotlin-Prüfern“ und gaben in Code-Reviews Best Practices weiter, bis alle Android-Entwickler selbst zu Kotlin-Experten wurden.
Nach zwei Jahren war die Migration abgeschlossen und die Wartbarkeit des Codes hatte sich deutlich verbessert. Sie stellten fest, dass durch die Konvertierung einer Java-Datei in Kotlin die Anzahl der Zeilen um durchschnittlich 30 % und in bestimmten Fällen um bis zu 90%reduziert wurde.
„Insgesamt sind wir sehr froh, dass wir zu diesem Zeitpunkt auf Kotlin umgestellt haben. Wir sind gespannt, wie sich die Nutzung sowohl in unserem Unternehmen als auch in der Softwarebranche weiterentwickelt.“ – Art Chaidarun, Sr. Staff Software Engineer
Ergebnisse
Trotz neuer Produktfunktionen und mehr als doppelt so vielen aktiven Mitwirkenden ist die Codebasis fast so groß wie vor der Migration vor zwei Jahren. Das zeigt, dass die Entscheidung eine gute Investition war. Außerdem zeigen interne Umfragen, dass die Zufriedenheit der Entwickler um 129 NPS-Punkte gestiegen ist. Kotlin wird in den Antworten als wichtiger Faktor genannt.
Duolingo wird ständig erweitert und weiterentwickelt, genau wie Sprachen. Strenge A/B-Tests und In-App-Feedback sorgen dafür, dass das Team die Methodik kontinuierlich verfeinert und die weltweit besten Sprachlernangebote bereitstellt. Da die Android-App des Unternehmens jetzt zu 100% auf Kotlin basiert, kann es dies noch zuverlässiger und effektiver tun.
Erste Schritte
Weitere Informationen zum Entwickeln von Android-Apps mit Kotlin