Seit fast drei Wochen versuchen wir bei einem Kunden Daten von einer Struktur in die andere zu Überführen. Für die Abfragen zeichnet sich mein Kollege verantwortlich. Darüber habe ich mich auch an anderer Stelle schon mal aufgeregt. Über das lange Wochenende haben wir einen neuen Versuch gestartet. Mal abgesehen davon, dass die Abfragen noch mal langsamer wurden, was bei fast 50 Millionen Datensätzen nicht so gut ist, traten plötzlich jede Menge Fehler auf. Da kriege ich echt Plaque. Das muss man doch vorher mal testen. Ich kann doch nicht bei einer Laufzeit von zehn Stunden darauf hoffen, dass alles gut geht. Löschen, Ändern und Neustarten ist hier auf jeden Fall keine Lösung.

FehlerhaftesStatement

Heute im Code eines Werkzeugs gefunden, welches die Performance eines Clients im Netzwerk des Kunden überwachen soll. Die Methode führt ein ping zu einem angegebenen Server an. Aber ob doPing ein guter Name für die Funktion ist wage ich mal in Frage zu stellen.

In meiner Kinderzeit gab es diverse Witze mit Verballhornungen von Begriffen/Sprachen und ich meine damals war die Frage „Wie heißt der Chinesische Sportminister?“ mit „Do Ping“ zu beantworten. Von dieser Sorte gab es ja noch mehr. Zum Beispiel: „Wie heißt der chinesische Verkehrsminister?“ „Um Lei Tung“.

Doping

Das Bild, welches die Bevölkerung von Informatikern hat, sieht ja oft so aus: dickliche Nerds sitzen die ganze Nacht in Kellerräumen und Hacken auf die Tastatur ein. Umgeben von Pizzakartons und leeren Dosen von Energydrinks bewegen sie sich kaum, scheuen das Licht und die frische Luft.

Das gibt es sicher, aber ist nicht die Regel. Gestern Nacht musste ich Wartungsarbeiten an der Datenbank vornehmen. Ohne Störungen in der Fertigung auszulösen geht das leider manchmal nur in der Nacht, wenn keiner Arbeitet. Gestartet habe ich um 20:00 Uhr. Um kurz nach 2:00 Uhr bin ich ins Bett und um 6:00 Uhr habe ich ein Skript eines Kollegen abgebrochen, weil es immer noch nicht fertig war. Leider. Heute bin ich etwas durch den Wind – bin halt Nachtarbeit nicht gewohnt.

Die Laufzeit von T-SQL Skripten ist auch so eine Sache. Mit T-SQL kann man viel machen, aber leider auch viel falsch. Gestern hatten wir ein Skript, dass lief etwa 4 Minuten. Es wurde über ein Fremdschlüssel Werte aus der Datenbank ermittelt. Durch das Hinzufügen der referenzierten Tabelle und der Suche über den Primärschlüssel konnte die Laufzeit auf etwa 1:20 Minuten verringert werden. Eine weitere Steigerung brachte das Erzeugen eines fehlenden Indexes. Danach war die Laufzeit nicht mehr messbar. Aber für solche Optimierungen wird man beim Bachelorstudium scheinbar nicht ausgebildet.

Ist heute mein Freund: der Kaffeepott vom Großen – dir größte Tasse bei uns im Haus. Daraus schmeckt der Kaffee, auch wenn sie vom FCB ist…
Kaffeepot

Heute während eines Versuchs beim Kunden per Communicator eine Neuerung in unserer Software vorzuführen. Entdeckt. Wer findet den Fehler?

if (mo.PanelCountConnected >= mo.PanelCountConnected)
{
  MessageBox.MsgBox.show("MSG_NOMORE_PANELS");
  return;
}

Lösung nach dem Klick.

Tolle Sache - an der Arbeit gab es einen neuen Rechner. Leider braucht es ganz schön viel Zeit, bis alles wieder so eingerichtet ist, wie es sein soll. Klasse wäre, wenn man aus dem alten Rechner eine Speichereinheit rausziehen könnte, die man im neuen Rechner einsteckt und alle Programme und Einstellungen wären übernommen. Aber das soll hier nicht das Thema sein.

Gerade kopiere ich einige dringend benötigte Dateien vom alten Rechner auf den neuen. Windows war der Meinung, dass es dazu 22 Stunden benötigen würde. In der Zeit hätte ich die Daten ja beinahe alle neu eingegeben. Mal sehen, wie lange es dann letztlich wirklich dauert.

Falls ich es noch nicht erwähnt habe: als Informatiker muss man lernen zu warten. Auf irgendwas wartet man meistens. Zum Beispiel bis alle Dateien kopiert sind, auf das Ergebnis einer Abfrage oder das Ende des Compilerlaufs.

NochwasVor