C#-Schulung

Meine letzte Schulung liegt schon eine Weile zurück. Dieses Jahr habe ich zwar eine ganze Reihe an Videos für LinkedIn Learning (LiL) aufgenommen, an einem Consulting-Projekt gearbeitet sowie Bücher bzw. Schulungsunterlagen erstellt. Aber diese Woche halte ich tatsächlich die erste Schulung in 2024.

Thema ist C# und die Maßnahme halte ich remote für einen Stammkunden, für den ich schon sehr viele Jahre arbeite. Auch diese C#-Schulung habe ich in der Form wohl schon mehr als ein Dutzend Male gehalten.

Zurück von dem Hamburg-Tripp

Ich bin zurück von meiner Schulungswoche in Hamburg. Nächste Woche habe ich von Mittwoch bis Freitag die gleiche Gruppe Fachinformatiker, aber mit einem anderen Thema und remote.

Es war mal wieder interessant beruflich unterwegs zu sein. Seit Corona
kommt das ja nur noch selten vor und von daher was es eine angenehme Abwechselung – im Prinzip. Aber den Reiseaufwand (vor allen Dingen) als auch die Abende im Hotel muss ich nicht mehr haben.

Also hin und wieder werde/will ich das mit beruflichen Reisen in Zukunft weiter machen, aber der Schwerpunkt bleibt definitiv remote. Das hat insbesondere meine Rückreise nahezu zementiert. „Zurück von dem Hamburg-Tripp“ weiterlesen

HH-Tour

Ich bin gerade mal wieder nach Hamburg gefahren. Zu einer Schulung. Ich war schon lange nicht mehr beruflich auf Tour und ehrlich gesagt habe ich es nicht vermisst. Die Fahrt heute nach HH hat auch wieder ganz deutlich gezeigt, warum.

Stau auf Stau. 6,5 Stunden habe ich gebraucht.

Wobei die Wahl des Autos durchaus hinterfragt werden kann. Nur Inner-Deutsch will ich eigentlich nicht fliegen (obwohl das in dem Fall nicht schlecht gewesen wäre, denn ich arbeite in der Nähe vom Flughafen und das letzte Mal war ich bei dem Kunden tatsächlich mit dem Flieger) und die Bahn ist mir zu unzuverlässig. Irgendwie war die Wahl der Anreise wie die Wahl zwischen Pest, Cholera oder Typhus. Die einzig sinnvolle Wahl wäre „remote“ gewesen, aber der Kunde wollte diese Woche unbedingt vor Ort. Es geht wieder um die Ausbildung von Fachinformatikern. Und tatsächlich war ich vor ziemlich genau einem Jahr für den Vorgängerjahrgang ebenfalls hier und das war das letzte Mal, dass ich (abgesehen von Videoaufnahmen in Graz für bei LinkedIn Learning) beruflich außerhalb der Heimatgegend unterwegs war. Nach der kommenden Woche werde ich den Kurs weiter remote betreuen, aber diese Woche soll eben zwingend als Präsenzveranstaltung laufen. Was ich vom didaktischen Sinn her auch gut finde. „HH-Tour“ weiterlesen

Fett, fetter, Microsoft – und leider auch unverschämt was Altversionen angeht

Zwischen den Jahren nutze ich die Zeit und bereite eine Schulung zu „ASP.NET MVC“ vor, die im kommenden Januar und dann noch einmal im März laufen soll. Ich muss mich wieder etwas einarbeiten, obwohl ich vor einiger Zeit beim Springer-Verlag ein Buch zu „Webanwendungen mit ASP.NET MVC und Razor – Ein kompakter und praxisnaher Einstieg“ veröffentlicht habe. Aber ansonsten sind Webanwendungen mit ASP.NET MVC und Razor bei mir Randthemen, auch wenn ich viel mit purem C# und .NET zu tun habe.

Deshalb hatte ich vorgestern eine neue  Webseite als Referenz erstellt, die ich mit ASP.NET MVC und Razor in einem Docker-Container auf meinem Linux-Server laufen lasse.

Heute habe ich u.a. die Datenbank mit ins Spiel gebracht und im Grunde ist es wie immer bei Microsoft – wenn alles konfiguriert und installiert ist, geht das meiste mit Mausschubserei. Aber wehe, wenn nicht oder man vom vorgegebenen Pfad abweicht. Oder irgendwelche Neuerungen inkompatibel zu älteren Dingen sind (was gefühlt bei Microsoft ständig passiert). „Fett, fetter, Microsoft – und leider auch unverschämt was Altversionen angeht“ weiterlesen

Schulungsjahr 2022 beendet

Gestern habe ich meinen letzten Schulungstag 2022 (falls nicht noch ganz kurzfristig was aufläuft) gehalten (zu Python) und eben habe ich die letzte Rechnung für eine Schulung erstellt und versendet. Damit schließe ich das Schulungsjahr 2022 ab. Allerdings kommt vor Weihnachten noch eine Woche mit Videoaufnahmen bei LinkedIn Learning in Graz, worauf ich mich richtig freue.

Einführung in JavaFX/OpenJFX

Wenn ich die Schulungen dieses Jahr durchgehe, kamen wieder eine ganze Reihe an Themen vor. Wie üblich mit einigen Schwerpunkten, die sich im Vergleich zu den Jahren zuvor aber teils verschoben haben. Andere Themen sind komplett weggebrochen oder ich habe sie nicht annehmen können und ich muss mir überlegen, ob ich die weiter im Schulungsprogramm behalte. Auch wenn ich sie persönlich meist immer noch interessant finde (etwa F#, GWT oder Perl) bzw. unabhängig von direkten Schulungen oft verwende (etwa Eclipse oder alles rund um mein Lieblingsbetriebssystem Linux, wofür ich aber keine aktuelles Schulungsagenda mehr ausgearbeitet habe – zu nahezu allen anderen Schulungthemen habe ich ja eigene Bücher und Schulungsunterlagen und/oder Videotraining bei LiL erstellt).

„Schulungsjahr 2022 beendet“ weiterlesen

Stress- und Java-Säuberung

Die vielen Schulungstage der letzten Zeit haben bei mir doch einigen Stress aufgebaut. Heute musste ich deshalb mit dem Rad raus – auch wenn es recht „feucht“ war. Aber das Radfahren durch Regen und Matsch hat den Stress quasi weggewaschen.

„Stress- und Java-Säuberung“ weiterlesen

Radikalschnitt

Die letzten Wochen standen bei mir ganz im Zeichen sehr vieler Schulungstage. Zuerst im Rahmen mehrerer Fachinformatikerausbildungen zu Python und MySQL, aber die letzten 3 Wochen komplett zu Java und JavaFX/OpenJFX. Dabei ging es bei purem Java um eine „Werkstatt“ im Rahmen der Fachinformatikerausbildung, bei der noch mit Swing gearbeitet wurde.

Bei dem Kurs zu JavaFX habe ich hingegen professionelle Java-Entwickler einer Berliner Behörde geschult, die vorher bei einem anderen Trainer einen Kurs zu Maven gemacht hatten und danach eben noch JavaFX kennenlernen sollten. Zum Teil hatten die aber auch schon vorher mit JavaFX gearbeitet.

Der JavaFX-Kurs war bereits früher angesetzt gewesen, aber der
eingeplante Trainer war ausgefallen und ich habe den Kurs mit einem neuen Termin kurzfristig übernommen. Die beiden Tage habe ich zwar recht schwer untergebracht und eigentlich war ich bereits so ausgelastet, dass ich im Grunde keine Termine mehr annehmen wollte. „Radikalschnitt“ weiterlesen

HH-Schulung hat begonnen

Die Schulung in Hamburg hat begonnen. Ich habe offiziell 9 Teilnehmer, aber 2 haben sich krank gemeldet. Mit dem Rest mache ich Python. Genaugenommen ist das eine Python-Werkstatt mit hauptsächlich Praxis. Normalerweise halte ich vorher eine Python-Schulung, aber die hat ein Kollege übernommen, da ich letzte Woche noch mit einer MySQL-Schulung für die Kölner Gruppe beschäftigt war.

Die Schulung letzte Woche war remote und mit der Hamburger Gruppe kommt nächste Woche auch MySQL dran – aber dann auch remote. Das bedeutet, ich fliege am Freitag wieder zurück und wir treffen uns dann auf Teams. Ich wollte einmal nicht über das Wochenende in HH ausharren und schon gar nicht für 3 Tage wieder hierher fliegen. Das hätte ich auch nicht geregelt bekommen, denn ab Donnerstag nächster Woche übernehme ich wieder die Wiesbadener Gruppe. Das wäre mit einer Rückreise am Mittwochabend einfach zu eng geworden.

Angekommen

Ich bin in Hamburg im Hotel angekommen und die Reise ist gut verlaufen. Ich hatte sehr viel Zeit für den Frankfurter Flughafen bzw. die Bahnfahrt dahin eingeplant und wie es immer dann ist – mein erster Zug war pünktlich und der Anschlusszug, den ich eigentlich nicht mehr erreichen konnte, hatte soviel Verspätung, dass ich direkt aus dem einen in den anderen (früheren) Zug steigen konnte. Deshalb hatte ich viel Wartezeit in FFM am Flughafen, aber trotzdem habe ich von Haustür bis Hotelzimmer 4,5 Stunden gebraucht. Das ist weder mit Zug oder gar Auto zu schaffen.

Das Hotel ist allerdings gaaaaaanz einfach. Nicht einmal Frühstück bieten die hier an und die Einrichtung ist ziemlich runtergekommen. Aber das Zimmer ist gross und das Personal freundlich und es ist in Laufweite von dem Schulungsraum, wo ich die Woche hin muss. Zudem ist die Minibar inklusive. Nur dummerweise sind da Flaschen, für die ich einen Flaschenöffner brauche. Und den habe ich nicht mitgenommen. War erst einmal richtig Arbeit, die Cola und das Bier aufzubekommen.

Nach über 2,5 Jahren wieder auf Tour

Es ist jetzt über 2,5 Jahre her, seit ich das letzte Mal geschäftlich auf Tour war – mit Ausnahme von ein paar Wochen in Marburg über den letzten Jahreswechsel. Aber im Moment sitze ich mal wieder am Gate in Frankfurt und warte auf meinen Flieger. Es geht für eine Woche nach Hamburg zur Schulung von Fachinformatikern. Ich muss gestehen, dass mich auch ein bisschen die Flugscham drückt, denn im Grunde bin ich überhaupt nicht dafür, dass innerhalb von Deutschland mit dem Flieger gereist wird. Nur ist die Anreise mit dem Auto derzeit über die A7 katastrophal und die Zugverbindungen nach HH sind heute auch nicht wirklich gut gewesen. Zumal es immer irgendwelche Probleme gibt, wenn ich geschäftlich den Zug nutze.

Also habe ich mich für den Flieger entschieden, was auch nicht teuerer als der Zug ist – wahrscheinlich sogar billiger. Ich habe zwar versucht, den Kurs auf remote umzubiegen, aber der Kunde hat darauf bestanden, dass ich nach Hamburg komme. In Zukunft werde ich das nach Kräften vermeiden, aber im Moment freue ich mich sogar, mal wieder in die Luft zu kommen. Mit dem Gleitschirm ging es dieses Jahr auch nicht so wirklich und mein letzter Flug mit einem Flieger war im Januar vor 2 Jahren auf meiner Standardstrecke nach Graz. Der Sicherheitscheck hat übrigens ziemlich lange gedauert und es ist unerwartet voll am Flughafen. Ich bin wirklich aus der Übung, was geschäftliche Flugreisen angeht. Jetzt muss ich nur noch gut in mein Hotel kommen, denn da ist die Rezeption nur eingeschränkt besetzt.

eBike

Auch wenn ich vor allen Dingen seit Corona kaum noch beruflich unterwegs bin, habe ich davor sehr viel Zeit mit beruflichen Reisen verbracht. Diverse Flugreisen (vor allen Dingen nach Graz), hin und wieder mit der Bahn und vor allen Dingen mit dem Auto. Zwar hatte ich schon vor Corona einen erheblichen Anteil meiner Arbeit zuhause bzw. online erledigt (Bücher schreiben, zum Teil  Videotraining aufnehmen, Schulungen online betreuen, etc.), aber Präsenzschulungen waren immer ein großer Prozentsatz meiner Arbeit. Für die weiten Strecken blieb (und bleibt) mir nur Auto, Bahn oder Flieger und mit Abstrichen das Motorrad, aber bei kurzen Distanzen habe ich schon um das Jahr 2015/2016 ein eBike (1. Bild) in Erwägung gezogen und auch irgendwann gekauft. Nur ist mir das nach etwa einem halben Jahr bei meinem 3. beruflichen Einsatz des eBikes bereits beim Kunden in Eschborn aus der geschlossenen Garage (trotz Schloss) gestohlen worden. Damit war das Thema für mich erst einmal durch.

Aber während Corona bin ich kaum aus dem Haus gekommen und habe im Grunde immer nur zwischen meinen Büros in Eppstein und Bodenheim gependelt. Das sind mit dem Auto etwa 35 – 45 Kilometer (je nachdem, wie man fährt) und die Strecke kann man auch mit dem Fahrrad fahren. Das habe ich hin und wieder auch gemacht. Nur ist die einfache Strecke ok, aber hin und zurück an einem Tag mit dem Biobike heftig. Das kann man von der Streckenführung mit dem Rad auf etwa 33 Kilometer verkürzen, aber dann hat man hin und zurück  knapp über 65 Kilometer bei über 600 Höhenmetern und teils ruppigen Waldwegen. Das ist an einem Tag schon nicht ohne – zumindest für mich. Fahre ich die Strecke mit einem kleinen Umweg, komme ich nur auf etwas mehr als 320 Höhenmeter hin und zurück, aber dafür auf fast 80 Kilometer Strecke. Auch nicht ohne an einem Tag.

Resultat – ich habe vor einiger Zeit mein altes MTB mit einem Motor nachrüsten lassen und damit kann ich die Strecke an einem Tag locker bewältigen. Was ich in der Zwischenzeit auch mehrfach gemacht habe. Ich habe für die Umrüstung gut 1.500 EUR bezahlt und dann noch mal für Nachrüstungen und Reparaturen die letzte Zeit gut 500 EUR bisher. Mein Ziel ist, dass sich das eBike aber dennoch amortisiert. Rein theoretisch sollte das bei etwa 4.000 Kilometer der Fall sein, wenn ich die statt mit dem Auto mit dem eBike gefahren bin.

Mal sehen, ob die Rechnung aufgeht. Aktuell bin ich Montags und Dienstags in Wiesbaden bei der Ausbildung von Fachinformatikern. Die Strecke dahin bietet sich an, mit dem eBike gefahren zu werden. Am letzten Dienstag habe ich das ausprobiert und heute bin ich zum 2. Mal mit dem eBike gefahren. Mit dem Auto ist der einfache Weg 26 Kilometer. Also hin und zurück sind das über 50 Kilometer und wenn man den realistischen Preis von 50 Cent pro gefahrenem Autokilometer ansetzt, spart eine Fahrt mit dem eBike zur Schulung pro Tag 25 EUR. Die 2 Kilometer Ungenauigkeit kompensieren die Stromkosten. Dabei verkürzt sich der Weg mit dem Rad auch auf etwa 20 Kilometer, da man diverse Abkürzungen durch Felder nehmen kann.

Also ist die Verwendung von dem eBike ein Win-Win-Win-Win-Situation. Ich spare Geld, bewege mich (auch wenn das natürlich nur begrenzt als Sport zu sehen ist). bin an der frischen Luft und schone die Umwelt.

Bei guten Wetter und Strecken unter 30 Kilometer ist das eBike definitiv eine Alternative zum Auto, die ich mittlerweile so oft wie möglich nehme. Aber da ist noch viel Luft nach oben, denn leider siegt auch häufig der Schweinehund.

Großes Reinemachen der Datenträger

Diese Woche habe ich eine Remote-Schulung zu C# gehalten. Am Ende so einer Schulung gebe ich immer die von mir erstellten Quelltexte an meine Schulungsteilnehmer weiter. Da ich im Fall von so einer C#-Schulung natürlich mit Visual Studio arbeite, sind in meinen Projekten aber immer die ganzen *.dll, *.exe, *.obj und andere Dateien abgelegt, die beim Compilieren und Ausführen der Schulungsprojekte entstehen. Solche kompilierten Sachen sind für die Weitergabe an meine Teilnehmer natürlich unnötig und sogar kontraproduktiv, weil damit die weiterzugebenden Daten ziemlich umfangreich werden und – beim Verschicken über das Internet – die Firewall der Firmen, wo meine Teilnehmer arbeiten, diese Dateien meist grundsätzlich blockiert. Also stelle ich fast immer eine ZIP-Datei zusammen, die nur die eigentlichen Quelltexte und meist auch die Projekt- und IDE-Einstellungen enthält, wenn das – wie im Fall von Visual Studio – relevante Informationen sind.

Nun bin ich insbesondere bei meinem MateBook mit seiner extrem sparsamen 256 GByte-SSD schon seit Monaten am Limit und habe sogar diverse Verzeichnisse und Programme schon gelöscht oder auf eine externe SSD verschoben, die ich eigentlich gerne dabei bzw. auf der internen SSD des Notebooks gespeichert hätte.

Ich habe keine Ahnung, warum mir nie aufgefallen ist, dass ich vollkommen unnötig bei meinen ganzen Quelltexten der Bücher, Videotraining bei LinkedIn Learning, Schulungen und Kursen oft ebenfalls die ganzen *.dll, *.exe, *.obj und andere binäre Dateien sowie auch PlugIns und ähnliche Projektergänzungen und sogar alte Software, die ich in den Maßnahmen gebraucht hatte, mit gespeichert habe. Oder aufgefallen war mir das wohl schon – ich habe mich einfach nicht drum gekümmert.

Denn sinnvoll ist es schon, zu jeder Maßnahme (gleich ob Schulung, Buch, Videotraining, Kurs oder Projekt) die wirklich relevanten Dinge zu behalten. Ich speichere deshalb nach jeder Maßnahme auch die Projektdateien hinsichtlich der Programmierung. Die Einsendeaufgaben, die ich etwa bei der ILS erhalte, behalte ich ebenso auf Dauer. Und ich lege davon dann im Rahmen meiner üblichen Datensicherung auch zig Kopien an. Aber da ich vor dem Speichern als auch den Datensicherungen auf meinen vielen redundanten Medien in Bodenheim, Eppstein, der Cloud und im Banksafe eben fast nie aufgeräumt hatte, sind auf den Datenträgern mittlerweile so viele GByte an unnützem und zudem mehrfach redundantem Zeug entstanden, dass einfach mal ein großes Reinemachen notwendig war.

Diese unglaublich vielen Dateien machen ja auch eine Datensicherung wahnsinnig zeitintensiv, da das ganze überflüssige Zeug eine Synchronisation zeitlich förmlich explodieren lässt. Das habe ich gerade wieder bemerkt als ich meine externe Festplatte, die ich in Eppstein deponiert habe und so etwa einmal im Monat synchronisiere, auf Stand bringen wollte. Mein Datensicherungsprogramm SyncToy ist nur mit Fehlern durchgelaufen und die folgende direkte Kopieraktion von meinem NAS auf die Festplatte hat etwa 18 Stunden gebraucht.

Das hat mir gelangt und ich beseitige gerade über alle Datenträger hinweg die unnötigen binären Dateien. Im Wesentlichen befinden die sich bei Visual Studio-Projekten in den Verzeichnissen Debug und Release und bei Eclipse  & Co ist das .metadata-Verzeichnis oft auch riesig und kann jederzeit bei Bedarf reproduziert werden.

Also weg mit dem Zeug und noch den Installationsdateien einiger alter Software und ähnlichen Dingen. Ich denke, dass ich so pro Rechner bzw. Datensicherungsmedium vielleicht 10 – 40 GByte Platz gewinne. Kann auch deutlich mehr sein, aber die vielleicht 200 – 400 GByte, die ich damit over-all frei mache, sind gar nicht der Punkt.

Die Sache wird übersichtlicher und eben bei der Synchronisation während Datensicherungen deutlich schneller und auch stabiler. Der Upload auf Cloud-Datenspeicher geht natürlich ebenso viel schneller (gerade der) und eine komprimierte Datensicherung (auch Anlegen und Entpacken eines Archivs geht natürlich viel fixer) sollte vielleicht sogar wieder auf einen USB-Stick für den Banksafe passen.

Nur jetzt muss erstmal der bereinigte Stand synchronisiert werden und da greift nochmal das zeitlich aufwändige Problem, dass so viel Zeug an den verschiedensten Stellen auf  NAS & Co gelöscht werden muss. Aber wenn die große Putzaktion durch ist, sollte ich auf Dauer viel Zeit gewinnen.

 

2022 und direkt on the road

Es ist für mich aus 2 Gründen bemerkenswert, aber ich bin „on the road again“. Zum Einen kann ich mich nicht entsinnen, dass ich schon einmal bereits am 3. Januar eines Jahres beruflich unterwegs war und zum Anderen gab es die letzten 2 Jahre wegen Corona so gut wie keine Vor-Ort-Schulung oder sonst einen Termin bei einem Kunden vor Ort.

Nur die Maßnahme in Marburg, die ich Ende November letzten Jahres begonnen hatte, läuft noch diese Woche im neuen Jahr. Und das nicht remote, wie die letzten 2 Wochen vor Weihnachten, sondern vor Ort in Marburg. Zumindest bis Donnerstag. Am Freitag komme ich nochmal remote in den Kurs.

Ich übernachte wieder in der gleichen Monteurs-Wohnung wie bei der ersten Vor-Ort-Session. Bei den 7 Zwergen hinter den 7 Bergen – aber ok.

Die Woche bleibt „präsent“

Ich war Anfang der Woche immer noch nicht sicher, ob ich die ganze Woche hier in Marburg vor-Ort bleibe oder die Maßnahme wegen Corona komplett abgebrochen und auf Remotetraining umgestellt wird.

Aber jetzt ist der vorletzte Tag der Woche rum und ich mache auf jeden Fall auch am Freitrag Präsenzunterricht. Das passt auch vom Hygiene-Konzept. Ich habe 11 Teilnehmer in dem Kurs (ab der Woche hat sich der Kurs in einem Zweig mit Systemintegratoren und meine Gruppe Anwendungsentwickler aufgeteilt), von denen die Woche zwischen 4 und 6 Leute pro Tag auch nur remote zugeschaltet waren. In dem riesigen Schulungsraum für bis zu 35 Teilnehmer waren damit nie mehr als 7 Teilnehmer und die mit Maske. Nur die Trainer dürfen am Platz die Maske abnehmen – sonst wird die Aussprache einfach zu undeutlich. Da wir auch mehrfach die Stunde lüften, sollte das alles im grünen Bereich sein. Dennoch bin ich nicht sicher, ob das ab nächster Woche mit Präsenzschulung weitergeht oder komplett auf remote umgestellt wird. Ich betreue den Kurs die nächsten zwei Wochen jeweils mit 20 Stunden/Woche und habe bisher vor, einen kompletten Tag wieder vor-Ort zu sein. Aber ob das klappt, ist vollkommen unklar.

Um noch etwas von der Gegend zu sehen, bin ich heute nach dem Kurs die Panorama-Strasse in Richtung der Kliniken hochgefahren und da etwas spazieren gegangen.

Da lag sogar etwas Schnee oben auf dem Berg. Aber das Wetter war – wie schon die letzten Tage – nur kurz trocken und von daher bin ich auch recht schnell wieder in meine Unterkunft zurück.

Tag 2 der Schulung in Marburg

Schiet-Wetter. Anders kann man derzeit die Lage nicht beschreiben. Aber dennoch wollte ich nach dem zweiten Schulungstag nochmal ganz kurz ein Touri-Programm durchziehen. Sowas mache ich eigentlich immer, wenn ich irgendwo beruflich übernachte.

Und da meine letzte berufliche Tour 2 Jahre her ist, musste es mal wieder sein – trotz des Mistwetters. Ich bin nach der Schulung nochmal kurz hoch zum Marburger Schloss und im Schnelldurchgang außen rum gelaufen. Mit Schirm und Handschuhen.

Ich war schon einmal auf dem Schloss, aber das ist eine „Weile“ her. Zu der Zeit hatte ich gerade angefangen zu studieren und war mit meinem allerersten Mopped auf einer Fete hier in Marburg, bei der ich irgendwo in einem Garten gezeltet hatte. Ist also definitiv eine große „Weile“ her, denn auch wenn ich noch mehrfach in Marburg war – zum Schloss bin ich nie mehr hoch.

Dennoch habe ich mich noch ganz gut an die Ecke erinnert. Aber das Wetter hat mich recht schnell wieder ins Trockene getrieben.

Das Billig-Chuwi als Skype-Remote-Server für Visual Studio

Mein Microsoft-Surface-Billig-Klon von CHUWI fristet ein eher gemütliches Dasein in meinem Eppsteiner Zweitbüro. Wenn ich mein Matebook nicht dabei habe und mal was am PC da machen will, kommt es gelegentlich zum Einsatz. Genau dafür habe ich das Teilchen ja gekauft – ein möglichst preiswerter Notfall-PC, den ich in Eppstein deponiere und wenn das CHUWI UBook Tablet mal so zum Einsatz kam, hat es sich durchaus ausreichend geschlagen. Mehr braucht es bei gelegentlichem Einsatz wirklich nicht.
Nur heute war der große Tag von dem Kerlchen. Ich habe nach 2 Wochen Azubi-Ausbildung in Python und MySQL die Woche für einen anderen Stammkunden eine Schulung in C# übernommen (natürlich wieder remote) und musste heute in Eppstein arbeiten, weil ein Handwerker sich angemeldet hatte.
Nur haben von den 5 Teilnehmern des Kurses 2 kein Visual Studio installiert. Oder zumindest nicht so, dass man C#-Projekte anlegen kann. Der Fehler geht ganz klar auf die Firma, die die Schulung in Auftrag gegeben hat. Wie kann man Teilnehmern eine C#-Schulung buchen und dann kein passendes Visual Studio auf deren Rechner bereitstellen? Da es sich um eine ganz große Firma handelt, geht auch nicht mal schnell eine Installation. Das muss beantragt werden und dann muss das Profil geändert werden usw. usw.
Das ist im Grunde nicht mein Problem, aber ich möchte natürlich, dass meine Teilnehmer zufrieden sind und von der Schulung profitieren. Einer der beiden Teilnehmer hat in der Folge seinen Privatrechner genutzt, aber bei dem anderen ging es nicht. Gestern haben wir uns für die reine Syntax von C# bei ihm mit einer Webseite beholfen, über die man C# im Browser ausführen kann. Zumindest einfache Syntax-Anweisungen. Aber bei echter OOP oder gar GUI-Programmierung langt das definitiv nicht.
Die Schulung verwendet nun Skype (!!) als Remote-Tool. Nicht Teams – nein, Skype. Kundenanforderung. Angeblich wird nächstes Jahr umgestellt, aber im Moment kommt noch das antike Skype zum Einsatz. Wobei es zur Not auch damit geht – das hatte ich bei dem Kunden schon mehrfach nutzen müssen und bin halbwegs zurecht gekommen.
Ja, und damit der Teilnehmer, der gänzlich ohne Visual Studio auskommen musste (bisher – vielleicht ist VS morgen nachinstalliert) , heute praktische Übungen durchführen konnte, habe ich neben meinem Matebook auch das Chuwi in die Sitzung angemeldet, da Visual Studio gestartet und ihm die Remote-Kontrolle via Skype beim Sharen des Programms übergeben. Was soll ich sagen? Ging richtig gut. Sowohl die Leistung von dem Chuwi hat ausgereicht also auch die Performance bei der Übertragung.

C#-Schulung

Die komplette kommende Woche halte ich wieder einmal eine C#-Schulung für einen Stammkunden. Immer noch remote. Das wird wohl noch einige Zeit so weiter gehen. Meine 2 Wochen in Hamburg im Oktober sind – soweit ich das bisher kommuniziert bekommen habe – auch schon wieder auf remote umgestellt. Es sieht so aus als würde ich dieses Jahr komplett online schulen (von der Einzelschulung über 3 Tage im Mai in meinen eigenen Räumen in Eppstein abgesehen).

Update Windows 10 aus der Konsole

Die regelmäßige Aktualisierung von Windows empfinde ich weitgehend als eine Katastrophe. Entweder aktualisiert sich Windows zum unpassenden Zeitpunkt (hatte ich gerade bei einem Kunden, bei dem das erzwungene Update während der Remoteschulung die Teilnehmer ziemlich blockiert hat) oder man deaktiviert das automatische Aktualisieren und dann ist man Out-Of bzw. die Geschichte lässt sich u:u: nicht wieder anschalten oder man sucht sich einen Zeitplan raus, von dem man vermutet, dass die Aktualisierungen nicht irgendwas anderes verhindern. Alles nicht wirklich der Bringer.

Auf meinen drei im Business-Einsatz genutzten Windows-10-Rechnern funktioniert das Windows-Update eigentlich nur auf meiner Workstation ohne großes Eingreifen. Und das auch nicht perfekt.

Auf meinem alten Terra-Notebook kann ich auf wuauserv gar nicht zugreifen. Ich bekomme immer einen Zugriffsfehler, wenn ich den Service starten will. Ich habe schon zig Wege versucht, aber alles ist bisher schief gelaufen (und selbstverständlich habe ich im Administrator-Modus gearbeitet). Auf dem Rechner bin ich mittlerweile mit einem Updates auf einem Stand von Anodazumal :-(. Was mich aber auch nicht extrem beunruhigt, da das Notebook schon mindestens 7 – 8 Jahre auf dem Buckel hat und nur durch ein Schnäppchen einer riesigen Notebook-SSD vor 2 Jahren vom kompletten Ausmustern gerettet wurde. Das Gerät ist wirklich nur noch mein Backup – sowohl als PC als auch Datenbackup vom NAS. Also Backup vom Backup. Dennoch – irgendwie will ich auch da mal ein Update hinbekommen. Ich spiele schon eine ganze Weile in der Powershell und mit net hin und her, aber bisher scheitert alles an den Zugriffsproblemen auf wuauserv.

Noch blöder ist es, dass ich auf meinem aktuellen Huawei-Matebook nur Windows Home mitgeliefert bekommen habe. Eine wirklich armselige Windows-Version (ja – me culpa – ich hätte ja schon auf die Pro-Version umsteigen können, aber bisher hatte ich noch keinen zwingenden Grund gesehen). Da hat man ja so gut wie keine Kontrolle über die Updates. Nicht einmal in den Einstellungen lässt sich der Dialog öffnen (warum auch immer). Ich bin bisher nicht einmal so ganz im Klaren gewesen, ob und welche Updates da installiert waren.

Aber da habe ich jetzt eine sinnvolle Lösung gefunden, um mit NuGet oder in der PowerShell Updates zu dem Zeitpunkt und dem von mir gewünschten Umfang zu erzwingen, wenn ich das will. Da ich die nächsten Wochen ein paar Remote-Schulungen zu C# halten werde, wollte ich vorher sowieso Visual Studio auf den neusten Stand bringen und dabei gleich NuGet ebenso. Und damit kann man dann auch Windows Updates komplett erzwingen. Schön in der Paket Manager-Konsole statt der grafischen, klebrigen Micky-Mouse-Oberfläche der PC Einstellungen. Oder man nutzt eben die PowerShell. Beides natürlich im Administrator-Modus.

Und das geht über die PowerShell so, dass man entweder PSWindowsUpdate oder WindowsUpdateProvider (Install-WUUpdates) verwendet. PSWindowsUpdate soll angeblich gegenüber des von Microsoft bereitgestellten PowerShell-Moduls Install-WUUpdates / Start-WUScan einige Vorteile bringen, aber da bin ich auf Hörensagen angewiesen.
Mit

Get-Command -Module WindowsUpdateProvider

findet man aber erst einmal heraus, welche Windows-Update-Provider auf einem PC verfügbar sind. Damit sieht man dann in etwa so etwas:

PS C:\WINDOWS\system32> Get-Command -Module WindowsUpdateProvider

CommandType Name Version Source
———– —- ——- ——
Function Get-WUAVersion 1.0.0.2 WindowsUpdateProvider
Function Get-WUIsPendingReboot 1.0.0.2 WindowsUpdateProvider
Function Get-WULastInstallationDate 1.0.0.2 WindowsUpdateProvider
Function Get-WULastScanSuccessDate 1.0.0.2 WindowsUpdateProvider
Function Install-WUUpdates 1.0.0.2 WindowsUpdateProvider
Function Start-WUScan 1.0.0.2 WindowsUpdateProvider

Sobald ein ausreichend neuer Build vorhanden ist, kann man dann Updates suchen und installieren (Updates für Windows und andere Microsoft-Produkte):

$Updates = Start-WUScan -SearchCriteria „IsInstalled=0 AND IsHidden=0 AND IsAssigned=1“
Write-Host „Updates gefunden: “ $Updates.Count
Install-WUUpdates -Updates $Updates

Ein anderer Weg führt eben über das PSWindowsUpdate-Modul, das so aus der PowerShell installiert werden kann (oder man nutzt einfach Visual Studio und da dann die Paket-Manger Konsole):

Install-Module -Name PSWindowsUpdate -Force

Danach kann man nach der Version schauen:

Get-Package -Name PSWindowsUpdate

 

Aber das passende NuGet-Version muss dabei vorhanden sein, wobei die auch bei Bedarf nachinstalliert wird. Die Ausgabe wird so etwas sein:

Name Version Source ProviderName
—- ——- —— ————
PSWindowsUpdate 2.2.0.2 https://www.powershellgallery… PowerShellGet

 

Für den nächsten Schritt sollten die Ausführungsrichtlinien für den aktuellen Prozess auf uneingeschränkt gesetzt werden:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted -Force

Und dann holt man die verfügbaren Updates so:

Get-WindowsUpdate -MicrosoftUpdate -Verbose

Die Installation von allem ohne weitere Rückfrage geht dann so:

Install-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot

Soweit habe ich die Sache mit meinem Matebook auch schon erfolgreich durchgespielt und jetzt werde ich mir das Terra-Notebook und auch die Workstation vornehmen und mal sehen, was ich da aktualisieren kann oder auch nicht.

Wenn das alles nicht hilft, werde ich nochmal den folgenden Tipp in der Admin-Konsole versuchen:

net stop wuauserv

net stop bits

cd %systemroot%

ren SoftwareDistribution SoftwareDistribution.bak

net start bits

net start wuauserv

Ich habe zwar wenig Hoffnung, dass die Geschichte insbesondere bei den Zugriffsproblemen auf wuauserv was hilft, aber vielleicht nutzt die Schrittfolge ja jemand anderem oder in einer anderen Konstellation beim Update.

Der Weg zur Schulung

Die Woche habe ich an den letzten 3 Tagen eine SQL-Schulung gehalten. Sogar im „Heimatgebiet“ – sprich FFM-Niederrad. Bei so nahen Maßnahmen stellt sich immer die Frage, ob man nicht mit der Bahn fahren sollte? Es spricht ja sehr viel dafür und im Grunde gibt es sogar eine halbwegs brauchbare Verbindung nach Niederrad, bei der ich nur 1x umsteigen muss.

Nur war am Wochenende ein mittelschwerer Sturm über Deutschland gezogen und die Bahn hatte vorsorglich den Fernreiseverkehr komplett eingestellt und auch beim Regionalverkehr ging am Montag gar nichts. Die Schulung ging zwar erst am Dienstag los, nur reichten die Auswirkungen des selbstgewählten Bahnstilstands und weiterer stärkerer Windchen über den Montag und Dienstag bis in den Dienstag hinein. Am Morgen habe ich schon in der Bahn-App gesehen, dass die von mir angepeilten Züge rot markiert waren. Von daher war an dem Tag sowieso Auto angesagt.

Mittwoch wollte ich es eigentlich riskieren und die Bahn nehmen, aber ich hatte am Abend noch einen Termin und wäre selbst mit optimalen Anschlüssen deutlich später als mit dem Auto zurück gewesen. Also auch da mit dem Auto gefahren, was aber zugegeben reine Bequemlichkeit war. Und zur Rechtfertigung vor mir selbst – meine Teilnehmer, die mit der Bahn angereist sind, haben es an dem Tag morgens nicht pünktlich geschafft.

Heute wollte ich direkt von der Schulung noch weiter ins Training und bin deshalb auch da mit dem Auto gefahren. Und das war gut so. Als ich heute morgen am Bahnhof in Bodenheim vorbeigefahren bin, standen da vielleicht 100 Leute – deren Zug war ausgefallen. Auch im Nachbardorf in Fahrtrichtung das gleiche Bild. Hätte mich auch erwischt und ich hätte den rechtzeitigen Schulungsbeginn nicht einhalten können – wenn ich überhaupt hingekommen wäre.

So leid es mir tut – Auto ist schneller, billiger, bequemer und zuverlässiger. Ich hoffe wirklich, dass die Bahn irgendwann einmal zu einem zuverlässigen Transportmittel wird, denn ich habe natürlich ob der Umwelt ein schlechtes Gewissen. Aber ich bin nicht bereit zu riskieren, dass ich meine Termine verpasse und dafür noch Ärger und Stress auf mich nehme.

Bei den 3 Tagen hätte ich an 2 davon massive Probleme gehabt, es rechtzeitig zur Schulung zu schaffen – trotz Puffer von etwa 30 Minuten.

Was geht schneller?

Nicht schlecht, der Mediapark in Köln, wo ich mein Hotel bei der aktuellen Schulung bezogen hatte. War da vorher noch nicht in der Gegend von Köln.

And Now for Something Completely Different:

Letzten Mittwoch bin ich von Graz nach Hause gereist. Und heute von Köln ebenso nach Hause. Was geht schneller?

The winner is …

Graz-Bodenheim!

Das ging vor einer Woche schneller als heute die „Weltreise“ mit der Bahn von Köln nach Bodenheim 🙁
Zwar war es knapp (nur ein paar Minuten), aber dafür ist die Strecke nach Graz ja auch nur 5x so lang oder so.
Es ist einfach unfassbar und ich habe keine Lust mehr :-(.

Liegt es vielleicht an mir und nicht der Bahn? Es funktioniert einfach nie, nie, nie ohne Probleme.

Ich habe meinen Kurs in Köln ziemlich zeitig beendet, weil

  1. die Teilnehmer sehr fit waren und
  2. der Stoff durch war.

Aber durch die Zugbindung hatte ich für die Rückreise keinerlei Eile zum Bahnhof zu kommen. War noch viiieel Zeit, bis der ICE nach FFM ab dem Kölner Hauptbahnhof gehen sollte, da ich sowieso einen Puffer eingeplant hatte.
Nur dann stand auf Bahn.de, dass mein Zug ausfallen würde. Es ist doch einfach nur unfassbar mit der Bahn zu reisen.
Andererseits entfällt in dem Fall auch die Zugbindung und ich bin sofort zum Hauptbahnhof und habe am Hauptbahnhof in Köln einen erheblich früheren Zug bekommen. Dabei konnte ich mir zwei fast zeitgleich abgehende Züge aussuchen.

  • Einen ICE, der über FFM gegangen ist, und
  • einen IC, der direkt nach Mainz fahren sollte.

Mit dem ICE wäre ich nach Fahrplan schneller zuhause gewesen, aber ich hätte 1x mehr umsteigen müssen. Und das Risiko schien mir zu groß. Umstiege versuche ich zu vermeiden, wenn immer er geht.
Also habe ich den IC mit der Direktverbindung nach Mainz genommen.

Ein Fehler. Ein großer Fehler!
Erst einmal sind wir zwar pünktlich von Köln weg, aber nur gut 5 Minuten gefahren und dann haben wir gestanden. Um danach im Schneckentempo nach Bonn zu fahren. Technische Probleme an der Lok. Am Bahnhof in Bonn wurden die behoben und ich konnte geraume Zeit den Bahnsteig ausführlich bewundern. Aber zumindest gab es dort via dem SmartPhone Internet und ich hatte ja genug Zeit, die Korrekturen meiner Onlinekurse durchzuführen.
Nachdem es dann weiterging, kam irgendwann eine Durchsage, ob sich ein Arzt im Zug befindet? In Oberwesel haben wir dann gut weitere 25 Minuten wegen eines Notfalls gestanden.
In Mainz habe ich den unmittelbaren Anschlusszug um ca 3 Minuten verpasst, weil der pünktlich abgefahren war. Der nächste Zug eine gute halbe Stunde später natürlich nicht, der sich zudem noch einen Gleiswechsel erlaubt hat.

Wobei ich es heute mehr oder weniger gleichmütig hingenommen habe, dass ich etwa die doppelte Zeit wie geplant unterwegs war. Ich hatte keine Termine am Abend, hab trocken und warm gesessen und genug zum Arbeiten dabei.

Aber dennoch – es ist alles nur ein Witz, ein ganz, ganz schlechter Witz, wenn man mit der Bahn unterwegs ist.