Weil wir alle hier zwangsläufig mit Rechnern zu tun haben, will ich zu dieser Thematik hier auch ein bißchen schreiben. Eigentlich gehöre ich ja auch zu denen, die beruflich entfernt etwas mit so etwas zu tun haben müßten. Aber da soll man sich nicht täuschen, der Rechner dient auch da wohl hauptsächlich dem Austausch von Mails.
So ähnlich verhält es sich auch mit den Rechnern, die ich mir so
aufgestellt habe. Ich bin übrigens sehr dagegen, armen und weniger
armen Softwarefirmen Schäden durch Installation inoffizieller Kopien
von deren Software zuzufügen, und ich möchte auch die Leser dieser
Seiten darum bitten, sich an die entsprechenden Bestimmungen zu
halten, also gegebenenfalls die teuren CDs oder Lizenzen zu kaufen und
korrekt einzusetzen. Die Installation solcher illegaler Kopien ist in
manchen Ländern strafbar. Andererseits will ich durch die Bezahlung
offizieller Kopien auch mir selbst keinen zu großen finanziellen
Schaden zufügen. Deshalb gibt es zur Zeit auf den von mir regelmäßig
benutzten Rechnern kein MS-DOS kein NT kein MS-Word, kein Lotus-Notes
und natürlich auch kein SCO-Unix u.s.w auf der Platte.
Es gibt heute etliche Betriebssysteme, aber die lassen sich in "Familien" einordnen:
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|
| Miniatursysteme | Echtzeitsysteme | DOS | MacOS | OS/2 | NT | VMS | Unix/Linux | Großrechnersysteme |
| Hier gibt es eine ungeheure Vielfalt, die die Zusammenfassung unter einer Rubrik problematisch erscheinen läßt: PalmPilot, Mobiltelefone, Karten u.s.w. | Z.B. OS9. | FreeDOS, Windows 95, Windows 98, Windows ME | MacOS 9 und älter | OS/2 | Windows NT 3.5, Windows NT 4.0, Windows 2000 (NT 5.0), Windows XP (NT 5.1) | VMS | GNU/Linux, MacOS X, OpenBSD, FreeBSD, NetBSD, Solaris, Aix, HP/UX | AS 400, MVS, CMS Natürlich würden Insider auch diese Kategorie unbedingt aufteilen. |
Natürlich gibt es unter 1, 2 und 9 jeweils eine unheimliche Vielfalt von Systemen, wobei sich teilweise eine Tendenz abzeichnet, daß diese durch spezielle Versionen von Betriebssystemen aus 8 ersetzt werden. 3, 4, 5 und 7 sind auf absehbare Zeit am Verschwinden, bis auf einige schrumpfende Nischen. Ich gehe auch davon aus, daß Systeme aus 8 in Gestalt von Linux bzw. GNU/Linux langfristig gegenüber solchen aus 6 durchsetzen werden. Aber das kann vielleicht noch ein bißchen länger dauern und man weiß nie genau, wie es kommt.
Eigentlich könnte ich jetzt hier schreiben, warum "mein"
Betriebssystem, Fenstersystem, Bildverarbeitungsprogramm, Editor
u.s.w. das allerbeste ist. Aber das will ich mir sparen, denn ich
will niemandem den Spaß an irgendwelcher Software verderben und es
möge sich jeder seine eigene Meinung bilden. Ich glaube, daß sich
Linux als Betriebssystem weiter verbreiten wird. Es wird sicher noch
eine Weile dauern, aber das wird so kommen. Gleichzeitig passen sich
andere Systeme im Unix/Linux-Umfeld an Linux an, z.B. Solaris oder
Aix. Sie werden gängigen GNU/Linux-Installationen immer ähnlicher.
Das heißt, sie übernehmen GNU-Tools, die unter Linux
selbstverständlich sind und sie werden kompatibel zu Linux. SUN
ersetzt schon heute CDE durch Gnome. Damit werden auch diese Unixe
benutzerfreundlicher, was zum Glück für uns Benutzer ein zunehmend
wichtiger Punkt für die Anbieter ist. Vielleicht wird sich Solaris
noch etliche Jahre halten, weil es sich gut für sehr große Systeme
eignet. Aber IBM, SGI und HP setzen schon heute auch zulasten ihres
eigenen Unix hauptsächlich auf Linux. Nur als benutzerfreundliches
System haben Systeme aus dem Unix/Linux-Umfeld die Chance, sich zu
halten und an Boden zu gewinnen. Ich glaube, die Entwicklung bleibt
spannend und es wird auch immer wieder neue Dinge und Überraschungen
geben.
Insofern ist es vielleicht auch nicht so wichtig, was auf juristischem Weg bezüglich einer Firma entschieden wird, die wahrscheinlich ohnehin ihren Höhepunkt erreicht, wenn nicht überschritten hat. Wenn eine Firma die Gesetze verletzt hat, muß sie die rechtlichen Konsequenzen tragen. Wenn das nicht der Fall ist, gibt es keinen Grund, und vor allem keine Grundlage, diese Firma zu verurteilen, auch wenn man sie nicht mag. Darum sollte es in dem Gerichtsverfahren gehen. Wegen ähnlicher Fälle gab es schon in früheren Jahren Prozesse und auch Aufteilungen von Firmen. Die entscheidenden Anstöße zur Verbesserung der Lage kommen aber nicht aus dem Gerichtssaal, sondern aus der Entwicklung von Besserem.
Wer übrigens der Meinung ist, einen Rechner nur mit vorinstallierter
Software zu bekommen, die er gar nicht, überhaupt nicht,
benutzen will, der sollte sich vielleicht einmal ansehen, ob die
Lizenz nicht eine Rückerstattung der Lizenzgebühren bei Nichtnutzung
erlaubt.
Ich habe diese Problematik nie erlebt, denn es ist mir in den letzten
10 Jahren gelungen, fast alle meine Rechner als reine Hardware zu
kaufen. Nur ein gebrauchter Rechner enthielt eine
"gebrauchte" Windows-95-Lizenz, die ich zur Zeit nicht nutze
und wohl auch nie nutzen werde. Tatsächlich habe ich das, was ich
nicht lizenziert habe, auch nicht inoffiziell doch noch installiert.
Wer aber einen Rechner mit unerwünschtem NT (NT 4.0, Windows 2000 oder
Windows "Big Brother"="eXtralarge Prother"=XP) kauft, sollte sich doch
genauer die Lizenzbestimmungen ansehen. Wahrscheinlich kann man da
mit ein bißchen Hartnäckigkeit etwas Geld zurückbekommen. Oder ist
diese Software (NT, MS-DOS, Windows,...) wirklich umsonst zu haben?
Zum Schreiben von Papieren, Briefen u.s.w., neben Mail auch
noch ein relativ wichtiger Verwendungszweck der Rechner,
benutze ich hauptsächlich
TeX,
wobei ich mehr und mehr von PlainTex auf
LaTeX
umstelle. Wenn ein bestimmtes Dateiformat gewünscht wird, kann ich
auch
OpenOffice
verwenden, jedoch erzielt man damit nicht dieselbe Qualität wie mit
TeX. Genau genommen dient das TeX bei mir nur zum Formatieren. Das
eigentliche Schreiben mache ich ja mit einem Editor meiner Wahl, das
ist dann
GNU-Emacs.
Um es gleich vorwegzunehmen, ich habe nichts gegen VI. Ich benutze
den VI auch oft und ich finde es auch wichtig, damit umgehen zu
können, weil man damit auf jeder noch so stalinistisch installierten
Unix-Maschine arbeiten kann. Aber ich glaube nicht, daß man es
sich mit dem Ding besonders leicht macht, Neueinsteigern UNIX
schmackhaft zu machen. Software von der Art des VI wird niemals einen
größeren Beitrag dazu leisten, daß Durchschnittsanwender von Windows
auf Linux oder UNIX umstellen, obwohl der VI wirklich eine geniale
Software ist und mit unheimlich wenig Ressourcenverbrauch fantastische
Funktionalität bietet. Aber die Bedienung ist eben doch etwas
ungewöhnlich. Für den Profi, der seine Tasten kennt, ist das
natürlich kein Problem, da mag es mit den etwas kürzeren und etwas
kryptischeren Tastenkürzeln des VI sogar noch schneller gehen. Die
üblichen Vorurteile, daß Emacs auch nicht viel benutzerfreundlicher
wäre, stammen noch aus alten Zeiten, als Emacs die tatsächlich
katastrophale Version 18 hatte. Ein VI in Gestalt von nvi, vim oder
elvis ist auch erheblich besser, als das, was so mit Solaris oder Aix
oder sogar NT (mittels Resource-Kit) ausgeliefert wird, hat aber den
einen Vorteil des VI (noch) nicht, nämlich standardmäßig auf jedem
UNIX (oder gar auf jedem Rechner überhaupt) installiert zu sein.
Abgesehen davon kenne ich noch aufgrund dienstlicher und privater
Tätigkeiten außerhalb unserer Wohnung Rechner mit SunOS 4, Solaris,
Aix, NeXT-Step mit X11 und auch ein bißchen NT (Windows NT/2000).
Vielleicht erinnere ich mich sogar noch an DOS oder VMS, aber da bin
ich mir wirklich nicht mehr so ganz sicher.
Vor ein paar Jahren war es ja noch das große Thema, wenn man einmal
ein kleines Programmchen schreiben konnte. Wenn man sich die Sache
genauer ansieht, ist es doch viel aufwendiger, brauchbare und
tragfähige Konzepte und Architekturen aufzustellen, bevor man sich mit
Details wie GUI-Design und Datenbankmodellen und ähnlichen Dingen
beschäftigt. Für deren Umsetzung kann man dann unter anderem Dinge
wie Oracle, PL/SQL, C, C++, Java, JavaScript, HTML, Lisp oder Perl
gebrauchen. Gerade auch Java bietet hier einige interessante
Möglichkeiten. Deshalb habe ich mir auch den Spaß erlaubt, solche
Prüfungen wie "Sun Certified Java Programmer" oder "Sun
Certified Web Component Developer" zu machen.
Insbesondere sind einige uralte und auch neuere Ideen aufgegriffen
worden, die sich als sehr nützlich erweisen dürften. Vor allem das
"literate programming", bei dem man aus den Quelltextdateien auch eine
menschenlesbare Dokumentation extrahieren kann, ist sehr gut
verwirklicht (javadoc) und man hat bei großen Projekten eine schöne
WWW-Navigation durch die ganzen bereits implementierten Klassen und
Methoden. SUN bietet das für die Bibliotheken der Standard-Edition
und Enterprise-Edition auf der WWW-Seite an.
Fortran, Pascal und Basic habe ich im Zweifelsfall vergessen; eher erinnere ich mich noch daran, daß es einmal vor einigen Jahren doch recht verbreitet war, auch verschiedene Assemblersprachen zu lernen. Aber wenden wir uns lieber wieder ernsthafteren Dingen zu.
Wer sich etwas länger mit solchen Dingen beschäftigt, wird feststellen, daß für
nichttriviale Applikationen fast immer eine Datenbank ins Spiel kommt,
heutzutage (noch oder schon?) meistens relational und SQL-basierend.
Nach meiner Erfahrung heißen diese Datenbanken normalerweise Oracle,
aber es kann ja auch einmal DB2 oder mySQL sein.
Ein anderes aktuelles Thema ist XML. Die Idee ist nicht neu, gibt es doch den
Vorläufer (SGML) schon seit über 20 Jahren. Aber gerade die Tatsache, daß XML
so in "Mode" gekommen ist, macht an dieser Stelle den Vorteil aus,
denn dadurch wird sichergestellt, daß XML als universelles Format zum Austausch
und zur Speicherung von Dokumenten und Daten überhaupt zu gebrauchen ist.
Es gibt auf jeden Fall schon heute eine sehr schöne
(englischsprachige) Abhandlung, die beschreibt, was man so
zur Behandlung von kyrillischen, insbesondere russischen
Texten tun kann. Es geht um
die Russifizierung von Latex, a2ps, X11, Netscape etc.
Vielleicht geht das auch einmal in die
Emacs-Umlaute-FAQ
ein, wenn ich dazu einmal kommen sollte.
Als kleine Erinnerung an eine frühere Tätigkeit in der
computergestützten Algebra möchte ich hier ein paar
interessante freie Softwareprodukte erwähnen. Zur
Behandlung von gruppentheoretischen Fragen kann man mit dem
Programm
GAP
eine ganze Menge anfangen. Das ist auch als Quelltext verfügbar
und da stecken auch für denjenigen, der nicht Gruppentheorie
macht, eine Menge interessanter Dinge drin. Wenn man nur
genug Zeit hätte. Wenn es um die Dinge geht, die man früher
einmal Mathematik nannte, Faktorisierung von Polynomen,
Berechnung von Ableitungen und Integralen und all die
anderen Dinge, die ich längst vergessen habe, dann kann man
mit
Mupad
oder
Axiom
ein Programm finden, daß es ermöglicht, mit so etwas symbolisch, also exakt, zu
rechnen.
Wer das alles zu trocken findet, der wird sich vielleicht
über bunte Bilder mehr freuen. Dafür kann ich das Programm
GIMP empfehlen, das für
gängige UNIX- und Linux-Systeme (und sogar für Windows
NT/2000) verfügbar ist, und mit dem auch allfällige
Bildbearbeitungen für diese WWW-Seite durchgeführt worden
sind.
Damit Ihr auch wirklich die großen Platten, die man sich heute so
leisten kann, vollmachen könnt, habe ich hier noch eine Seite
eingefügt, die einige von mir entdeckte oder gar benutzte
ftp-Server enthält, wobei
eine gewisse regionale Gewichtung wieder einmal ehemalige Wohnorte des
Autors dieser Seite erkennen läßt. :-)
Ansonsten fange ich einmal an, eine kleine Sammlung von
Links aufzubauen. Ich bitte um Verständnis dafür, daß die
Linksammlung zum Teil Dinge von oben noch einmal wiederholt.
Ich gebe zu, daß sich diese Linksammlung ein bißchen
einseitig an meinen Interessen orientiert, aber wer auf
meiner WWW-Seite nach Links sucht, muß sich wohl damit
abgefunden haben.
Ruby ist der "Shooting-Star" unter den Programmiersprachen. Erfunden wurde es vor Java in Japan, aber es war außerhalb von Japan kaum bekannt, weil die Dokumentation durch eine Sprachbarriere belastet war. Seit ein paar Jahren gibt es auch englischsprachige Dokumentation und es war eine Art Geheimtip, Ruby zu verwenden. Ich habe mich selbst kaum dafür interessiert, aber als meine Kinder eine Programmiersprache lernen sollten, wurde das ein Thema. Nachdem der Versuch, Java für diesen Zweck zu verwenden, in Frust endete, weil das einfach viel zu kompliziert und umständlich war, habe ich meinen Kindern ein Ruby-Buch in die Hand gedrückt, ohne daß ich es selbst gekonnt hätte und das erwies sich als wesentlich erfolgreicher. Heute wird Ruby durch "Ruby on Rails" mehr und mehr als produktive Web-Entwicklungsumgebung wahrgenommen. Die Produktivität der Entwickler ist um ein Vielfaches besser als bei dem heute so üblichen Java.
Mit den ersten drei Links kann man fast alles zum Thema Perl finden.
Auch wenn Lisp heute seltener für große Projekte eingesetzt zu werden scheint, ist es doch konzeptionell eine sehr interessante Sprache, mit der man viel lernen kann. Außerdem sind einige Lisp-Dialekte als Konfigurations- und Skriptsprachen für Emacs, GIMP und andere GNU-Tools von Bedeutung. Und als DSSSL zur Beschreibung der Konvertierung von XML-Dokumenten in andere Formate.
Bei den Datenbanken scheint sich abzuzeichnen, daß PostgreSQL eine etwas ähnliche Rolle spielen wird, wie Linux bei den Betriebssystemen. Dies ist eine Open-Source-Datenbank. Es zeichnet sich ab, daß PostgreSQL das erfüllt, was man für anspruchsvolle Applikationen so üblicherweise von dem zugrundeliegenden Datenbanksystem erwartet. Natürlich ist mySQL viel verbreiteter und für bestimmte Zwecke, bei denen nur ein Teil der üblichen vollständigen Datenbankfunktionalität gebraucht wird, auch gut geeignet. Das ändert aber nicht an der Tatsache, daß heute und in der näheren Zukunft Oracle quasi die Standarddatenbank ist.