Zusammenfassung
Aus der Ingenieursdisziplin vom Bau grosser (Software-) Systeme ergeben sich allgemeine Lehren zum Verstehen grosser Systeme. Manche dieser Ideen finden sich im Ansatz schon in antiken Philosophien. Sie sind dort verbal viel schwieriger zu definieren und zu klären als in Softwarebegriffen. Hierzu vergleichen wir z. B. die aristotelischen Kategorien für „das Seiende“ mit den Gesetzen der objektorientierten Programmierung. Laufende Softwaresysteme sind dynamische Systeme. Damit lehrt Software die Do’s und Don’ts beim Bau dynamischer Systeme und wir besprechen „tödliche Umarmungen“, die Kommunikation in Schichten, Grob- und Feinkörnigkeit, Spaghetticode usw. Dazu gehören auch sehr menschliche Konzepte wie das Arbeiten mit Entwurfs- oder Denkmustern und agiles Management in der Softwareentwicklung. Diese Prinzipien können auch durchaus allgemeinere praktisch-philosophische Anwendung finden.