Programmiersprachen-Ranking: Viel Bewegung, JavaScript und Python konstant vorne
Die Programmiersprachen-Statistik ist in Bewegung – abgesehen von Platz 1 und 2 sind bei der Frühjahrsausgabe der RedMonk-Rangliste die Karten neu gemischt.
- Silke Hahn
Ungewohnt viel Bewegung hat die neueste Ausgabe der Rangliste von RedMonk zu verzeichnen, die seit 2010 Programmiersprachen gestaffelt nach der Häufigkeit von Pull Requests bei GitHub und der Diskussionsdichte bei Stack Overflow auswertet. Das Ergebnis sei zwar nicht statistisch valide, wie die Herausgeber in ihrem Bericht für das erste Quartal 2021 betonen, soll aber Aufschluss geben über gegenwärtige und mögliche künftige Trends beim Einsatz der Sprachen.
JavaScript, Python und Java liegen vorn
Etwa die Hälfte der in den Top-20 gelisteten Sprachen hat sich auf- oder abbewegt. Den RedMonk-Analysten zufolge spiegele das die Unruhe im IT-Bereich und die teils hektisch verlaufene Digitalisierung während der Pandemie. Vor dem Hintergrund stechen die Ranglistenführer besonders heraus: Während JavaScript unangefochten weiterhin Platz 1 einnimmt, konnte Python sich auf Platz 2 behaupten, dicht gefolgt von Java.
Bemerkenswert ist die hohe Positionierung von JavaScript auf Platz 1 trotz einer zunehmenden Fragmentierung der Frameworks und JavaScript-Community laut dem Survey "State of the JS 2020". Die Sprache selbst hat RedMonk zufolge seit Januar 2018 bei den Pull Requests auf GitHub um 453 Prozent zugelegt, allein im Vergleich zum letzten Quartal 2020 ist eine annähernde Verdoppelung zu verzeichnen gewesen. Entsprechend bezeichnen die RedMonk-Analysten JavaScript als "Naturgewalt", die im IT-Bereich zurzeit offenbar von Bedeutung ist.
Skriptsprachen mit RĂĽckenwind: Aufsteiger TypeScript
Mit etwas Abstand folgt PHP auf Platz 4, drei Sprachen besetzen gemeinsam Platz 5: C#, C++ und CSS. Mit deutlichem Abstand folgen TypeScript (8) und Ruby (9), die fast gleichauf liegen. Platz 10 hat C inne. Es folgen Swift, R, Objective-C, Shell, Scala, Go, PowerShell, Kotlin, Rust und Perl (die beiden Letztgenannten liegen gleichauf auf Rang 19). Passend zur Pole Position von JavaScript ist TypeScript um eine Stufe nach oben geklettert (von 9 auf 8) und hält sich seit einer Weile stabil in den Top-10: In den vergangenen zwei Jahren ist die Skriptsprache sechsmal aufgestiegen.
Das Wachstum geht den Analysten zufolge offenbar auf Kosten von Ruby, das um zwei Plätze abgestiegen ist (von 7 auf 9). Hier scheint sich ein langfristiger leichter Abwärtstrend zu bestätigen: Seit 2016 rückt Ruby in den Top-10 kontinuierlich weiter nach hinten und wurde mittlerweile von CSS überholt (bei dem umstritten ist, ob es bei Programmiersprachrankings mitzählen sollte). Performance-Probleme spielen laut Bericht bei Ruby eine Rolle. Andererseits ist es weiterhin unter den zehn beliebtesten Programmiersprachen und kann sich in einem recht umkämpften Markt auch behaupten.
Konstant gefragt: Statistiksprache R
Auch Go ist um einen Rang abgestiegen (von 15 auf 16). Hier von einem Abwärtstrend zu sprechen, wäre jedoch zu weit gegriffen: Go adressiert einen engeren Markt als manche andere Sprachen der Liste. Ein großer Durchbruch von Go, den manche erwarten, ist derzeit nicht in Sicht.
Um jeweils einen Platz aufgestiegen sind R (12), Kotlin (18) und Rust (19). Der Aufstieg der Statistik-Sprache R ist bemerkenswert, da Sprachen mit Spezialgebiet bei allgemeinen und gemischten Rankings tendenziell weniger gut abschneiden als es ihrer eigentlichen Relevanz entspricht. R gilt mittlerweile als "Ausnahme der Regel". Seit 2010 ist R von Platz 17 auf mittlerweile Platz 12 gestiegen.
Programmiersprachen-Ranking von RedMonk, Q1.2021 | |
1 JavaScript | 11 Swift |
2 Python | 12 R |
3 Java | 13 Objective-C |
4 PHP | 14 Shell |
5 C# | 14 Scala |
5 C++ | 16 Go |
5 CSS | 17 PowerShell |
8 TypeScript | 18 Kotlin |
9 Ruby | 19 Rust |
10 C | 19 Perl |
HintergrĂĽnde und Caveats
Seit 2002 gibt es das IT-Marktforschungsunternehmen RedMonk, 2010 haben Drew Conway und John Myles White dort die Programmiersprachenrankings eingeführt (damals unter dem Firmennamen Dataists). Die Analysten von RedMonk beziehen ihre Daten von der Plattform für Versionsverwaltung GitHub und der Diskussionswebsite für Entwickler Stack Overflow. Wie oft Entwickler auf Stack Overflow über eine Programmiersprache Fragen stellen (y-Achse) setzte RedMonk in Bezug zu der Anzahl der Projekte, die zu einer Sprache auf GitHub existieren (x-Achse). Die mit einer R-Funktion daraus gewonnene Korrelation soll als Trend die potentielle "Beliebtheit" von Programmiersprachen abbilden. Mittlerweile aggregieren die Analysten von RedMonk die Anzahl der Pull Requests bei GitHub, geforkte Repositories zählen nicht mit. Voraussetzung für die Aufnahme in das RedMonk-Ranking ist, dass die Sprache bei GitHub und StackOverflow vorkommt.
GitHub werten die Analysten aus, da es die derzeit größte Plattform für Versionsverwaltung von Software ist, eine plattformübergreifende Auswertung wäre ihnen zufolge statistisch nicht haltbar. Während für die oberen Ränge die Werte relativ genau ermittelbar sind, franst die Aussagekraft nach unten hin aus. Dass die Auswertungen mit Vorsicht zu genießen sind, betonen die Herausgeber des vierteljährlich erscheinenden Index selbst. Die Auswertung ist nur eingeschränkt aussagekräftig für Sprachen, die eine starke Community jenseits von GitHub haben (wie zum Beispiel Mathematica) und in Fachkreisen hohe Relevanz besitzen. Ihre Verbreitung und "Beliebtheit" lassen sich mit der RedMonk-Methode nicht adäquat wiedergeben.
Vergleich mit dem TIOBE-Index
Andererseits gilt die statistische Auswertung von RedMonk als wissenschaftlich fundiert im Vergleich zum monatlich erscheinenden TIOBE-Index, der lediglich die Häufigkeit von Suchtreffern auswertet. Diese Methode gilt als unwissenschaftlich und ist umstritten, die Ergebnisse von TIOBE weichen oft stark von den Ranglisten bei anderen Analysten wie RedMonk oder PYPL (PopularitY of Programming Languages) ab. So wären bei TIOBE die Plätze 1 bis 10 im Februar 2021: C (10), Java (3), Python (2), C++ (5), C# (5), Visual Basic und .NET (nicht in den Top-20), JavaScript (1), PHP (4), SQL und Assemblersprachen (nicht in den Top-20 bei RedMonk).
In Klammern angegeben sind die aktuelle Platzierung laut RedMonk. Der "Sieger" JavaScript beispielsweise rangiert bei TIOBE erst an siebter Stelle. Die aktuelle Ausgabe des RedMonk-Rankings mit mehr Details und weiterfĂĽhrenden Hinweisen ist online einsehbar.
(sih)