Stroustrup entkräftigt: komplexität ist software-notwendigkeit
Der Informatik-Pionier Bjarne Stroustrup hat erneut seine Meinung zu den besten Programmiersprachen geäußert – und sie ist, wie so oft, keineswegs nachvollziehbar. Er plädiert für die Akzeptanz von Komplexität in der Softwareentwicklung, anstatt sich nach vermeintlicher Einfachheit zu sehnen.
Die ironie der vermeintlichen ‘easy-to-use’-sprachen
Stroustrup betont, dass der Aufstieg der Künstlichen Intelligenz und die fortschrittlichen Bibliotheken die Entwicklungsprozesse beschleunigen, aber gleichzeitig die Komplexität unvermeidlich und sogar notwendig ist. Das Ergebnis? Eine klare Trennung in zwei Kategorien: Programmierer, die Code ausser Haus beziehen, und die, die jeden einzelnen Befehl selbst schreiben – und diese Letzteren sehen den Einsatz von vorgefertigten Lösungen als ‘inakzeptabel und beschämend’. Es ist eine bemerkenswerte Aussage, die die Diskussion über die Effizienz von Softwareentwicklungsprozessen neu belebt.
Die Industrie teilt sich in zwei Hauptströme auf, getrieben von der Notwendigkeit, massive Projekte zu bewältigen. Die eine Gruppe, die sich auf reine Code-Generierung konzentriert, sieht die Verwendung von vorgefertigten Lösungen als Verrat an der Kunst des Programmierens. Der andere Bereich, der sich auf die Entwicklung komplexer Systeme konzentriert, erkennt die Notwendigkeit von Werkzeugen an, die die Last reduzieren.

C++ bleibt die ‘schweregewichte’-option
Stroustrup selbst, einer der Schlüsselarchitekten der Programmiersprachenentwicklung, distanziert sich von der Vorstellung einer einfachen, allumfassenden Lösung. Er betont, dass C++ kein der grössten Sprachen überhaupt ist – im Vergleich zu C# oder Java ist es eine Nischenanwendung. Doch seine ‘Komplexität’ wird als seine Stärke gesehen, insbesondere für die Entwicklung von hochkomplexen Systemen, die heute eine ganz andere Rolle spielen als vor drei Jahrzehnten. Es ist ein Paradoxon: Die Ursprünglichkeit von C++ ermöglicht es ihm, Probleme zu lösen, die moderneren Sprachen oft nicht bewältigen können.

‘Nur zwei arten von programmiersprachen’ – eine provokante feststellung
Stroustrup‘s provokante Aussage – „Es gibt nur zwei Arten von Programmiersprachen: diejenigen, die die Leute megen, und diejenigen, die niemand benutzt“ – ruft zum Nachdenken an. Es ist ein Kommentar zur aktuellen technologischen Landschaft, der die Frage aufwirft, warum einige Sprachen trotz ihrer Komplexität so weit verbreitet sind, während andere kaum Beachtung finden. Diejenigen, die von diesen Sprachen ‘beschwert’ werden – C++, Java, Python – sind in der Regel die, die für ihre Robustheit und Skalierbarkeit geschätzt werden, während die vermeintlich ‘einfachen’ Sprachen oft auf Bibliotheken und Umgebungen angewiesen sind, die selbst komplex sein können. Die ‘Einfachheit’ ist oft eine Illusion.
Die Wahrheit ist, dass jede ‘einfache’ Sprache ihre eigenen Schwächen hat – eine Abhängigkeit von externen Bibliotheken, ein hoher Ressourcenbedarf. Und genau dieser Komplexität kommt es letztendlich an. Stroustrup's abschliessende Bemerkung: “Die Perfektion ist der Feind der Nützlichkeit”. Ein Zitat, das in der Softwareentwicklung wie immer gilt.