Tupel Um-Tupeln

In einigen Tagen geht es mit neuen Videoaufnahmen für LinkedIn Learning (LiL)  wieder los. Immer noch in Form von Home-Recording, aber es ist absehbar, dass ich auch irgendwann mal wieder nach Graz komme. Bis dahin wird jedoch noch einiges Wasser „die Bach runterfließen“ – ja die (!) Bach, was man als echter Hesse selbstverständlich sagt.  Und die Bach bringt Mitte jeder Woche ein Boot mit einem  neuen Entwicklertipp der Woche zu Python vorbei. Diese Woche behandle ich das Manipulieren von Tupeln. die ja „eigentlich“ immutable sind.

Bücher diktieren mit der Android-Spracherkennung

Neben meinen ganzen Videoaufnahmen für LinkedIn Learning (LiL) ist das Schreiben von Büchern immer noch eines meiner beruflichen Standbeine. Aber definitiv bin ich da nicht mehr so aktiv wie früher, denn der Buchmarkt ist beileibe nicht mehr attraktiv, wie es zu meinen Anfangszeiten als Autor war. Wenn ich mir vorstelle, dass mein – von den Verkaufszahlen – erfolgreichstes Buch mit allen Folge- und Querauflagen bei ca 175.000 Exemplaren gelegen hat (gut 90.000 in Deutschland und der Rest als Übersetzungen), kann einem schwindelig werden. Heute sind 1.000 verkaufte Exemplare von einem Buch schon bemerkenswert.

Trotzdem – ich schreibe auch weiter Bücher, weil es mir einfach Spaß macht und zudem habe ich dann Material für Schulungen. Ebenso macht es viel Sinn, um sich ein Thema gründlich zu erarbeiten, zu vertiefen oder zu reaktivieren. Wobei neue Themen in den letzten Jahren eher selten kamen. Vielleicht 1 Buch oder eine Schulungsunterlage im Jahr für meine großen Verlage, wenn ich das richtig sehe, aber durchaus auch mal mehr, wenn ich ein Thema im Selbstverlag herausbringen wollte. Häufiger überarbeite ich aber vor allen Dingen Werke von mir, die in die Zeit gekommen sind. So auch aktuell, wo ich eine Schulungsunterlage und ein Buch in der Werft liegen habe.

Eben kam mir die Idee, ob ich nicht die Möglichkeit zum Diktieren von Textpassagen nutzen sollte. Das hatte ich früher schon gemacht und mir damals eine Dragon-Lizenz gekauft. Das Programm könnte ich mir – da vom alten Rechner mittlerweile gelöscht – ganz legal auf die Workstation bzw. mein Matebook neu installieren. Aber meine lizenzierte Dragon-Version ist in die Jahre gekommen und so viel will ich damit nicht aufnehmen, dass sich eine neue Lizenz für mich lohnt – so gut das Programm auch ist.

Nun gibt es aber auch Spracherkennung in Windows 10 oder mit Microsoft Dictate oder Speak A Message. Habe ich gerade alles mal in Verbindung mit einem Editor ausprobiert. Nicht schlecht, aber auch nicht so gut, wie ich es etwa von der Spracherkennung auf meinem Android-SmartPhone gewohnt bin.

Also kam ich auf die Idee, warum nicht die Spracherkennung des SmartPhones nutzen. Die Qualität der Erkennung ist da einfach richtig gut – Datenschutz wegen Erfassung in der Cloud und bei Google außen vor. Nur müssen die so auf dem SmartPhone erfassten Texte dann auf den PC. Klar – das Ergebnis kann man mit E-Mail, WhatsApp etc. dann teilen. Aber das schien mir zu wenig „smart“.

Hier habe ich dann eine schöne Anleitung gefunden, wie man mit Unified Remote auf dem PC einen Server aufsetzt, der per W-LAN Kontakt zu der passenden App aufbaut. Dort kann man dann mit dem Basic Input und der Tastatureingabe auf der App das Mikrofon nutzen, um Text in die App zu bekommen, der parallel auf dem PC in einem Editor oder einem Textverarbeitungsprogramm auftaucht, da Client auf dem SmartPhone und Server auf dem PC synchronisiert werden. Einfach mal die Anleitung ansehen – easy und smart und die Texterkennungsqualität ist wirklich gut. Es ist aber ganz klar, dass ich dennoch die Texte erheblich nacharbeiten muss. Aber das ist sowieso bei mir der Fall – ich schreibe meine Ideen frei Schnauze runter und bringe sie erst mit mehrfacher Überarbeitung dann ins endgültige Format.

Zoom-Meeting mit Linkedin Learning direkt in der Natur

Anlässlich interner Umstrukturierungen in Graz bei LinkedIn Learning (LiL) gab es heute ein Abschieds-/Vorstellungs-Meeting auf Zoom. Da wollte ich auf jeden Fall teilnehmen, um mal wieder die Grazer Mann- bzw. Frauschaft und auch andere Trainer zu sehen. Wenn auch nur virtuell.

Nur wollte ich auch um die Zeit eine Radtour machen. Also habe ich beides kombiniert und dann am Alteburger Markt eine Pause gemacht, um auf einer Bank unter Bäumen per SmartPhone am Zoom-Meeting teilzunehmen. Tja – moderne Techniken machen es möglich. Unmöglich war allerdings die Hitze. Hab mich mit der Tour etwas übernommen.

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

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.

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.

Tipp Nummer 2 der wöchentlichen Python-Entwicklertipps bei LinkedIn Learning

Letzte Woche ist meine Serie mit wöchentlichen Tipps & Tricks zu Python bei LinkedIn Learning (LiL) gestartet, in denen ich ergänzend zu meinen „normalen“ Kursen bei LiL über einige Monate jede Woche neu einzelne Videos mit Python-Entwicklertipps veröffentliche.

Der heute veröffentlichte Beitrag zeigt, wie man in Python über ein Objekt iterieren kann. Die Sache passt ganz gut zu dem heutigen Tag, denn genau das habe ich so ziemlich als Letztes in meiner aktuellen Python-Schulung, die ich über die Woche als Remoteveranstaltung halte, vorgeführt.

Python-Entwicklertipps: Jede Woche neu bei LinkedIn Learning

Heute starten meine wöchentlichen Tipps & Tricks zu Python bei LinkedIn Learning (LiL). Ergänzend zu meinen „normalen“ Kursen bei LiL werden ab sofort über einige Monate jede Woche neu einzelne Videos mit Python-Entwicklertipps veröffentlicht.

Der heute als „Starttipp“ veröffentlichte Beitrag zeigt, wie man in Python eine angepasste To-String-Funktionalität bereitstellen kann.

Es stehen die erste Videoaufnahmen 2021 an

 

Nächste Woche geht es richtig los mit neuen Videoaufnahmen für LinkedIn Learning (LiL).
Das Jahr 2021 startet für mich also direkt mit Videoaufnahmen.

Heute habe ich mich aber schon in meinem „Studio“ in Eppstein eingerichtet, das erste Probevideo aufgenommen und auf Sharepoint geladen.

Während ich der Dinge (sprich – der Kontrolle, ob alle Einstellungen ok sind) geharrt habe, habe ich einen kurzen Waldlauf über den Staufen gemacht. Obwohl es am Anfang brutal hochgeht, ist das meine absolute Lieblingsstrecke. Und da im Moment Eppstein direkt an der Schneefallgrenze liegt, gibt es im Tal zwar kaum Schnee, aber oben auf dem Staufen ist es richtig schön winterlich. Zwar nur ein paar Zentimeter, aber immerhin.

 

 

Weihnachtsgeschenk von LinkedIn Learning

Eben kam ein etwas verfrühtes Weihnachtsgeschenk von LinkedIn Learning (LiL) an. Vor einigen Wochen konnte sich alle LinkedIn-Instructors melden, wenn sie eine Kappe aus einem gewissen Kontingent haben wollen. „First come first serve“ oder so. Und bei mir hat es geklappt :-).

KI und Datenauswertung von Facebook anscheinend komplett fehlerhaft

Da redet alle Welt von „Künstlicher Intelligenz“ (KI oder AE) und „Big Data“ bzw. der automatisierten Datenanalyse und gerade Facebook scheint es nicht hinzubekommen, aus Daten die richtigen Schlüsse zu ziehen. Ich werde seit einigen Monaten mit irrelevanter Werbung genervt. Dummerweise habe ich mich auf das Spiel eingelassen und die dann versucht zu verbergen und auch explizit als „irrelevant“ angeklickt. Seit dem bekomme ich sie immer mehr angezeigt. Rein aus Ärger habe ich das Prozedere jetzt gut 20 – 30 Mal gemacht und jetzt bekomme ich als Resultat diese Werbung ausschließlich vorgesetzt.

Frei nach dem Motto. „Dich interessiert das nicht und du wirst es nie kaufen? -Dann nerven wir so lange, bis du aufgibst!“

Es ist so auffällig, dass es nur so sein kann, dass in irgendeinem Auswertealgorithmus von Facebook ein Pluszeichen und ein Minuszeichen wohl vertauscht sind. Je weniger ein Thema interessant ist, desto mehr Werbung aus dem Bereich schicken wir. Das sollten die Werbetreibenden auch mal beachten, bevor sie der Datenkrake Geld für vollkommen falsch platzierte Werbung in den Rachen werfen. Und als Anwender darf man nicht eine der angebotenen Interaktionslinks von Facebook anklicken. Auch wenn man da anscheinend gewisse Dinge einstellen kann – das wird in jedem Fall negative Folgen haben :-(.

Vielleicht sollten die Programmierer bei Facebook mal meine Trainings bei LinkedIn Learning zur Datenanalyse ansehen.