Ich habe mir mal zu den verschiedenen Themen hier Gedanken gemacht:
joergd & zille9:
Ich glaube ihr liegt da dichter beisammen als ihr denkt und habt nur eine verschiedene Perspektive. Im Bellatix-Code haben wir schon eine entsprechende Verbindung verschiedener Codeversionen, denn dort wird sowohl TV als auch VGA-Modus miteinander verwoben. Schön wäre naürlich auch ein derartig modularer Code für die verschiednen Administra-Versionen. Aber um bei Bella zu bleiben: Bei TV und VGA-Modus funktioniert das so gut, weil es beides ähnliche Textmodis sind. Schon beim G0-Grafiktreiber könnte ich mir eine ähnliche Integration schlecht vorstellen.
Ebenso scheint es mir unter TriOS nicht praktikabel zum Beispiel Plexus zu integrieren. Ich möchte erstmal schreiben, warum ich das denke, später verrate ich dann, warum Jörgs Idee aber auch nicht SO falsch ist...
Nun, der Grund warum Plexus und TriOS (oder auch mental) nicht so einfach zusammenwachsen können und müssen ist ihr Betriebssystemcharakter. Man kann den Hive aus dieser Perspektive als einfachen Computer ansehen - ich nenne das mal die 8-Bit-Klasse, obwohl der Hive natürlich alles andere als ein 8-Bitter ist, aber es geht mir mehr um die Struktur. Bei diesen Geräten gab es kein wirklich ausgewachsenes OS, sondern nur eine Ansammlung von Routinen im ROM, die Programme konnten die volle Kontrolle über das System übernehmen und musste(!) das auch tun. Das Programm selbst war also mehr oder weniger das OS. So ist es mit TriOS, Plexus.
Aber das Fehlen eines OS auf dieser Ebene ist ja auch eine positve Sache: Es ist halt alles sehr einfach und man kann ohne viel Aufwand selbst die Kontrolle übernehmen. Genau das ist doch aber auch das coole auf dieser Ebene: es ist einfach wie auf einem 8-Bitter, hat aber mehr Dunst unter der Haube. Wo man auf einem C64 noch Assembler bemühen musste, kann man die gleichen oder bessere Sachen hier einfach in Spin oder Basic realisieren.
Jörgs Ansicht ist aus zwei anderen Perspektiven richtig: Der Administra-Code von TriOS (nicht von Plexus!) für die verschiedenen Funktionsvariante könnte wie bei Bella modular werden. So könnte man alle Variationen in einer Datei pflegen. Ändere ich also etwas am FAT, so wäre es automatisch in allen Variationen aktualisiert. Ist aber eine Menge Arbeit, den Anfang habe ich schon gemacht, indem alle Funktionsnummern in die globale Konstantendatei gewandert ist. Ich hatte sogar schonmal einen ersten modularen Code gebastelt, aber da gingen dann subtile Sachen mit dem Sound nicht. Ist eine Menge Holz, darf nicht unterschätzt werden das!
Das wäre die erste Perspektive. Die zweite Perspektive ist noch spannender: TriOS ist die Einstiegsdroge; was wenn man, basierend auf einem PASM-Backbone, ein "echtes" OS mit Ressourcenverwaltung, Treibern, echten parallel laufenden Programmen, mehreren Screens/Fenstern schreibt? Das wäre doch mal eine Herausforderung für die Softwarspezilisten, ich selbst bin da noch nicht so weit. Meine Ebene ist 8-Bit-Klasse, also TriOS. Aber TriOS gibt so ein Konzept prinzipiell nicht her, Trios ist zu einfach gestrickt, TriOS ist Spin und das solte für die Einsteiger auch so bleiben. Fakt ist aber auch: So ein neues OS ist dann natürlich noch mehr Holz und deutlich komplexer, denn viele Codeobjekte aus dem OBEX müssen dann neu erfunden werden, böte aber das Potential, den Hive richtig auszunutzen. Und warum sollte so eine Sache nicht per GIT versioniert werden? Immer ran da, macht ein Projekt dort auf und los geht es!
Zur Frage "Was machen die vielen Drohnen mit ihrem Hive": Ich vermute, nicht jeder will unbedingt programmieren, und das ist auch ok so. Viele bauen den Hive, weil der Aufbau selbst schon Spaß macht, weil sie sowas schon immer mal machen wollten, und weil sie aus ihrer Jugend die ersten Gehversuche auf einem Eigenbau oder einem 8Bitter gemacht haben. Muss man akzeptieren, ist dann wie im Modelbau, wenn man sich die kleinen Schiffchen, Flugzeuge und Todessterne zufrieden in die Vitriene stellt. Ich hab's am Anfang auch nicht verstanden, weil ich selbst da ja auch anders gestrickt bin - für mich beginnte die Sache erst nach dem Aufbau, ich wollte basteln und programmieren wie in alten Zeiten und ganz unabängig sein. Ich habe es entwickelt, ich kann es reparieren und ich entscheide, wann Schluss damit ist - mich drängt da kein Fortschritt und keine Firma, die vielleicht irgendwann der Meinung ist, ich muss mein Gerät verschrotten und irgenwelchen neuen Plunder von ihr kaufen...
Thema SVN/GIT: Hmm, ich sehe das ein wenig als Modeerscheinung an und glaube ganz ehrlich nicht daran, dass auf einmal massig Programmierer kommen, nur weil ich TriOS auf GIT statt auf google-code verwalte. Im Endeffekt vergurke ich damit wieder massig Zeit, und mir persönlich bringt das absolut nix außer zusätzlicher Arbeit. Ich hab ja meinen Spaß, und das nicht zu knapp - das sollte niemand vergessen, aber das sollte auch niemanden davon abhalten selbst Spaß zu haben.
Wer auf dem Hive proggen und Spaß haben will, der wird das auch tun - ob nun mit GIT, SVN oder einfach lokal mit einer manuellen Versionsverwaltung. Das haben doch viele schon eindrucksvoll bewiesen: zum Beispiel zille9 mit Plexus, uheld mit dem coolen neuen Bella-Code (Fenster und TV/VGA-Integration) und joergd mit seinen ganzen LAN-Geschichten.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford