Ansichten eines Informatikers

Zum Verfall von Software und Informatik

Hadmut
27.6.2021 2:25

Ein Leser beklagt, dass ich auf alles Mögliche schimpfe, aber nicht genug auf Software.

Zunächst mal schimpfe ich auf die verdammte Rechtschreibreform, denn zu Abi-Zeiten noch verdammt gut in Rechtschreibung musste ich gerade nachschauen, ob man „alles Mögliche“ groß oder klein schreibt, weil mir mein Sprachgefühl hier sagte, klein. Stimmte. Vor der Rechtschreibreform klein, seither groß. Ich werd’ mich an den Scheiß nie gewöhnen, und wir hatten sie nur, weil die Politdeppen, genannt Kultus, wichtig sein wollten.

Der Leser klagt:

Hallo Hadmut,

es wundert mich, dass du als Informatiker kaum einen Beitrag (gibt es überhaupt einen – kann mich grad nicht entsinnen, hänge aktuelll aber auch ca. 4 Wochen mit dem Lesen hinterher) zum Verfall der Softwareentwicklung und der grundsätzlichen Ressourcenverschwendung schreibst. Es ist absolut gruselig, was sich hier seit Jahren für eine Entwicklung abzeichnet. Nur kurz ein paar Punkte zu diesem Thema:

1. Es werden simpelste Programmieraufgaben als sogenannte vorgefertigte Pakete in eigene Entwicklungsprojekte eingebunden. Das geht mittlerweile bereits bei einfachsten isString- und isArray-Methoden los, die oft nur 1- bis wenige Zeilen groß sind. Nun muss man ja nicht jedesmal das Rad neu erfinden – die Crux ist jedoch, dass diese Pakete unzählige Abhängigkeiten zu weiteren Bibliotheken erzeugt, dadurch der Code unnötig aufgebläht wird und zu einer massiven Ressourcenbelastung und -verschwendung führt. Exemplarisch: https://slack.com/libs/desktop – Sitzt da überhaupt ein Programmierer?

Haben die Leute verlernt, selbst zu entwickeln?

2. Der von Google entwickelte Chromium (dürfte wie üblich datenschutzrechtlich fragwürdig sein) wird vermehrt als allgemeine Projektgrundlage genutzt, wodurch das nicht-performante Javascript zum Tragen kommt (was man ja zur die Einbindung der Pakete nutzt) und per se mehrere parallele Prozesse mit einer unglaublichen RAM-Auslastung für im Grunde simpelste Aufgaben verschwendet werden.

3. Vermehrt erzwungene Online-Registrierung und Anmeldung zur Datenabgreifung, die mittlerweile sogar seitens NVidia für Grafikkartentreiber(!) durchgedrückt wird, weil sich die Normalnutzer daran gewöhnt haben und viel schlimmer noch: sich nicht wehren können, d.h. keine Kompetenz haben, diese umgehen/aushebeln zu können und es (gewohnt) hinnehmen (müssen).

4. Um sich greifende Aufblähung (Bloat) von Software und Zwangs-Updates. Zum Einen wird zur eigentlichen Kernsoftware (also zur vom Nutzer habend wollenden Anwendung) für den Nutzer unnötiger, aber für den Anbieter wg. Datenabgriffen und Pseudosoftwareschutz durchgedrückte Zusatzsoftware beigemischt und oft ohne Ausklammerungsoption mitinstalliert. Ein bekannteres Beispiel dürfte die von Microsoft forcierte Installation von Candy Crush in einem automatischen und nicht verhinderbaren Windows 10-Update sein, aber auch die in normalen Windows-Versionen eingebaute und nicht gänzlich verhinderbare dauernde Datenabfrage, der man nur durch die für Privatanwender nicht (so einfach) zu erwerbende LTSC-Version beikommt. Dieser Bloat bremst nicht nur die Anwendung aus, sondern vergeudet abermals unnötig Ressourcen, was normalen Anwender benachteiligt. So führt bspw. auch die Einbindung des Denuovo-Kopierschutzes für Spiele dazu, dass sich das Spiel und die auszuführene (.exe-)Datei um mehrere 100 Megabyte(!) aufgebläht werden, sich das Spiel dadurch nachgewiesen verlangsamt und damit den Spieler ggü. Spielern von gecrackten Varianten deutlich benachteiligt.

5. Updates und Software-Leasing statt Eigentum: Mittlerweile installiert schon jede mittelgroße Software ungefragt einen Hindergrunddienst zum automatischen Update. Hinzu kommt, dass man gerade im Unternehmensbereich vermehrt auf Cloud-Dienste und Online-Programmier-Services wie GoogleScript setzt und sich damit in Abhängigkeit der Willkür unangreifbarer multijurisdiktionaler Konzerne begibt, bei denen man nicht weiß, ob deren Angebot morgen noch so funktioniert wie gestern, greift diese Unsitte auch im Privatbereich immer mehr um sich. Allgemein registriert man sich bei einem Anbieter und nutzt dessen online verfügbares Angebot, bei dem man eine Software oder Medien nur vermeintlich erwirbt. Ein morgiges Update könnte den gestrigen Erwerb gänzlich verfälschen und Inhalte plötzlich nur durch zusätzliche Abonemments nutzbar oder komplett hinfällig werden lassen.

6. Programmierumgebungen (IDEs) fördern diese Unsitte und sind mittlerweile selbst davon betroffen. Man vergleiche nur einmal die Performanz, Ressourcenauslastung und die Dauer zur Erstellung und Kompilierung einer einfachen C#-Winforms-Anwendung zwischen Visual Studio 2019 CE und Visual Studio 2012. Allein das wechseln des Tabs führt zur 1-sekündigen Denkpause. Nur teilweise wird dabei auch die One-fits-All-Attitüde, die u.a. mit UWP seitens Microsoft durchzudrücken versucht wurde, zurückgedrängt.

Man schaue sich bspw. nur mal Postman an, was einfache REST- oder HTTP-Anfragen durchführt. Aufgebläht bis zum geht nicht mehr. Registrierungszwang. Chromium. Ressourcenvergeudung noch und nöcher. Ein reinster Albtraum, der durch Marketing gepusht wird – und ein Armutszeugnis für jeden halbwegs seriösen Entwickler.

Ein sehr guter Artikel von 2018(!) mit weiterführenden Links dazu findet sich bspw. hier: https://tonsky.me/blog/disenchantment/

Übrigens wird auch selbst in seinen Grundlagen nicht weiterentwickelt – als ob man nach der Erfindung des Autos beim Ford-T steckengeblieben wäre: https://blog.plan99.net/its-time-to-kill-the-web-974a9fe80c89

Doch, den Themenbereich hatte ich schon mal angesprochen, war sogar der längste Artikel dieses Blogs, ist aber schon länger her. Verriss der Programmiersprache Scala, und Spiel mir das Lied vom Tod der Informatik, allerdings von 2011 und 2015.

Ich habe solche Themen beruflich übrigens sehr häufig angesprochen und heftig kritisiert, aber im Blog selten angesprochen, einfach weil ich die allermeisten Leser damit abhänge.

Die Crux an solchen Artikeln ist, dass sie eigentlich überflüssig sind, denn wer so tief drinsteckt, dass er weiß, wovon ich rede, der weiß auch schon selbst, was ich rede.

Der Leser spricht hier schon richtige Punkte an, aber er spricht sie in einer klein-klein-Micromanagement-Weise an. Das Problem ist viel allgemeiner, viel weitreichender.

Und irreparabel. Nicht mehr in absehbarer Zeit in den Griff zu kriegen.

Wir haben eine ganz entsetzliche Entwicklung in der Informatik, die vor ungefähr 10 Jahren (genau kann ich es nicht mehr sagen und auch keinen exakten Anfang nennen) eskaliert ist. Es fällt ungefähr damit zusammen, als man den Informatiker, der noch weiß, was er tut, durch den „Coder“ ersetzte, der nur noch irgendwas zusammenkleistert oder eben die Massenarbeit macht. Der ganze Softwarekram ist in den letzten 20 Jahren einen ganz entsetzlichen Weg gegangen, auch wenn ich gerne zugestehe, dass es auch viele positive Aspekte und Entwicklungen gibt. Etwa seit sich SVN, GIT, GITHUB und ähnliche Tools entwickelt haben, vor allem aber auch durch das Java-Umfeld und dessen brachiale Automatisierung durch Softwareentwicklungsumgebungen (IDE), gefördert vor allem auch dadurch, dass Java eine grauenhaft vermurkste Sprache mit unglaublich viel überflüssigem unnützen Code ist, den man ständig wiederholen und den immer selben Mist neu schreiben muss (sog. Boilerplate), ging der Trend zur Automatisierung.

Das ist eng verzaht und schaukelt sich damit hoch, dass – gerade auch durch Arbeitsmodelle wie Scrum – die Szene durchsetzt ist von Laien, Quereinsteigern und so weiter, befeuert durch Dummschwätzer der Sorte Ranga Yogeshwar, die sowas verbreiten wie „Jeder kann programmieren“. Das ist wie „Jeder kann sich sein Auto selbst bauen“ oder „Jeder kann sich seine Corona-Impfung in der Küche selbst kochen“.

Dazu kommt dann noch Korruption bei den politischen Auftraggebern, wenn etwa jede Stadt, jedes Dorf, jede Uni, jede Behörde sich ihre eigene Software schreiben lässt, also viele Leute gebraucht werden um viele Software zu schreiben und jeder irgendwas vor sich hinmurkst.

Wir leiden unter einer Quantitätslawine und einem Qualitätsschwund.

Dazu kommt, dass Software heute nicht mehr „beherrscht“ wird, sondern in den allermeisten Fällen nur noch ein zusammengeklatschter Drahtverhau aus Versatzstücken ist. Ich hatte das mal beschrieben, weil ich früher mal sehr gerne Ruby on Rails benutzt habe (ein „Framework“ um typische Web-Datenbank-Anwendungen zu schreiben). Ruby hat sehr schöne Eigenschaften, aber auch ein paar Nachteile, die den Produktiveinsatz sehr problematisch machen. Auch Ruby on Rails bläht sich – wie alles – immer weiter auf, man versteht schon lange nicht mehr, was darin alles vorkommt, und irgendwann waren neue leere Rails-Projekte plötzlich hundertmal so groß, weil auf einmal Unmengen von Javascript- und Node-Zeugs reingeladen wurde, durch das kaum noch durchzublicken war. Dann kam die Sprache Rust – auch nicht regulär und nicht regulär dokumentiert – und wollte eine Rails-Alternative in Rust namens Iron bringen. Die wollte ich damals ausprobieren. Ging nicht. Weil das Tool, das die Software zusammennagelt, aus unzähligen Quellen unüberschaubar viele Libaries runterlädt von unüberschaubar vielen Autoren, unbekannten Autoren, dass die Macher selbst nicht mehr wussten, was da eigentlich alles zusammengebunden wird, weil jede Library ja wiederum eigene, ständig wachsende Abhängigkeiten hatte. Sie wussten, dass es gerade nicht geht. Aber sie wusssten selbst nicht, warum. Wie soll man sowas produktiv einsetzen können?

Denselben Effekt hatte ich damals mit Scala und dem Tool Maven, das Programme compilieren und binden soll. 20 bis 30 Minuten hat das Ding wer weiß was alles aus dem Internet zusammengesammelt, und es nicht mal nachvollziehbar angezeigt. Daraus wird dann irgendwas zusammengekleistert, und keine Sau weiß mehr, was alles in dem Programm drin steckt und wer dran mitgeschrieben hat. Angriffe erfolgen längst nicht mehr durch Programmfehler, sondern dadurch, dass die Angreifer einfach selbst die Bibliotheken schreiben, die in was auch immer eingebunden werden.

Kein Mensch weiß heute noch, was in der Software noch drinsteckt. Woher sie kommt.

In meiner Studienzeit kommt man ein „Hello World“ noch in C schreiben, das mit damaligen Compilern – wohlgemerkt, selbst statisch gelinkt! – zwischen 700 und etwa 4000 Byte hatte, wenn man puts statt printf verwendete.

Produziert man heute mit Sprachen wie go oder rust ein Hello World, ist man gleich oberhalb von 500kByte, weil die statisch linken, aber gleich alles, den gesamten Mist mit reinlinken, ob benötigt oder nicht. Keine Sau weiß mehr, was da alles in diesem Programm drin ist.

Schönes Beispiel: Go.

Das ist sehr angenehm, wenn man da etwas compilieren will, was es da draußen im internet schon gibt. Man sagt einfach „go get PROGRAMMNAME“ und der Rest läuft automatisch ab. Früher, mit C und C++, musste man sich den ganzen Kram mühsam selbst zusammenladen, einzeln compilieren und installieren, ./configure aufrufen, *h-Files und includes anpassen und so weiter. Heute sagt man einfach „go get PROGRAMMNAME“ – fertig. Und man muss schon suchen gehen um herauszufinden, aus welchen Teilen welcher Herkunft das Programm dann eigentlich zusammengenagelt ist. Blindes Vertrauen gegenüber der ganzen Welt. Wo doch die ganze Welt so vertrauenswürdig ist.

Es wird eigentlich kaum noch programmiert im herkömmlichen Sinne. Es werden fast nur noch fremde Bibliotheken und Programmbeispiele zusammengenagelt, und keiner weiß mehr, was da läuft. Inzwischen gehören in jedes Programmierteam Fachleute, die nur noch damit beschäftigt sind, herauszufinden, aus welchen Teilen das Programm zusammengenagelt wurde und zu versuchen, die unterschiedlichen (und teils inkompatiblen) Lizenzenen aller Teile irgendwie auf einen Nenner zu bringen.

Gleichzeitig wuchern die Tools und Sprachen unkontrolliert.

Vor 25 Jahren war man noch gut dauf, wenn man C, C++, Shell und Perl konnte, damit hatte man erst mal für 2, 3 Jahre Ruhe und konnte sich um seine Aufgaben kümmern. Weil es nur sehr wenige Leute gab, die das fortentwickelt haben, und man ungefähr wusste, woher was kommt.

Heute ist da draußen eine Lawine von Sprachen und ständig neuen Versionen, und man verwendet oft ein Drittel, die Hälfte oder mitunter zwei Drittel seiner Arbeitszeit, nur um sich ständig über alle Neuerungen auf dem Laufenden zu halten. Das ändert sich alles oft im Monats-, Wochen- oder sogar Tagesabstand. Ich kann schon gar nicht mehr überblicken, was ich an Sprachen alles können müsste, um noch überall mitrühren zu können. C++, Go, Rust, Java, Clojure, Kotlin, Scala, Ruby, Python, LUA, Javascript, Node, bash, powershell, Csharp, ObjectiveC, Swift, R dazu noch jede Menge Umgebungen und Frameworks, Graphiklibraries und und und. Und es kotzt mich an, dass sie gegeneinander kaum oder keine Vorteile haben, aber ständig neue Syntax- und Semantikvarianten erfunden werden, und man irgendwann durchdreht, weil man lauter ähnliche, aber nicht gleiche Sprachen lernen und können muss.

Ich kenne ein Security-Team aus wirklich hochqualifzierten Leuten, die Software auf Qualität prüfen sollten, und da inwzischen längst die Waffen strecken, weil die Entwicklungsabteilung zwar auf Java Virtual Machine entwickelt, aber jedes Einzelteam, teils jeder Entwickler auf irgendeine andere Sprache oder ein anderes Tool schwört (Java, Scala, Clojure, Kotlin, JRuby und alles zusammengerührt, und wenn man denkt, man hat alles, kommt die Fraktion um die Ecke, die auf Groovy besteht), und dann die einen mit Puppet und die nächsten mit Ansible und die Nachbargruppe mit Chef installiert, während wieder andere das alles für Schrott halten und auf RPM-Pakete schwören, denn das Durcheinander gibt es nicht nur in der Softwareentwicklung. Weil da längst keine Sau mehr durchblickt, heißt das heute „Installier-Deinen-Scheiß-halt-selbst“. Vornehm ausgedrückt „DevOps“. Und weil man das nicht mehr selbst kann, holt man sich sündhaft teure Trainer ran.

Deren Ratschläge eine Halbwertszeit wie die Milch im Kühlschrank haben, denn der heiße Scheiß ist längst Docker – oder war es für einige Zeit, denn Docker ist so von vorgestern und längst durch kubernetes abgelöst, während sich andere noch in docker swarm verirrten, und der hippe Entwickler ja längst von Docker zum mehr oder weniger kompatiblen podman gewechselt sind, das nit kubernetes Code teilt. Eigentlich hätte ja Rocket die hippe Alternative sein sollen, aber die hat nicht gezündet. Und so ist halt jedes Jahr etwas anderes dran.

Ich finde das immer drollig, wenn die Leute, besonders die Politik, sowas wie „Lebenslanges Lernen“ propagieren und uns einen erzählen, dass wir uns fortbilden müssten, wir könnten nicht mehr von 30 bis Rente mit demselben Wissensstand durchkommen.

Als Informatiker dreht man inzwischen durch und führt sich selbst ad absurdum, weil man eigentlich nur noch damit beschäftigt ist, sich – in Bezug auf seinen Software und Rechner, aber auch seinen Wissensstand – ständig selbst zu aktualisieren. Das ist inzwischen krank und funktioniert nicht mehr, weil der Aufwand nicht mehr in Relation zur Produktivität steht. Und dabei gehöre ich noch zu denen, die sehr viel automatisieren, etwa mit Puppet, Docker und so weiter.

Das Problem ist, dass irgendwann der Selbstzweck den Nutzen überholt. Früher, vor 20 Jahren, gab es mal den Witz, dass Informatiker Probleme lösen, die es ohne sie gar nicht gäbe. Das ist inzwischen Realität.

Seit der große IT-Hype losging und die Politik meinte, wir müssen jetzt alle IT machen, selbst die, die viel zu blöd dafür sind, natürlich einschließlich der gesamten Frauenförderung, hat sich das Ding verselbstständigt und ist eine riesige Beschäftigungsmaschinerie, derne Produktivität lausig ist. Immer öfter erlebe ich es, dass Bugs, die man gemeldet hat, auch nach 5, 10, 15 Jahren nicht bearbeitet wurden und die Fortschritte immer kleiner werden, weil es immer schwerer wird, die Programme noch zu beherrschen.

Deshalb gibt es eigentlich auch kaum noch Informatiker mit dieser vollen Wissensbreite, wie es sie vor 20 Jahren zu meiner Zeit mal gab. Ich merke immer wieder, wie manche Leute staunen, wenn sie meinen Lebenslauf lesen, welche fachliche Breite ich da abdecke. Oder abgedeckt habe.

Heute sucht man Entwickler, die das Tool X und die Sprache Y beherrschen. Leute mit einem sehr kleinen Fokus, die sich nur darum kümmern, in einer Programmierungebung gut zu sein und auf dem Stand zu bleiben – und oft nicht mal das. Heute reduziert sich das auf „Java-Entwickler“ oder sowas in der Art. Jemand, der überhaupt ein Java-Programm durch den Compiler bekommt und noch ein bisschen Kenntnis von der Laufzeitumgebung und typischen Bibliotheken hat.

Das ist hochgefährlich, denn das ist Mikroskop-Wissen, an dem dann hinterher keiner mehr durchblickt, was er da eigentlich noch macht. Ich habe das in den Sicherheitsschulungen gemerkt, die ich lange Zeit regelmäßig gehalten habe, und in denen ich Entwicklern immer ausgiebiger (und mühsamer) erklären musste, was eignetlich eine ssh und eine Terminalsitzung ist. Da kommen Leute, sie sitzen an Windows oder einem Mac, kennen irgendeine Entwicklungsungebung und irgendeine Programmiersprache, und vielleicht noch ein paar Elementargrundlagen von GIT – fertig. Mehr ist nicht. Und dann sollen die plötzlich DevOps machen.

Ich habe den Effekt auch in einem ganz anderen Bereich schon beobachtet.

In meiner Jugend habe ich noch Elektronik gebastelt. Bausätze, Lötkolben, Philips Elektronikbaukasten. Die Bücher habe ich noch irgendwo. Ich habe das noch mit Glühlampen, Widerständen, Kondensatoren, Transistoren und sowas gebaut, noch Transistorschaltungen berechnet und das Typenbuch nebendran liegen gehabt.
Analogschaltungen.

Heute läuft das alles anderes, heute hängt man kleine Platinchen, die man billigst aus China bekommt, an einen Mikrocontroller und ruft die Bibliothek auf. Man kommt mit der Funktion selbst kaum noch in Kontakt, sondern verwendet fertige Module. Wie bei der Software. Als Schüler habe ich mir noch den Verstärker für meinen Plattenspieler selbst gebaut und zusammengelötet. Heute käme ich nicht mehr auf die Idee, weil Verstärker heute mit ICs gebaut sind und die für Kleingeld fertig aufgebaut aus China kommen. Selbst löten geht kaum noch, alles Mikro-SMD. Dafür hat man dann Arduino, ESP32 und sowas, und programmiert das nur noch – mit fertigen Programmbeispielen und Bibliotheken. Und über eine bekloppte IDE.

Damit geht ein Kontrollverlust einher, wie es der Leser auch schon beschrieb.

Nichts kann ich mehr ohne einen Account beim Hersteller aufzumachen, meine persönlichen Daten zu hinterlegen und mich über die Mobilfunknummer und eine SMS zu authentifizieren. Neulich habe ich bei IKEA Lautsprecher gekauft und auch wieder zurückgegeben, weil man die Lautsprecher nicht mehr in Betrieb nehmen konnte, ohne bei der Herstellerfirma einen Account aufzumachen und ihnen Zugang zum Netz zu geben.

Meine altbewährte wunderbare Armbanduhr ist kaputt.

Ich habe mir eine Smartwatch gekauft. Zwei eigentlich. Ein billiges Modell mit Plastikarmband zum Schwimmen, und eine edlere im grauen Gehäuse mit grauem Lederarmband für sonstige Zwecke. Macht zwei Accounts. Bei einer musste ich die Software am Android-Store vorbei aus China laden, um die Uhr überhaupt in Betrieb nehmen zu können. Heute habe ich die teurere ausprobiert, habe einen kurzen Weg zu einem Laden als Sport-Event ausprobiert. Um aber die verbrannten Kalorien eingeben zu können, muss ich mein Gewicht eingeben. Und das geht nur, wenn ich vorher alle Daten eingegeben und mich gegenüber China mit meiner Handy-Nummer authentifiziert habe. Heißt: die Chinesen können alles, was ich mache, wohin ich mich begebe, wann ich schlafe und so weiter, über die Uhr auskundschaften. Es ist nicht mehr möglich, eine zeitgemäße Armbanduhr zu kaufen und einfach so zu benutzen, ohne dass jemand mit drin ist.

Keine Reise kann man mehr tun, ohne noch alle möglichen Apps auf dem Handy zu haben, und sich damit überwachen zu lassen. Die eine Fluglinie will die Tickets in der eigenen App drin haben und weist darauf hin, dass sie zwar schon Bord-Entertainment anbieten, aber nicht mehr mit Displays im Sitz, sondern nur noch mit WLAN. Das Handy zum Angucken muss man selbst mitbringen, natürlich nur über die Fluglinien-eigene App. Ein Flughafen meinte, man könne sich Durchsagen und so weiter eigentlich sparen, weil einen die Flughafen-App rechtzeitig und sicher zum Gate leitet. Das tut sie. Aber was tut sie noch?

An der Supermarktkasse nerven sie, ob ich nicht die Supermarktapp schon auf dem Handy hätte. Mein Jahresabo für die U-Bahn habe ich wegen Corona gekündigt. Das ging noch mit einer Chipkarte. Will ich jetzt fahren, muss ich entweder an den schmuddeligen und oft kaputten Automaten – oder per App fahren.

In meine Bankkonten komme ich ohne Authentifizierung über die App nicht mehr rein. Nur: Die App dudelt schon, bevor ich sie gestartet habe. Sie ist also im Hintergrund immer aktiv.

Und die Idioten von Bundesregierung beschäftigten sich damit, es zu verschlimmern statt zu verhindern, auch am PC sollen wir uns alle ausweisen, um noch im Netz surfen zu können.

Wir haben längst einen massiven Kontrollverlust, wir haben die Kontrolle über unsere Geräte, über unsere Autonomie, selbst über unsere eigene Software verloren.

Und ganz ehrlich:

Ich komme bei dem Rotationstempo nicht mehr mit, mit dem ständig neue Dinge aus dem Boden schießen. Nicht, weil ich zu alt wäre. Im Gegenteil, ich hänge die allermeisten Jungen noch locker ab und erzähle denen, wo es lang geht, und zwar mehreren aus verschiedenen Fachbereichen.

Aber: Ich habe keinen Bock mehr darauf. Der Aufwand, sich ständig auf dem neuesten Stand zu halten und sich über alle Änderungen zu informieren steht nicht nur in keinem Verhältnis zum Nutzen mehr, eignetlich erlaubt er fast gar keinen Nutzen mehr. Wir stehen vor Bergen von Software, meist lausig programmiert und nicht mehr wartbar, und ständig schießen neue Sprachen oder deren Versionen aus dem Boden, die sie nicht mal mehr richtig dokumentieren können. Zu immer mehr Sprachen, Frameworks und so weiter gibt es nur noch ein paar Beispiele, keine strukturierte Dokumentation mehr.

Als ich gerade so mit IT-Sicherheit angefangen habe, kam gerade „With Microscope and Tweezers“ heraus (1988), die Analyse zum ersten großen Internet-Wurm. Und Kuckucksei von Clifford Stoll (1989).

Das ist über 30 Jahre her, aber nichts ist besser geworden. Noch immer haben wir Pufferüberläufe und Würmer und Spione, und es sind immer mehr.

Es wird immer schlimmer, weil die Informatik immer schwachsinniger wird.

Man hat die erfahrenen Entwickler aus den Projekten gedrückt, gemobbt, rausgepresst, über diese Codes of Conduct, Leuten ihre eigenen Projekte weggenommen und sie durch politisch korrekte Leute der Kategorie Genderclown gegeben, so wie im Frauensport die Transen übernehmen. Nichts ergibt mehr Sinn, alles nur noch Chaos.

Immer wieder haben wir Zusammenbrüche irgendeines IT-Firmennetzes, in Schulen, Universitäten, Krankenhäusern, Gerichten, die dann oft Monate oder Jahre brauchen, um das Zeug wieder aufzusetzen. Obwohl sowas eignetlich innerhalb von 24 bis 48 Stunden laufen müsste. Weil wir nicht nur keine Fachleute mehr haben, sondern politisch überall Laien reingedrückt werden.

Eigentlich macht es nicht mehr Spaß, Informatiker zu sein, weil die Informatik keinen Spaß mehr macht. Es ist eigentlich nur noch so eine Müll-Lawine aus hochfrequent rotierendem Schrott. Informatik fühlt sich in vielen Bereichen heute an, als würde man in einem plastikvermüllten Meer rumschwimmen.

Ich verbringe längst einen großen Teil meiner Zeit damit, Bugs zu melden, Probleme zu googeln, Lösungen zu Softwareproblemen zu suchen, Inkompatibles zusammenzunageln, statt noch selbst zu entwickeln. Und das ist genau das Problem. Irgendwann hat das ein Amerikaner mal so schön beschrieben. Eigentlich sind sämtliche Programmiersprachen, die es gibt, Mist. Darin ist man sich einig. Es gibt n Programmiersprachen, und man müsste sie alle durch eine neue, geniale, unversaltaugliche Sprache ersetzten. Viele Leute gehen diese Unterfangen an. Das Ergebnis ist aber nur, dass es dann n+1 Programmiersprachen gibt, die genauso schlecht auf den nächsten wirken, der sie auch durch eine neue ersetzen will.

Als ich noch in Dresden war, so zwischen 2004 und 2007, war Linux, besonders das damals neue Ubuntu, ein wunderbar robustes, schier unkaputtbares und sehr zuverlässiges Superwerkzeug. Inzwischen ist vieles krampfig, und ständig wechseln die Verantwortlichen für irgendwas, wird irgendwas gegen etwas anderes ausgetauscht. Jahrelang hatte ich früher einen zuverlässigen Desktop (Gnome 2), jetzt aber ändert sich mit jedem Release irgendwas, muss ich wieder alles neu suchen, weil die Leute sich nicht mehr damit beschäftigen, etwas zu pflegen, zu warten, zu verbessern, sondenr zu verändern. Es muss irgendwie anders sein. Programme wie Thunderbird werden seit über 10 Jahren kaum oder gar nicht besser, nur ständig verändert. Weil irgendwelche Pfeifen sich selbst verwirklichen und einbringen wollen. Wie bei der Rechtschreibreform.

Die Informatik gibt es kaum noch, die Universitäten sind durchverblödet. Beide, Informatik und IT-Branche, kommerziell wie open source, sind längst durch die Gendermangel gedreht und meschugge. Der juristische Kram und das Lizenzgekrampfe, dazu der Datenschutz und nun noch der Jugendschutz erledigen den Rest, damit dann einfach gar nichts mehr geht.

Wir sind an dem Punkt angekommen, an dem wir ohne IT nicht mehr können und die IT nicht mehr aufrecht zu erhalten ist.

Und als ob das alles noch nicht schlimm genug wäre, haben wir dann auch noch Politikerinnen wie Angela Merkel, Ursula von der Leyen oder Dorothee Bär, die von IT weniger Ahnung haben als eine Suppenkelle, aber über alles bestimmen wollen.

Die Leute verstehen nicht mal, wie unfähig sie sind, weil sie so wenig Ahnung haben, dass sie nicht mal merken, was ihnen alles fehlt.

Alle reden von Digitalisierung und Fortschritt.

Eigentlich aber sind wir in einem Zerfall, einem Rückschritt, einer IT-Rezession. Es wird nicht besser, es wird immer schlechter.