22/09/2001, 16/02/2006

Why Worse Windows

Als Dinosaurier der Softwarebranche habe ich mir mit vielen anderen damals gewünscht, daß endlich mal jemand ein einheitliches Interface zur den verschiedenen Hardwareschnittstellen in den Markt drücken kann.

Der eigentliche Aufwand bei der Erstellung von Software war, diese möglichst schön auf den unterschiedlichsten Bildschirmen darstellen zu können und die verschiedendsten Eingabegeräte und Drucker zu unterstützen. Kaum ein Programm lief ohne Anpassungen auf "kleinen" und "großen" Rechnern.

Als Windows (1.0) 1986 auf den Markt kam, unterstützte es "nur" 4 feststehende Fenster, aber unsere Programme waren ja nur für ein Fenster programmiert, MS-DOS war zwar "eingekauft", aber gut vermarktet, die Hardwareschnittstelle etwas gewöhnungsbedürftig, aber vermeintlich zukunftssicher, und als Bonus gab's zusätzliche Softwarebibliotheken, um das Rad nicht immer neu erfinden zu müssen.

Nun konnten wir unsere Anstrengungen auf die Applikationen konzentrieren und mußten vor neuen Graphikkarten keine Angst mehr haben.

Die erste 32Bit Variante (Windows 95) kam mit einer, zwar arbeitsintensiven, aber überlebbaren, Schnittstellenänderung, dem Win32 API. Diese Schnittstelle hat sich seit 10 Jahren nicht mehr geändert und dieses ist für die Softwareentwicklung ein langer Zeitraum.

Auch wenn das für Windowsanwender unglaublich klingt, aber diese Schnittstelle ist unwahrscheinlich stabil, wenn man als Anwendungsprogrammier dafür Sorge trägt, daß diese Schnittstelle keine falschen Parameter bekommt.

Gemeinerweise produziert Microsoft nicht nur ein Betriebssystem, sondern auch Anwendungen und will hier natürlich auch immer zu den Besten gehören. Darum wird das Betriebssystem ein bißchen weniger dokumentiert, das Anwendungsprogramm ein bißchen hart an der Grenze programmiert, die zusätzliche Softwarebibliothek immer mehr ausgeweitet und mit "Multimedia" versetzt.

Ich brauche ein graphisch orientiertes Betriebssystem, keine Möchtegern-Komplett-Lösungen wie MFC oder integrierte Systemerweiterungen wie beim Internet Explorer, keine Objektlinkage wie OLE, kein Monstrum von Textverarbeitung von Office, keine grellen Farben, um mich auzuwecken und erst recht keine Assistenten, die mir nur auf die Nerven gehen.
Gängige Chaosmethoden wie die Windows Registry, eigene SystemDLLs und ActiveX muß man als Entwickler nicht benutzen.

Läßt man das alles weg, so hat man ein stabiles System, daß auch längerfristig einsatzbereit bleibt und kann die weitestgehendste Hardwareunabhängigkeit für seine Produkte nutzen.

Daher benutze ich das am weitestentwickelste Graphikbetriebssystem mit Win32-API ohne den für mich unnützen Anhang, und das ist zur Zeit noch Win98SE, aber auch der GNU/Linux WINE Windowsemulator ist erwähnenswert.

Jeder Anwender kann das für sich beste und komfortabelste System mit Win32 API benutzen, er braucht sich jedoch nicht bei mir beschweren, wenn sein neuer Internet Explorer 13.1 seine schöne CD Brennsoftware 4.3 zerstört hat, oder ELSTER nicht mit seiner Banksoftware will...

Ich will mir und meinen Linux Kollegen, die mit einem Enthusiasmus sondergleichen eine Alternative zu Windows erstellt haben, nicht allzu weh tun, aber der nächste Schritt ist ein objektorientiertes Betriebssystem, keine Unix-Nachprogrammierung, aber auch kein Karl-Klammer.