Mein neuer LiL-Python-Kurs für Umsteiger

Derzeit kommt bei mir jede Woche bei LinkedIn Learning (LiL) ein neuer Entwickler-Tipp zu Python heraus und mittlerweile sind da Tipps im Umfang von über einer Stunde bereits veröffentlicht. Das wird auch das Jahr noch so jede Woche weiter gehen. Aber zusätzlich kommen immer wieder vollständige neue Trainings heraus. Und vor ein paar Tagen war es wieder soweit – ein kompletter neuer Kurs ist freigegeben worden.

Python für C++-, Java- und C#-Entwickler:innen

Schnell und einfach von C#, C++ und Java auf Python umsteigen aus dem Kurs „Python für C++-, Java- und C#-Entwickler:innen“ von Ralph Steyer
Mit der Popularität der Programmiersprache Python steigt auch der Bedarf an Python-Entwicklern. Gerade Umsteiger benötigen dazu einen anderen Ansatz als Einsteiger. Deshalb gehe ich in diesem Umsteigerkurs gezielt darauf ein, wie man von Grundkenntnissen in anderen Programmiersprachen bei den ersten Schritten in der Python-Welt profitieren kann. Dazu behandele ich in der grundlegenden Darstellung immer wieder Parallelen, Schnittmengen und Unterschiede insbesondere zu C++, C# und Java sowie Python-eigene Besonderheiten.

Aufrufargumente an ein Python-Programm übergeben – Entwicklertipp der Woche zu Python

Gerade passiert bei mir im Zusammenhang mit LinkedIn Learning (LiL) ziemlich viel. Geht wie beim Bretzelbacken, denn ein neuer Entwicklertipp der Woche zu Python ist heute herausgekommen. Die Woche ist das Thema, wie Aufrufargumente an ein Python-Programm übergeben und dort verarbeitet werden können.

Aufrufargumente an ein Python-Programm übergeben aus dem Kurs „Python-Entwicklertipps: Jede Woche neu“ von Ralph Steyer

#TopCompanies2021

Im Rahmen der neuen Kampagne  #TopCompanies2021 von LinkedIn Learning ist auch einer meiner Kurse (Python lernen) für den Monat Mai freigeschaltet worden.

Ziel der Kampagne: Um zu wachsen und an der Spitze zu bleiben ist es unerlässlich, bei wichtigen Trendthemen up-to-date zu bleiben. Deshalb zeigt LiL die 5 wichtigsten Trends von Top-Unternehmen im deutschsprachigen Raum auf, um Lernenden dabei zu unterstützen, ganz vorne dabei zu bleiben.

Auf „Videotour“

Seit gestern bin ich wieder an neuen Aufnahmen für LinkedIn Learning (LiL). Dabei sind gleich 3 Aufgaben zu erledigen.

  1. Eine kleine Fehlerkorrektur über gut 10 Sekunden in einem schon recht alten UML-Training. Ein Wortdreher ist erst nach zig Jahren aufgefallen.
  2. Eine komplette Aktualisierung eines Trainings aus dem Jahr 2013. Da ist definitiv klar, dass das nicht mehr ganz auf dem aktuellen Stand sein kann.
  3. Ein paar weitere Entwicklertipps der Woche zu Python.

Es stehen also reine Aktualisierungen und Erweiterungen zu bereits vorhandenen Trainings von mir an.

Der Entwicklertipp der Woche ist da – OpenCV unter Python nutzen

Nächste Woche werde ich neue Aufnahmen für LinkedIn Learning (LiL) einspielen, aber wie jede Woche kommt auch in der Mitte dieser Woche wieder ein Entwicklertipp der Woche zu Python heraus. Es geht um ein spezielles Framework, um unter Python Bilder und Videos anzuzeigen – OpenCV und das ist eine freie Programmbibliothek mit Algorithmen für die Bild- und Videoverarbeitung. Diese kann unter Python, aber auch anderen Sprachen verwendet werden. Die Bibliothek wird vor allen Dingen beim Deep Learning verwendet, kann aber auch einfach für das Anzeigen von Bildern und Videos verwendet werden. Und darauf konzentriert sich dieser Tipp der Woche.

Bilder und Videos mit OpenCV anzeigen aus dem Kurs „Python-Entwicklertipps: Jede Woche neu“ von Ralph Steyer

Dynamische Klassen und Typinformationen generieren – aus dem LiL-Tutorial zu Python

In Python kann man mit type nicht nur zur Laufzeit den Typ eines Objektes bestimmen, sondern sogar dynamisch eine Klasse generieren. Und genau das ist das Thema meinem Entwickler-Tipp der Woche bei LiL (LinkedIn Learning).


Dynamische Klassen und Typinformationen generieren aus dem Kurs „Python-Entwicklertipps: Jede Woche neu“ von Ralph Steyer

An apple a day keeps the doctor away

Äpfel sind gesund und schmecken meist (nicht zuletzt in Form von Äppler im Gerippten – also unserem regionalen Apfelwein). Aber zu technischen Äpfeln habe ich ein sehr gespaltenes Verhältnis. Die Zeit, wo ich auf Apple-Produkte herab geschaut habe, nur um mich als etwas Besseres zu fühlen, sind vorbei. Man wird Altersmilde. Und auch wenn ich niemals ein Apfel-SmartPhone, -Tablet oder sonstiges -Consumergerät haben will. Mich hat ein uralter Mac Mini, den ich eigentlich nur vor Jahren im Rahmen meiner Videotrainings zu iOS-Entwicklung für LinkedIn Learning (LiL) eingesetzt hatte, vor einigen Monaten bei den Corona-bedingten virtuellen Proben meiner Band komplett beeindruckt.

Wir nutzen bei den regelmässigen virtuellen Proben ein Programm mit Namen JamKazam und damit kann man – einen entsprechenden Account, gutes Internet und passende Hardware vorausgesetzt – fast Latenzfrei direkt live zusammenspielen. Mein Highend USB Interface, das ich von LinkedIn Learning (LiL) für meine Remote-Videotrainings gestellt bekomme, ist schon mal ideal, aber nur mit dem Mac Mini gibt es das perfekte Zusammenspiel – im wahrsten Sinn des Wortes. Mit drei anderen Rechnern (alle mit Windows 10) gab es immer irgendwelche kleinen oder grossen Macken.

Nur beim Mac läuft alles „out-of-the-box“. Das hat mich zu der Überlegung gebracht, ob ich mir nicht doch mal einen neuen Apple-Rechner zulegen sollte. Der neue M1-Prozessor soll ja verdammt gut sein. Vielleicht einen Mac Mini der neuen Generation? Nur gibt es die Dinger leider nur mit winzigem RAM und minimaler SSD. Da ein späteres Aufrüsten nicht geht, wäre eine Anschaffung nur dann sinnvoll, wenn man den Rechner 2 oder 3 Jahre als Hauptrechner einsetzt und dann abstösst. Da ich aber die Sache mehr oder weniger als „Hobby“ bzw. zum Aufbau von etwas mehr Erfahrung in der fremden Apple-Welt betrachte, ist mir die Angelegenheit zu teuer. Das ist ja immer das Apple-Problem – mindestens doppelt so teuer wie die direkte Konkurrenz und Aufrüsten ist nicht vorgesehen. Der neue All-in-one-Rechner von Apple hat mich jetzt auch komplett abgeschreckt. Die Vermarktung und die Schwerpunkte sowie die erkennbaren Produktausrichtungen sind nicht meine Welt.

Aber es gibt ja noch den alten Mac Mini, der in meinem Büro in Eppstein verstaubt und nur seit einiger Zeit zu den besagten Bandproben 2 -3 x im Monat erwacht ist. Den habe wieder in mein Bodenheimer Büro mitgenommen, denn er ist immer noch leistungsfähig genug, auch wenn die neuste Version von macOS darauf schon nicht mehr läuft. Ausserdem kann ich einen Monitor drauf stellen und muss dafür nicht wie bisher ein Buch nehmen, um den etwas höher zu bekommen. Zwar habe ich keinen Monitor und auch keine Tastatur für den Mac Mini übrig, aber dem lästigen Umstecken begegne ich mit VNC. Damit bleibt auch der Schreibtisch leerer. Die minimale Verzögerung bei den Signalen kann ich akzeptieren und sollte ich wider Erwarten ernsthaft mit dem Mac arbeiten, kann ich ja für den Fall tatsächlich die Peripherie umstecken.

Das sollte für meine Apple-Ambitionen genügen und ich schaffe mir doch lieber wieder für weniger Geld einen leistungsfähigeren Rechner an. Aber auch das hat keine Eile – noch geht meiner Workstation, das Matebook sowieso und selbst mein altes Terra-Notebook kann als Backup-Rechner alles liefern, was sich brauche (wenn auch etwas gemütlicher).

eval is evil – der aktuelle Python Entwickler-Tipp

Die Woche ist wieder rum und mein neuer Entwickler-Tipp der Woche bei LiL (LinkedIn Learning) ist freigegeben. Dieses Mal behandele ich das Thema Strings evaluieren in Python. Das geht mit der eval-Funktion, die aber nicht ganz unkritisch ist. Der Tipp stammt – wie die anderen bisher veröffentlichten Tipps – aus dem Kurs: Python-Entwicklertipps: Jede Woche neu.

Shallow-Copy: tiefes und flaches Kopieren – mein aktueller Python-Tipp der Woche

Nachdem als eine Art Belohnung für die gestiegenen Belastungen während der Corona-Krise letzte Woche LinkedIn alle Mitarbeiter weltweit in Urlaub geschickt hat, gab es auch von mir in dieser Woche keinen neuen Entwickler-Tipp der Woche zu Python. Aber seit Montag ist dieser Urlaub vorüber und ich habe vorgestern und gestern schon wieder mit einem Ansprechpartnern bei LiL wegen neuer Aktionen gesprochen. Und es gibt ab heute den nächsten Tipp der Woche.

Dabei geht es um Referenzen und Kopien in Python im Allgemeinen und die Unterschiede zwischen flachem und tiefem Kopieren im Speziellen. Python kennt verschiedene Versionen von Kopiervorgängen. Diese haben Auswirkungen darauf, was kopiert und was nur referenziert wird. Python zaubert im Hintergrund ganz gewaltig,

Shallow-Copy: tiefes und flaches Kopieren aus dem Kurs „Python-Entwicklertipps: Jede Woche neu“ von Ralph Steyer

Kein Tipp der Woche – LinkedIn macht Urlaub

Wir Autoren wurden schon vor einiger Zeit darüber informiert und die Tage stand es auch in diversen Medien – LinkedIn hat alle Mitarbeiter weltweit in Urlaub geschickt. Nicht aus der Not heraus, sondern als eine Art Belohnung für die gestiegenen Belastungen während der Corona-Krise. Davon profitieren auch meine Kontaktpersonen bei LiL und deshalb gibt es die Woche keinen neuen Entwickler-Tipp der Woche zu Python. Aber es gibt ja schon ein paar, die über die letzten Wochen veröffentlicht wurden und nächste Woche geht es weiter mit neuen Tipps.

Vorort vs remote

Ich bin mittlerweile schon über ein Jahr nicht mehr Vorort bei einem Kunden gewesen und habe keinen Geschäftspartner wirklich mehr getroffen. Aber rein von der Menge meiner Aufträge habe ich in der Zeit mehr gearbeitet als je zuvor im gleichen Zeitrahmen. Nur halt rein remote bzw. von meinen Büros aus.

Das geht beim Schreiben von Büchern und Schulungsunterlagen selbstverständlich ohne Probleme und das habe ich auch vorher schon viele Jahre gemacht. Auch die Aufnahmen meiner Onlinetrainings bei LinkedIn Learning (LiL) habe ich in der Zeit komplett in meinem Büro in Eppstein statt in Graz eingespielt. Aber auch das hatte ich vorher schon gemacht – wenngleich vielleicht bei maximal 10% – 20% der Trainings. Nur für Schulungen war ich bis letzten Februar eigentlich fast immer vor Ort (meine Betreuung der Onlinekurse bei der ILS außen vor). Bis zu dem Zeitpunkt hatte ich in den vielen Jahren davor vielleicht 2 oder 3 Remoteschulungen gehabt und mir in der Zeit der vielen Reisen und Hotelübernachtungen bei Schulungen gewünscht, in Zukunft weniger auf Achse zu sein. Tja – und dann ist dieser Wunsch in Erfüllung gegangen – aber schneller als gedacht und viel „intensiver“. Also Vorsicht mit den Wünschen.

Für mich ist es Zeit ein Fazit zu ziehen. Ich kann offensichtlich all meine Arbeiten von zu hause und/oder remote erledigen. Durch den Wegfall der Reisen/Fahrten gewinne ich sogar sehr viel Zeit und damit kann ich im Grunde mehr Aufträge erledigen bzw. mit einem signifikant geringeren Zeitaufwand. Der Wegfall der Reisekosten kommt als weiterer positiver Aspekt dazu.

Also alles gut? Rein von der Arbeit ja, aber von dem psychologischen bzw. zwischenmenschlichen Aspekt nicht.

Ganz fatal ist mir aufgefallen, dass der „Eindruck“ von Dingen und Ereignisse in dem letzten Jahr unglaublich „flach“ wird. Wenn ich eine Remote-Schulung halte und die Teilnehmer nicht einmal die Kamera an haben (was leider sehr oft der Fall ist), habe ich schon beim Schulen selbst keinen „echten“ Eindruck von den Teilnehmern und zudem bleibt mir die Maßnahme nicht wirklich in Erinnerung. Ich nehme Dinge und vor allen Dingen auch Personen visuell wahr und kann mir Namen kaum merken. Aber wenn ich Leute nach Ewigkeiten wiedersehe (passiert mir bei einem Kunden in Oberursel oft), erkenne ich sie sofort. Wie gesagt – die Namen sind weg, aber sonst erinnere ich mich an zig Details rund um die Personen als auch die Maßnahmen. Auch Orte/Hotels/Schulungsräume sind mit gewissen Maßnahmen verbunden und damit erzeugen sie Erinnerungen.

Solche Assoziationen entfallen bei Remote-Maßnahmen komplett und die Erinnerungen an Teilnehmer bis hin zu den ganzen Schulungen sind sofort verweht. Das finde ich sehr bedauerlich. Selbst die Erinnerungen an Details bei meinen Videoaufnahmen in den letzten Monaten gehen in der Gleichförmigkeit bzw. mangelnden Besonderheit unter. Wenn ich nach Graz geflogen bin, hat sowohl die Reise an sich als auch der Ort samt den Kollegen und Erlebnissen dort dauerhafte Erinnerungen geschaffen – auch wenn ich über die vielen Jahre mittlerweile gut 35 – 40x nach Graz geflogen bin. All da entfällt. Remote gibt es keine erinnerungswürdigen „Erlebnisse“ und und das ist einfach nicht gut.

So sehr mir die vielen Autofahrten und Reisen zu meinen externen Jobs die letzte Zeit vor Corona auf den Senkel gegangen sind – nach Corona werde ich versuchen, weiter viel remote zu erledigen. Aber einzelne Maßnahmen Vorort sind unbedingt notwendig. Zum Pflegen der Kontakte, aber auch dringend psychologisch.

 

Mein neustes Training bei LinkedIn Learning – Reveal.js

Da habe ich doch komplett verpasst, dass mein neustes Onlinetraining bei LinkedIn Learning (LiL) bereits vor 2 Wochen veröffentlicht wurde. Das Thema ist Reveal.js. Dabei handelt es sich um ein Open-Source-Web-Framework zur Erstellung von professionellen Präsentationen ala Powerpoint oder Impress. Nur laufen die im Webbrowser – also als eine Rich Internet Applications (RIA). Aufbauend auf bekannten Webtechnologien (HTML, CSS, JavaScript) kann man auch in die Präsentation direkt erstellen und anpassen. Das umfasst das Ändern von Stilen bzw. Layouts mit CSS, das Hinzufügen externer Webseiten mit einem oder das Implementieren Ihres eigenen benutzerdefinierten Verhaltens der Präsentation mithilfe von integrierten JavaScript-APIs. Er gibt sogar einen integrierten visuellen Online-Editor.

Mit Reveal.js professionelle Web-Präsentationen realisieren aus dem Kurs „Reveal.js lernen“ von Ralph Steyer

Das Matebook ist unmusikalisch

Morgen wollen wir nach längerer Krankheitspausen mit meiner Band wieder mit virtuellen Proben via JamKazam anfangen. Das Programm habe auf meinem alten Mac Mini in meinem Büro in Eppstein installiert, aber ich wollte es parallel auch auf meinem Matebook laufen lassen – für alle Fälle. Die Installation ging problemlos, aber auf Teufel-komm-raus wurde mein USB-Audio-Device nicht akzeptiert. Es wurde erkannt, aber als fehlerhaft abgelehnt. Am Mac macht es keine Probleme und auch bei anderen Programmen auf dem Matebook (etwa bei Videoaufnahmen für LinkedIn Learning) funktioniert es einwandfrei.

Ich verstehe es nicht. Aus reiner Verzweiflung habe ich JamKazam noch mal auf meinem uralten Terra-Notebook installiert und das USB-Device da angeschlossen. Auch da – Null-Problemo. Das Matebook ist sich anscheinend zu fein für Musik ;-).

Wir wollen beim Mac Mini unser geliebtes „Space Grey“ wieder

Ich war früher regelrechter Apple-Gegner und habe mich von dem gesamten Habitat und dem Hype rund um diese „Religion“ richtig angewidert gefühlt. Außer bei ein paar Onlinetraining zur App-Entwicklung unter iOS bei LinkedIn Learning (LiL – damals noch Video2Brain) habe ich rein gar nichts mit Apple-Produkten zu tun gehabt. Aber da musste ich ja zwangsläufig mit einem Mac arbeiten (ein Mac Mini, der bei mir im Zweitbüro immer noch sein Gnadenbrot fristet). Aber sonst wollte ich einfach nicht an das Zeug ran. Selbst bei meinem Buch zu Cordova, bei dem es ja um Cross Plattform Entwicklung für Apps (und damit auch iOS) geht, konnte ich rein mit Linux und Windows als Entwicklungsplattform und Android, Windows Mobile und den Browser als Ziel-Plattform bzw. Emulation auskommen und damit iOS nebenher erschlagen.

Meine Kidds hingegen verwendeten irgendwann an der Schule und jetzt der Uni iPads, aber auch die haben mich absolut nicht überzeugt.

Eigentlich habe ich das erste Mal einen Apple als „richtiges“ IT-Gerät statt reines Mode- und Statusspielzeug wahrgenommen, als wir Corona-bedingt mit meiner Band nur noch virtuell mit JamKazam zusammenspielen konnten. Mit keinem anderen Rechner ist die Sache so gut gelaufen wie mit besagtem alten Mac Mini, der in meinem Büro in Eppstein verstaubte.

Nun bin ich sogar mittlerweile so weichgekocht, dass ich mir die Anschaffung von einem der neuen Mac Mini mit dem M1-Prozessor oder eventuell kommenden M2-Prozessor vorstellen kann. Die neue Architektur von Apple soll ja wirklich herausragend sein.

Mich schreckt noch das Betriebssystem ab (ich kann mit Mac OS nicht arbeiten – fertig), aber ich habe gelesen, dass ein virtualisiertes Windows 10 auf den Geräten schneller laufen soll als auf vergleichbaren Intel-PCs nativ. Das wäre ein gangbarer Weg, wobei die Kosten schon heftig sind und es derzeit wohl die Geräte nur mit winziger SSD (gerade mal 512 GB) und ebenso winzigem RAM (m.W. nur 8 GB oder vielleicht 16 GB) gibt. Aber ich denke schon, dass da demnächst praxisgerechtere Varianten mit vielleicht 1 TB SSD und mindestens 32 GB RAM auftauchen. Weniger sollte es in aktuellen Zeiten auf keinen Fall mehr sein und je nachdem, wie teuer sich Apple sich die Dinger bezahlen lässt, würde ich vielleicht sogar zuschlagen.

Nun habe ich deshalb ein bisschen in Apple-Magazinen gestöbert und eine Schlagzeile zu dem Mac Mini hat mich schon wieder massiv ins Zweifeln gebracht, ob ich mich wirklich in diese Welt begeben sollte? Da war das zu lesen:

Mac Mini – Space Grey kommt zurück
Viele stellten sich die Frage: Warum hat Apple den M1-Mac-Mini nicht in der Farbe Space Grey 2020 gebracht? …

Geht es noch? So etwas ist Thema in diesem Umfeld? Die Farbe?

Au weiha …

Java 16 ist da

Jetzt lerne ich JavaDie Version 16 von Java wurde gerade freigegeben. Seit der Einführung von Java 10 im Jahr 2018 verfolgt Oracle einen halbjährlichen Release-Plan. Damit soll man schneller auf Neuerungen im IT-Umfeld reagieren können. Ich persönlich finde die permanenten neuen Versionen allerdings nervig bzw. lästig. Die jeweiligen Neuerungen sind oft nur unter der Oberfläche, eher von kleiner Natur oder werden groß angekündigt und dann doch nicht implementiert. Das habe ich oft genug bei den letzten Versionen mitbekommen.

Aber sei es drum – auch wenn ich mich immer noch als Fan von Java sehe (vor allen Dingen den frühen Versionen), mache ich mit Java die letzten Jahre nicht mehr wirklich viel. Hin und wieder ein paar Online-Training für LiL (LinkedIn Learning) oder das Buch „Jetzt lerne ich Java“ von MuT. Aber irgendwie hat Java für mich ein wenig seinen Reiz verloren und auch die Anfragen für Schulungen oder Projekte im Java-Umfeld haben bei mir exorbitant abgenommen. Java fällt bei mir mittlerweile vor allen Dingen bei Schulungen zugunsten von Python fast komplett hinten runter. Was erstaunlich ist, denn Java war für viele Jahre neben clientseitiger Web-Programmierung meine Hauptsäule.

Was zu dem Fazit führt, dass ich gerade für April eine Java-Einzelschulung angenommen habe. Logisches Fazit, oder? 🙂

Es ist wieder Zeit für meinen Tipp der Woche

Mein Entwickler-Tipp der Woche bei LiL (LinkedIn Learning) behandelt dieses Mal einen kleinen, aber feinen Trick, um sichere Typvergleiche durchführen zu können. Der Trick an sich ist unabhängig von Python und in einigen anderen Sprachen wie JavaScript sogar noch nützlicher.

Per pickle-Modul Objekte persistent machen – der neue Python-Entwickler-Tipp

Der Name des Moduls (pickle) klingt vielleicht etwas komisch, aber es ist im Standard-API von Python eine wunderbar einfache Möglichkeit, um damit Objekte persistent zu machen. Mein Entwickler-Tipp der Woche bei LiL (LinkedIn Learning) behandelt genau dieses Thema und ist gerade veröffentlicht worden.

Aufnahmen im Kasten

Die Aufnahmen für mein neustes Videotraining für LiL (LinkedIn Learning) sind im Kasten und es stehen jetzt nur noch ein paar Korrektur- und Nacharbeiten an. Nach dem Chaos-Tag gestern mit diversen Problemen ist es dann heute ganz ok gelaufen. Nur hatte ich auch heute mehrere Abstürze – sowohl von der Aufnahmesoftware, aber auch Browser-Tabs bis hin zu Windows selbst. Letzte Woche hatte ich das Problem bei meiner Remote-Schulung schon einmal, aber da hatte ich das auf das Meeting-Tool geschoben. Das hatte ich vorher noch nie verwendet und einfach als instabil eingestuft.

Nun scheint es mir aber, dass ich bei meinem Notebook ein Problem habe. Dabei fallen mir zwei Gründe ein, die dafür verantwortlich sein könnten:

  1. Der Platz auf meiner Festplatte ist extrem eng und ich habe schon an der Auslagerungsdatei geknapst, um da etwas Luft zu bekommen. Neben dem Auslagern von Programmen auf eine externe SSD. Aber da wird die Luft verdammt eng.
  2. Ich arbeite bei Remote-Schulungen und Videoaufnahmen mit drei Bildschirmen. Neben dem Notebookbildschirm schließe ich über Adapter zwei externe Monitore an und an den Adaptern hängen zusätzlich externe Festplatten und andere Periferiegeräte. Das ist ein ziemliches Kuddel-Muddel und möglicherweise kommt da Windows mit den Kanälen durcheinander.

Ich muss beide mögliche Ursachen untersuchen. So Abstürze habe ich sonst nicht und die sind verdammt lästig.

Wieder im „Studio“

Heute habe ich wieder mit neuen Aufnahmen für LiL (LinkedIn Learning) begonnen. Aber die Sache lässt sich ungewöhnlich mühseelig an. Ständig knallen mir Fehler während der Aufnahme rein. Von Rechnerabstürzen über Authentifizierungsprobleme bis hin zu Fehlern bei den Ressourcen. Alles dabei :-(.

Aber so ganz langsam finde ich in die Spur. Ich habe genug Zeit einkalkuliert und hoffe, dass es dann ab morgen besser läuft.