N
Entropie....;)
Naja, Algorithmen z.B. sind doch recht grundlegend, und wiederverwertbar.
bestimmte Programmiertechniken haben sich bewährt und sind wiederverwertbar.
Es gib eine lange Tradition von Assembleroptimierten Programmen, nur in welchem Algorithums Buch oder welcher Internetseite tauchen diese Erfahrungen/Bibliotheken auf?
Assemblerdidaktik war schon immer irgendwie schlecht, zu allem übel hat man es auch recht oft mit recht ineffizienten und so unleserlichen Asm-Code zu tun.
Was hier fehlt, ist eine Standardisierung, wie sie die Mathematik erfahren hat.
Man könnte per Gesetz vorschreiben, dass Hersteller wie Intel Prozessoren nur mit anständig beigepackter Entwicklungsumgebung verkaufen dürfen. Aber wäre der Compiler dann wirklich noch so gut?
Hintergrund: In vielen Musikproduktionen hört man bis zum Abwinken die Werksounds von elektronischen Musikinstrumenten. Musiker sind auch bequem, und setzen mit großer Vorliebe Fertigsounds ein. Und gerade gut gemachte Fertigfunktionen kann man gut editieren, helfen verstehen.
Jetzt kommt aber auch noch die Entwicklungsbehindernde Patentregelung dazu. Viele gute Unterprogramme sind patentiert, so mancher Buchcode blöde lizensiert.
Wege zu finden, die dem Wildwuchs der Sprachen entgegenwirken, wäre eine wichtige wirtschaftliche und soziale Basis. Ich denke, das Standardisierung, Einfachheit, Effizienz und Transparenz gute Orientierungspunkte sind. Aber die Standardisierung sollte auch nicht so sein, das man sehr lange braucht, um davon zu profitieren. Zum Beispiel: Bis man C++ Fortgeschrittener ist, hat man längst Assembler gelernt und kann sich den C++ Compiler incl Funktionen selber schreiben.
...Jetzt kommen aber noch die Betriebsysteme mit ihren Eigenheiten und undokumentierten Funktionen. Es wäre an der Zeit, Windows in Open Source umzuwandeln, sämtliche Funktionen gut dokumentiert und wiederverwertbar zur Verfügung zu stellen.
Aber bis das geschehen ist, hat man sich wieder 50 neue Direcx Verionen heruntergeladen, verlangen die neuesten Grafikkarten die neuesten Directx Versionen usw...
Und man bräuchte eigentlich auch eine Hardwarestandardisierung...
Mathematische Erkenntnisse sind weniger (Geld-) marktorientiert als Programmierung, könnte man meinen, so dass letztlich auch die Standardisierung, die Didaktik und die Wiederverwertbarkeit oder die Transparenz deutlich besser sind.
Man sieht das Problem aber auch bei der Hardware selber: Mainboards wären normalerweise gut wiederverwertbar, aber finde mal eine standartisierte, auswechselbare Grafik für dein 5 oder mehr Jahre altes Mainboard.
Wenn man für Linux Konsoleprogramme schreibt, hat man eine recht gute Basis für wiederverwertbaren Code, gute Hardwareanbindung, dokumentierte Funktionen und gute, standardisierte Schnittstellen. Was Linux braucht, sind gut ausgearbeitete, standardisierte Pfade durch den Code und Tool - Dschungel
Linux Programmierer müssen sich unbedingt das Prinzip "weniger ist mehr" und den Segen der Open Source Entwicklung vor Augen führen, denn ein Wildwuchs schlecht dokumentierter Open Source Programme ist kaum noch Open Source, hat nicht mehr viel mit Transparenz oder gar Effizienz zu tun.