...someplace, where there isn't any trouble? Do you suppose there is such a place, Toto?

LarryO über den Checkin in NT3.1

In einem der letzten Postings von Larry Osterman beschreibt Larry, wie die Checkins in NT3.1 vom Gottvater von NT, Dave Cutler, mit einem Whiteboard organisiert wurden. Echt interessant zu lesen. Wer das interessant findet, wird auch das folgende Buch interessant finden: "Der Krieg der Codes" von G. Pascal Zachary. Ich glaube, nicht einmal dem ewig geistig kohärent (!) brudergleichen DEI habe ich bisher dieses Buch nahegelegt, drum mache ich das jetzt mal hier stellvertretend. Als ich das letzte Mal nachgeschaut habe, war es out-of-print, aber wer weiß, vielleicht gibt es das Buch ja wieder. Meine lieben KollegInnen bei επτ€σ dürfen mich natürlich gerne in Mission Control aufsuchen und es ausleihen. Aber nur die lieben.

Worum geht es in der Schmonzette? Es wird ein Stück Industriegeschichte beschrieben, nämlich die Entwicklung von NT3.1 von 1988 bis 1993. Aber nicht irgendwie als nüchterner Report, sondern dadurch, daß die Menschen, die hinter diesem Produkt standen, einfühlsam und teilweise fast biographisch beschrieben werden. Neben vielen Anekdoten aus dieser Zeit kriegt man hier halt so mit, was für ein herausragender Ingenieur Dave Cutler bei DEC war und was für ein luxuriöses Leben sein Team bei DEC hatte, bis es der Firma Ende der Achtziger plötzlich schlechter ging und man ihn eiskalt abserviert hat. Dann, wie er bei MS angeheuert hat und nach und nach sein ganzes altes Team von DEC zu MS rüberzog. Aber nicht nur Lichtgestalten wie Cutler werden beleuchtet. Man erfährt beispielsweise, wie MS den Archtitekten von NTFS einen Segeltörn bezahlt hat und während dieses Sabbaticals auf hoher See die Specs von NTFS entstanden. Oder daß einer der Hauptdesigner der NT Security gleichzeitig in seiner Freizeit der Autor von diesem komischen Spiel war, das mit Win32s ausgeliefert wurde. Man erfährt, was für einen schweren Stand die Mädels im Team hatten, die zu ihren männlichen Kollegen ins Büro kamen wo gerade der Bildschirmschoner überwiegend nackte Tatsachen präsentierte, bis eine energische Kodiererin die Sache in die Hand nahm. Man erfährt von Ehen von Entwicklern, die in die Brüche gingen, weil das Klappbett unter dem Schreibtisch praktischer war als Heimfahren, zwei Stunden Schlaf und dann wieder Codeschreiben. Von Leuten, die als Tester das Betriebssystem und MS vor Katastrophen bewahrt haben. Aber auch von altgedienten Leuten bei MS, die sich über Jahre hinweg als Treiberentwickler verdient gemacht habe und diesen Sprung einfach nicht mehr verkraftet haben. Auch interessant ist die Beschreibung des schwierigen Integrationsprozesses der hochnäsigen DEC-Leute unter den hemdsärmeligen Microsofties, bis mit Steve Wood ein renommierter Alt-Microserf ins NT-Team kam und das Eis gebrochen hat. Für die Entwickler unter den Lesern auch interessant die Geschichte mit Chuck Whitmers GDI Team, das sich dem aktuellen Trend Anfang der Neunziger folgend, ganz heftig in das noch junge C++ verliebt hatte und dann komplett zurückrudern mußte, weil OO damals (wie heute auch) noch nicht wirklich verstanden wurde. Auch interessant, wie - um den Kreis zu LarryO zu schließen - DaveC sich damals nicht zu schade war, das Build-Lab von NT zu leiten. Diese Episode aus diesem Buch, war für mich der Anlaß, bei SGLs Frage im Value Pack Office in Nellingen im Juli 2002, ob jemand beim Buildmastering helfen könnte, mich spontan freiwillig zu melden - obwohl noch in der Probezeit und ohne Rechte zum Auschecken. Ich dachte mir: Wenn's dem DaveC nicht geschadet hat, kann ich auch noch was lernen als Buildmaster.

Solche Bücher sind spannend beim Lesen. Wenn man dann durch ist, ist man enttäuscht, zur falschen Zeit am falschen Ort geboren zu sein. So ging's mir schon öfters. Als später Teenie wünschte ich im New York der Vierziger dabeigewesen zu sein, als Charlie Parker und Dizzie Gillespie mit ihrer Musik die Luft zum Kochen gebracht haben und vor knapp 10 Jahren, als ich dieses Buch gelesen habe, habe ich mir gewünscht, bei dieser Aufbruchstimmung und diesem unbedingten Willen zu Stabilität, Robustheit, Sicherheit und gesunden Ingenieurspraktiken beim Software-Engineering dabei gewesen zu sein.

Seufz.

Coole Hardware

Mein alter Laserjet IIID war lange Jahre ein treuer Gefährte aber er bekommt so langsam die Altersschwäche. Nach dem Einschalten zeigt er erstmal etwa 1 Stunde lang "Gerät offen" in seinem Display an. Irgendwann, wenn man lange genug keine Geräteöffnung mehr zur Kontrolle geöffnet hat und ihn, vielleicht in der vagen Hoffnung, den Vorgang zu beschleunigen, ein paar Mal ein- und ausgeschaltet hat, steht dann das erlösende "Ready" im Display, meist so nach einer oder zwei Stunden. Dieses "Ready" wurde von den HP Ingenieuren bestimmt aus der Anzeige der Spielhallenhits der Achtziger übernommen. Jedenfalls, bei "Ready" druckt das Biest wie der Teufel. Die Geräte dieser Provenienz waren Anfang-Mitte der Neunziger äußerst beliebt und waren quasi der klassische Abteilungslaserdrucker (bei επτ€σ steht heute noch ein kleiner Laserjet III (viiieeel kleiner als meiner) irgendwo in der Nähe von Darth Ännchens früherem Platz 'rum). Schon damals konnten sie HPs PCL5, und mit einer Cartridge für die beiden vorderen Cartridge-Steckplätze, konnte man einen PostScript-RISC-Prozessor nachrüsten, oder irgendwelche krassen ROMs mit Dokumentenvorlagen drin. Weil PCL5-fähig, konnte ein Laserjet III richtig toll die eingebauten Schriften ausspielen und die Vektorgrafik war erstklassig. Nur Bitmapgrafik sah mehr nach BTX aus als nach Hi-Res.

Ein neues Gerät mußte jetzt also her, nachdem meine Mutter am vorletzten Sonntag geschlagene zwei Stunden warten mußte, bis ich ihr verschämt ob so viel angeblicher High-Tech endlich ihren Zugfahrplan zum Klassentreffen in die Hände drücken konnte. Diese Demütigungen seitens meines Laserjet IIID mussten ein Ende haben!

Also kurz Marktforschung betrieben und schnell entschieden: Das neue Gerät ist ein Brother HL-2070N. Er hat unter anderem eine PCL6 Emulation, kann also gar nicht sooo schlecht sein. Ausserdem Parallel-Port, USB 2.0 und einen Netzwerkanschluß. Und es ist kein GDI-Printer, schließlich will ich auch von meinem Mac Mini drucken und von meinen Linux Workstations. Das beste ist aber der Preis: Laut Brother 239 €, bei Alternate kost' er 229 €, bei Arlt sogar nur 209 €.

Und das Gerät ist echt klasse: Kurz die Trommeleinheit eingesetzt, mit Netzwerkkabel am Switch angeschlossen, und ein komisches Programm von Brother gestartet, den"BRAdmin Professional". Der sucht kurz im Netzwerk (wie auch immer er das tut) nach diesen Druckern und zeigt einem erstmal den Drucker als MAC-Adresse an. Ein Doppelklick mit Angabe eines werksseitigen Passworts gestattet dann die Administration. So kann man dem Biest einen Namen geben (meiner heisst jetzt Krasser_Brother) und ihm eine statische IP Adresse zuteilen, Subnet Mask, Gateway und DNS setzen. Ab dem Moment ist der Drucker dann sowohl im Windows-Netzwerk als eigener Printserver zu finden wie auch anzupingen als LPR Printer. In meinem Fall gibt es seither ein Windows Printer-Share unter \\KRASSER_BROTHER\BINARY_P1 wie auch eine klassische Unix Line Printer Queue unter der IP Adresse des Druckers und einem beliebigen Queue-Namen. Der Fachmann staunt und der Laie wundert sich: Das Teil hat also einen LPR Server und einen Samba-Server intern am Laufen. Den Webserver zur Administration, den ich am ehesten erwartet hätte, habe ich aber überraschenderweise noch nicht gefunden.

So, ich kann den Drucker also jetzt mit drei unterschiedlichen Windows-Portmonitoren ansteuern, dem Standard-Portmonitor für Windows Printer Shares, dem alten LPR Portmonitor aus den seligen NT3.5 Zeiten und ihren "Printing Services for Unix", und dem neumodischen "Standard TCP/IP Port" Port Monitor für Windows 2000 (für letztere beiden Portmonitore habe ich übrigens vor drei Jahren den επτ€σ Printing Support Code geschrieben :-)).

Ratet mal, bei welcher Druckerinstallation der drei Drucker bei mir unter Windows 2000 der spoolsv.exe abgestürzt ist ....

Aber eine Erlösung ist jetzt mit dem Teil auch, daß ich nicht erst meinen Linuxserver KIRK einschalten muß um zu Drucken, denn er stellte bisher den Line Printer Daemon zur Verfügung für den Laserjet IIID. Vielleicht probiere ich jetzt mal, DACLs auf den Samba Print Server zu setzen, mal sehen ob das geht. Und eine weitere spannende Aufgabe bleibt noch: Das Biest verwendet bei MACs den "Apple Rendezvous Service". Dafür hat Apple einen Port Monitor für Windows geschrieben. Also, vielleicht drucke ich demächst über vier verschiedene Windows Port Monitore auf denselben Drucker und dann gibt's ein Update dieses Artikels mit Informationen wie Rendezvous so funktioniert. Aber vorher gibt's bestimmt noch ein Update der Windows x64 Serie. Versprochen.

(Update: einen in meinen Unterlagen undokumentierten Webserver hat das Teil auch. Da kann man den ganzen Rotz auch einstellen. Both Thumbs up!)

Patch Tuesday

Heute ist ja der monthly patch day bei MS. Saavik, meine x64-Box war voll gepatcht bis heute, isch'schwör, aber die Downloadgröße für die handvoll Patches für diesen Monat hat mich dennoch glatt umgehauen: 48 MByte und ein paar Zerquetschte! Für x86 bewegt sich alles so im üblichen Rahmen, vorausgesetzt natürlich man war vorher schon voll gepatcht und das sind wir doch alle, oder? Nein? Die Zeiten der 56k Modems scheinen jedenfalls endgültig vorbei zu sein....

So schaugt's aus!

Von Zeit zu Zeit kommt bei mir die Anfrage, doch einmal mein geekisches Arbeitszimmer abzulichten. Und weil ich heute 'mal aufgeräumt habe, ist dies ein guter Zeitpunkt dazu. So without any further ado, here are the pictures:


Das ist mein Schreibtisch, von links her gesehen. Oben sieht man von links nach rechts meinen betagten HP Laserjet IIID, dann Saavik, Kirk, McCoy und SULU. In der unteren Reihe erkennt man einen Scanner, und hinter dem Keyboard mein TFT-Display mit der Webcam obendrauf. Hinter der Webcam sieht man ein kleines 4-Kanal Mischpult, dessen Eingänge mit einigen Rechnern verbunden sind und dessen Ausgang auf die B&O geht. Rechts vom Monitor ist zuunterst ein 4-Port KVM, den mir mal der RHE aus seinem reichhaltigen Althardwarebestand vercheckt hat und obendrauf das kleine silberne Kästchen ist mein MAC mini. Daneben rechts außen steht chekov. Das glänzende graue Etwas links oberhalb vom Laserjet ist die linke Aktivbox der B&O.


Das ist nochmal dasselbe von der rechten Seite und man könnte es schöner nicht erkennen, wie die Technologien unterschiedlicher Jahrzehnte aufeinanderprallen: Auf dem Regal steht rechts neben der B&O-Edelanlage von 2004 ein echt trashiges "Schneider Power Pack 34" von 1983 (Konfirmation!). Der Ausgang von letzterem geht in einen kleinen RIAA-Entzerrvorverstärker und dann wiederum ins Mischpult. So kann ich meine alten LPs über die B&O anhören. Das graue Dings oberhalb der B&O ist die rechte Aktivbox. Die Tapete stellt übrigens die "Nachtwache" von Rembrandt dar.


Das ist die gegenüberliegende Seite: Ein 8-Port-KVM, erst kürzlich für schlappe 5 € von επτ€σ im Hardwareverkauf des Testteams erworben, drumrum von links nach rechts ein alter Hobel mit NT3.51, ein noname-17-Zoll-Röhrenmonitor, dann SevenOfNine (die Linuxbox, die meine Webcambilder schießt) und Jakobs Spielrechner. Ganz unten rechts steht eine halbgeöffnete Maschine an der ich zur Zeit rumbastele.


Und weil kirk auf der einen Seite mit dem 8-Port KVM auf der anderen Seite gesteuert wird, müssen irgendwie die Signale von der einen Zimmerseite zur anderen kommen. Am einfachsten geht das über die Decke, wie man in diesem Bild sieht. Spätestens diese Konstruktion senkt den WAF ("Womens' Acceptance Factor") dieses Arbeitszimmers auf einen Wert, der ganz nahe bei Null oder drunter liegt.

Ein Klick auf eins der Bilder öffnet selbiges nochmal in einem separaten Browserfenster in hoher Auflösung.

Wie zeigt man eigentlich die OS-Version auf dem Desktop an?

Das wurde ich nun schon einige Male gefragt: Wie zeigt man eigentlich die Version des Windows-Betriebssystems rechts unten über dem "Tray" auf dem Desktop an, also etwa folgendes:

Ganz einfach: Unter dem Key HKEY_CURRENT_USER\Control Panel\Desktop gibt es einen named REG_DWORD value mit dem Namen PaintDesktopVersion. Dessen Wert setzt man von 0 auf 1 und loggt sich erneut ein. Falls der Wert im fraglichen User Profile nicht existiert, muß man ihn halt selbst anlegen.

<< 1 ... 36 37 38 39 40 41 42 43 44 45 46 >>