Warum ist Software so komplex geworden?

Last Update: 2025-07-19

Warum wurde eigentlich Software so komplex? Ist es JavaScript?

Wandel der Erwartungen

Software is eating the world. - Marc Andreessen

Oh, hallo. Hast du heute versucht, ein div horizontal und vertikal zu zentrieren? Hat Visual Studio entschieden, dass der Fehler Ihr ganzes Programm ist, nur um neu gestartet zu werden und der Fehler existiert einfach nicht mehr? Musstest du deinen Language Server neu starten, weil er genug hatte?

Warum wurde Software also so komplex? Ich denke, die Antwort liegt in den sich wandelnden Zeiten und Erwartungen an Software.

Als ich meinen ersten Computer bekommen habe (wahrscheinlich um 2006-2007), gab es noch den Spruch

save often, save early

das ist kein erwartetes Verhalten mehr und gehört nicht mehr zum Zeitgeist.

Menschen erwarten automatisches Speichern. Checkbox umschalten, sofort alles ändern. Ansonsten rufen sie Ihren Kundensupport an.

Software war ein Zusatz, jetzt ist sie erforderlich. Schulen verwalteten ihre Stundenpläne und meldeten Schüler mit Papier und viel Organisation an. Eltern können jetzt den Stundenplan ihres Kindes und ausgefallene Stunden nachsehen, wenn ein Lehrer sich krank gemeldet hat. Du verwendest wahrscheinlich spezialisierte Software und nicht nur Excel-Tabellen oder einen einfachen Texteditor.

Früher war Software etwas Nettes, das deinen Workflow beschleunigte (ähnlich wie LLMs heute) oder große Dinge möglich machte, aber heute existiert sie, und es gibt keinen Weg daran vorbei. Deine Unternehmensdateien werden sofort in einem zentralen Repository gespeichert und können nach Informationen durchsucht werden. Das erfordert mindestens ein Intranet, Dateisynchronisation, Versionsverwaltung und Autorisierung.

Sie reichen Ihre Steuern mit einem Computer (und vielleicht einem Smartphone?) über das Internet ein.

Beim Bearbeiten einer Person in einem CMS-System reicht es vielleicht nicht aus, nur die Daten abzurufen und zu bearbeiten. Die Daten müssen möglicherweise live aktualisiert werden, wenn jemand anderes sie zur gleichen Zeit gleichzeitig bearbeitet.

Früher mussten Menschen nur miteinander sprechen oder schreiben, um Dinge als verschiedene Gruppen zu erledigen, jetzt müssen Ihre lokalen Spezialitäten von Softwareprodukten auch miteinander kommunizieren.

Wandel der Risikoprofile

To express our gratitude, your next cup of coffee or late night snack is on us! - CrowdStrike

Heute kann Ihre Codezeile dazu führen, dass jemand fälschlicherweise des Betrugs und der falschen Buchführung beschuldigt wird, was manchmal dazu führt, dass jemand sich das Leben nimmt.

Der Aktienmarkt war vor ein paar Jahrzehnten viel langsamer. Heute sind Millisekunden die Grenze zwischen Gewinn und Geldverlust. Software handelt und eine falsche, ungetestete Konfiguration kann ein ganzes Unternehmen in den Bankrott treiben oder einen großen Teil der digitalen Welt zum Erliegen bringen und mit ihr Teile der realen Welt.

Wandel der rechtlichen Anforderungen

Das Internet ist für uns alle Neuland - Angela Merkel, 2013

Die Politik in einigen Teilen der Welt hat auch entdeckt, dass Menschen mit Software ziemlich beschissene Sachen machen können (oder meistens nur alles ausspionieren wollen, was sich bewegt).

Software muss sich an das Gesetz halten, entgegen der Meinung der Tech-Bros (oder die kaufen sich einfach einen Sitz in der Regierung).

In der EU müssen Sie eine Datenschutzerklärung haben, die Benutzer über die beschissenen Dinge informiert, die Sie mit ihren Daten machen. Sie haben das Recht, vergessen zu werden und Ihre Daten herunterzuladen (einschließlich, aber nicht beschränkt auf Moderation und interne Kommentare zu Ihrer Person).

Wandel des Umfangs, überall

Software muss zuverlässig, ständig aktualisiert, immer weiterentwickelt sein, niemals ausfallen und trotzdem einigermaßen erschwinglich bleiben.

Das bedeutet Software basierend auf Datenbanken mit einem Dateisystem, das in drei verschiedenen Rechenzentren läuft, Logging, Observability, End-to-End-Testing und Live-Migrationen.

Software muss nicht nur für eine bestimmte Zielgruppe funktionieren, Software muss für alle und alles zwischen 0 und mindestens 100 Jahren (Ihre Oma und die Kinder, die dieses TikTok-Ding benutzen) entwickelt werden. Sie muss auf Apple-Computern, Windows ARM und x86-64, Linux, Smartphones und vielleicht auf einem Fernseher funktionieren. Farbpaletten können nicht zufällig sein, weil manche Menschen möglicherweise nicht zwischen verschiedenen Farben unterscheiden können. Ihre Software muss anzeigen, sprechen und braille können.

Software hat fast keine Grenzen und kann überall eingesetzt werden.

Software muss alt werden können, wir sprechen von Jahrzehnten und bald und vielleicht sogar jetzt einem halben Jahrhundert.

Schlusswort

Zusammenfassend ist Software zu einem großen Teil der realen Welt geworden und muss viel mehr reale Dinge tun und mit ihnen umgehen.

Natürlich sollte ein Blog wahrscheinlich nicht mit Next.js geschrieben werden.