Zerstört Software-Abstraktion die Zivilisation? (2021)
(datagubbe.se)-
Zusammenfassung von Jonathan Blows Argumentation
- Die Weitergabe von Informationen zwischen Generationen wird verwässert.
- Für die Aufrechterhaltung von Technik ist Praxis wichtiger als Theorie.
- Software steuert die Welt.
- Abstraktion fördert Unwissen über Low-Level-Programmierung.
- Wenn Low-Level-Wissen verloren geht, kann wichtige Software nicht mehr gewartet werden, was zum Zusammenbruch der Zivilisation führen würde.
-
Kritik und Gegenargumente
- Blows Behauptungen enthalten viele Fehler und Missverständnisse.
- Die Wahrhaftigkeit von Informationen ist wichtig, und Blows Angaben sind in vielerlei Hinsicht falsch.
- Die Kennzahl "Five nines" (99,999 % Verfügbarkeit) wird weiterhin verwendet.
- Robuste Software existiert weiterhin, und der technische Fortschritt geht weiter.
- Die Behauptung, Abstraktion führe zu Kompetenzverlust, ist übertrieben.
-
Technologischer Fortschritt und Abstraktion
- Viele Programmierer möchten sich nicht mit Speicherverwaltung und Zeigern beschäftigen.
- Es gibt weiterhin viele Menschen, die C- und Assembler-Code schreiben.
- Neue Sprachen wie Rust legen den Schwerpunkt auf Robustheit.
- Abstraktion trägt zur Weiterentwicklung neuer Technologien bei.
-
Die Debatte über Produktivität bei Facebook
- Facebooks eigentliches Produkt ist eine Plattform zur Auslieferung von Werbung.
- Viele Programmierer tragen dazu bei, Werbesysteme zu verbessern.
-
Vergleich von Vergangenheit und Gegenwart
- Die frühere Umgebung der Softwareentwicklung unterscheidet sich stark von der heutigen.
- Moderne Computer sind deutlich robuster als früher.
- Mit steigenden Erwartungen der Nutzer nimmt die Komplexität von Software zu.
-
Abstraktion und Wissensverlust
- Abstraktion kann den Verlust von Wissen beschleunigen.
- Gleichzeitig gibt Abstraktion vielen Menschen die Möglichkeit, kreativ zu sein.
- Entscheidend ist, die technische Grundlage zu erhalten, mit der wichtige Systeme gewartet werden können.
-
Fazit
- Blows Argumentation ist in Teilen berechtigt, in vielen Punkten jedoch übertrieben und missverständlich.
- Softwarekomplexität und Abstraktion sind lösbare Probleme.
- Die größeren Probleme der digitalen Welt sind Privatsphäre und Freiheit.
1 Kommentare
Hacker-News-Kommentare
Ich unterrichte Systemkurse an der Montana State, und oft verstehen Studierende zu Beginn des Kurses nicht, was ein Dateisystem ist
Ich stimme Ihrer Meinung zu. Ich habe Blows Vortrag gesehen und halte die Kritik für wichtig
Wenn ein älterer Webentwickler über Abstraktion klagt, zielt er auf React-Entwickler
Dinge wie JavaScript auf dem Server und React haben das Web in das Chaos der Softwareentwicklung verwandelt
Blow spricht oft hervorragende Punkte zur Entwicklung an, verfehlt aber häufig den Kern
In modernen Software-Umgebungen gibt es viele Probleme, und ich denke, übermäßige Abstraktion ist eines davon
Nicht jede Vereinfachung ist eine Abstraktion. Nicht jede Abstraktion ist eine Vereinfachung
Es gibt viele schlechte Abstraktionen. Wegen der „Religion der Geschwindigkeit“ und Arroganz in der Technik bleibt es oft beim ersten Versuch
Der Autor gehört zu einer neuen Generation und versteht nicht, wovon Blow spricht
Ich widerspreche der Behauptung, dass „die Zivilisation zusammenbrechen wird, wenn wir die Low-Level-Dinge vergessen“