Erstes Testvideo der Lamax

Um zu sehen, wie gut oder schlecht die Videoqualität von meiner neuen Action Cam (LAMAX W9.1 REAL) ist, bin ich vorhin kurz mit meinem Cross-Country-Bike eine ziemlich brutale Teststrecke über ganz schlechtes Kopfsteinpflaster, Feld- und Wiesenwege gefahren. Die Cam war mit einem der beiliegenden Aufsätze direkt am Lenker montiert und hat damit voll alle Schläge vom Untergrund abbekommen. Gerade auf dem Kopfsteinpflaster ist auf der Strecke kaum der Lenker festzuhalten. Ich hatte HD/30fps/High-Quality eingestellt (ich habe noch keine ausreichend schnelle Micro-SD für 4K oder mehr fps) und teils mit Bildstabilisierung, teils ohne aufgenommen. Und von der Geschwindigkeit teils normal, teils doppelte Geschwindigkeit.

Von dem Resultat der Aufnahmen bin ich ziemlich begeistert. Nicht täuschen – die Videoqualität ist durch die Nachbearbeitung und den Upload auf YouTube etwas schlechter als im Original bzw. Rohmaterial. M.E. muss sich die Videoqualität wirklich nicht hinter der einer modernen GoPro oder DJI verstecken – obwohl der Preis dieser Cam deutlich unter diesen liegt.

Die REST-API mit Python nutzen – neu in meinem wöchentlichen Tutorial zu Python

Mittwoch und bei LinkedIn Learning gibt es wieder einen neuen Entwickler-Tipp zu Python. Mit der REST-Schnittstelle erhält man zusätzliche Flexibilität in Python, um Management-Aufgaben durchzuführen aber auch automatische Informationen zu nutzen. Python bietet sich gerade zu ideal für die Zusammenarbeit an. Sogenannte Web Services stellen standardisierte Schnittstellen bereit, womit man über das Internet kommunizieren kann. Genau genommen können Sie Dienste in Anspruch nehmen, die in einer standardisierten Form bereitgestellt werden. Das kann man auch aus Python heraus nutzen. Das sogenannte RESTful-API oder allgemein Rest ist eine solche Programmierschnittstelle, die auf HTTP-Anfragen reagiert. Im Wesentlichen unterscheidet man hier zwischen den verschiedenen Methoden, die man mit HTTP-Daten anfordern kann. Get, Post, Put und Delete. Und in Abhängigkeit von diesen Methoden können gewisse Dinge bereitgestellt werden. Die Antwort von einem Rest oder RESTful Web Service liegt in der Regel in Json oder dem XML-Format vor und Python nutzt als Basis für REST oft das Modul requests.

Und Action – LAMAX W9.1

Ich habe eine neue Action Cam! Was sowohl beruflich als auch für die Freizeit von Bedeutung ist.

Für meinen Fliegerblog nehme ich seit vielen Jahren Videos und Bilder mit einer Action Cam auf, die ich meist am Helm befestigt habe. Gelegentlich brauche ich so ein Multimediamaterial aber auch beruflich, denn wenn ich etwa Videos in meinen Videotraining bei LinkedIn Learning zum Zeigen von Mutimedia-Features verwenden will, ist das mittlerweile ein echtes Rechteproblem – bei fremden Material. Also nehme ich dazu selbst aufgenommene Bilder und Videos, aber im Fall von Audiodateien auch Musik, die selbst komponiert und eingespielt habe oder die von meiner Band stammt.
Nun kam als Action Cam bei mir bisher eine GoPro zum Einsatz. Eine GoPro der 2. Generation! Was darauf hindeutet, dass die schon viele Jahre alt ist – ca 12 Jahre genau genommen. Das merkt man an der Bildqualität, aber das ist nicht einmal das Schlimmste – die GoPro muckt rum. Immer mehr. Im Grunde schon seit etwa 1 Jahr. Ich habe sie vor einiger Zeit zerlegt, richtig sauber gemacht und zurückgesetzt und danach hat sie teils wieder schöne Dauerbilder gemacht, aber sich auch teils vollkommen ohne Anlass abgeschaltet. Nun hat meine GoPro 2 über viele Jahre gute Arbeit geleistet, obwohl ich sie wirklich oft verwendet und ziemlich hart rangenommen habe und die Cam hat ihr Geld wirklich verdient. Also sei es ihr verziehen, dass sie so langsam müde wird.
Nur – mit dem Zustand, dass das Ding einfach nicht mehr zuverlässig ist, habe ich mich nun längere Zeit herumgeschlagen und mehrere Flugtage keine Bilder oder Videos sauber hinbekommen. Für den kommenden Black-Friday hatte ich daher schon seit Monaten vor, nach einem Ersatz zu schauen. Aber der Ausfall am letzten Wochenende hat mich dann doch ziemlich geärgert, weil ich einen wirklich schönen Flug mit dem Gleitschirm hatte, von dem ich gerne die Aufnahme gesehen hätte.
Damit war die GoPro einfach reif. Ich habe über Wochen bereits Preise und Testberichte der verschiedenen aktuellen GoPros als auch mehrerer Cams von Billig-China-Marken verfolgt. Ich hatte in der Folge mehrere Billig-China-Cams in der Auswahl, denn im Grunde brauche ich die super Features der teureren GoPros nicht. Ich war kurz davor, mich für eine der China-Cams zu entscheiden, aber dann habe ich mir für alle infrage kommende Cams Referenzvideos auf YouTube angesehen. Und die Qualität fand ich erschreckend schlecht. Besonders dann, wenn das gleiche Material von einer teuren Cam von GoPro oder DJI im Vergleich gezeigt wurde.
Durch Zufall bin ich beim weiteren Suchen nach GoPro-Alternativen in einer seriösen Computerzeitschrift auf einen Test gestossen, bei dem eine Cam mit Namen LAMAX W9.1 REAL 4K 60fps als ungewöhnlich gut in der Klasse unter 200 EUR bewertet wurde. Die ist wohl nicht wirklich bekannt und hatte auf Amazon gerade einmal 3 Rezensionen – im Gegensatz zu zig Tausenden von Rezensionen bei den China-Cams oder den GoPros und anderen Platzhirschen. Wobei die Rezensionen bei den China-Cams in großen Umfang durch Geschenke bei 5-Sterne-Bewertungen gekauft bzw. verzerrt werden und dementsprechend für die Tonne sind.
Aber der Test in der PC-Zeitschrift war so überzeugend, dass ich kurzentschlossen am Sonntag – noch gefrustet von dem Ausfall der GoPro an dem Flugtag – die Lamax-Cam bestellt habe. Sie war auch nicht teurerer als die etwas besseren China-Cams, die auf Amazon so prägnant beworben werden, und ich habe mich einfach auf den Test verlassen. Erst nach der Bestellung habe ich gemerkt, dass die Lamax W9.1 auch gar keine China-Cam ist, sondern aus Tschechien kommt. Was in Hinsicht auf Geld in der EU lassen auch von Vorteil ist.
Vorhin kam die W9.1 an und natürlich musste ich sie gleich ausprobieren. Was gleich mit dem Problem verbunden war, dass nur eine Micro-SD als Speichermedium geht und ich sowas ich nicht da habe. Nur in einem SmartPhone für alte Daten. Die Daten darauf habe ich dann gesichert und die Karte in die Cam eingelegt. Mit dem Resultat, dass die SD-Karte zu langsam wäre. Alle Videos mit besserer Qualität werden verweigert. Erst bei HD mit 30 fps hat sich die Cam erbarmt und ein Video aufgenommen.

Aber eigentlich wollte ich erst einmal sehen, wie die W9.1 sich bei 4K schlägt. Ich war ob des recht niedrigen Preises unsicher, ob die Cam wirklich eine gute Wahl ist und wollte sie erst einmal ausführlich testen. Der Plan – wenn sie nichts taugt, soll sie zurückgehen und dann gibt es am Black Friday doch eine GoPro.

Das Thema ist durch.

Nach den kurzen Tests fällt mir nur negativ an der Lamax auf, dass die Verschlüsse sehr schwer bzw. fummlig aufzumachen sind und bei Dunkelheit die Bildqualität mau ist. Selbst das Video in der niedrigen Qualität ist jedoch eine Revolution gegenüber dem, was ich von der GoPro 2 gewohnt war. Wenn ich eine schnelle Micro-SD dann habe und 4K-Aufnahmen mache, kann das eigentlich nur noch besser werden. Dazu wird mit der Cam ein Zubehör geliefert, dass kaum ein Wunsch offen bleibt. Auch die App samt der WiFi-Verbindung ist der Burner.
Ich bin gespannt, wie die Qualität dann bei echten Aufnahmen wird, aber spontan bin ich von dem Ding begeistert. Ich frage mich echt, was eine GoPro der neuen Generation besser leistet, um den mehrfachen Preis zu rechtfertigen? Ich müsste mal Videos im direkten Vergleich sehen.

Java 17 LTS

Es ist fast erschreckend, wie lange ich mich mit Java schon beschäftige. Über 25 Jahre, denn ich habe Java kennengelernt, als es noch in der ersten Betaversion war. Auch wenn mittlerweile andere Sprachen Java für mich (aber auch allgemein wohl) etwas in den Hintergrund gedrängt haben, bin ich dennoch immer noch bei der Sache. Insbesondere verfolge ich die Neuerungen von Java über die letzten Jahre genau. Wobei dessen halbjährlicher Aktualisierungszyklus in meinen Augen nicht gut ist. Jede neue Version treibt irgendwelche Säue als Previews durch das Dorf und dann kommen die erst mehrere Versionen später oder auch gar nicht.

Aber mit der gerade erschienenen Version 17 gibt es einen Meilenstein, unter dem die vielen kleinen Neuigkeiten seit Java 11 nun einen festen Stand bekommen. Denn Java 17 ist die erste LTS-Version seit Java 11, der mit Java 8 die vorige LTS-Version voran ging. Die großen Unternehmen beachten ja meist nur die LTS-Versionen und wenn man die Entwicklung von Java betrachtet, ist es wohl auch nur sinnvoll, auf diese LTS-Versionen umzusteigen. Es sei denn, man ist ein Early-Adapter und/oder an den jeweiligen Neuerungen im Halbjahresturnus wirklich interessiert.

So gesehen ist also nach einigen Jahren gerade wieder eine Version erschienen, die sich vermutlich großflächig etablieren wird und von allgemeinem Interesse sein sollte.

Winter kann kommen

Letzte Woche bin ich noch in kurzen Hosen mit dem Fahrrad zwischen meinen Locations in Bodenheim und Eppstein gependelt. Aber so langsam steht der Winter vor der Tür und irgendwann müssen die Winterreifen auf das Auto. Denn obwohl ich überwiegend remote arbeite – ich pendle wie gesagt immer wieder zwischen Bodenheim und Eppstein und u.U. kommt Ende November sogar eine Vor-Ort-Schulung in Miltenberg.

Kurzentschlossen habe ich also eben die Winterreifen montiert. Zwar ist das noch ziemlich früh im Jahr, aber ich hasse es auf dem eiskalten Boden zu liegen, wenn ich den Wagenheber unter die Kiste positionieren muss. Deshalb wechsele ich die Reifen lieber bei halbwegs warmen Temperaturen.

Wobei ich eigentlich keine Lust mehr habe, die Reifen immer selbst zu wechseln. Das ist doch eine arge Plackerei..

Aber die Reifen ins Auto packen, zu einer Werkstatt fahren, dort warten und dann die Sache wieder zurück dauert definitiv vielfach länger als es eben selbst zu machen. Mit der kompletten Vorbereitung samt Anziehen vom Blaumann, dem Heranschaffen des Werkzeugs bis hin zum abschliessenden Prüfen des Luftdrucks, Wegräumen und Waschen bin ich da in knapp über einer Stunde durch. Selbst im optimalen Fall mit Termin brauche ich mindestens die doppelte Zeit, wenn ich das machen lasse. Von Wartezeiten auf Termine und Warteschlangen in der Werkstatt in Stosszeiten gar nicht zu reden.

WhatsApp Desktop App startet nicht unter Windows 10

Ich nutze gerne die Desktop App, wenn ich bei WhatsApp mehr als ein bisschen Text eingeben will. Spracherkennung hin oder her – an einer richtigen Tastatur und mit einer Maus kann man einfach mehr machen und es geht alles besser. Nur musste ich die letzten Tage bei allen Rechnern zwangsweise die Desktop App von WhatsApp aktualisieren. Und jedes Mal ist auf allen Rechner die davor problemlos laufende App danach nicht mehr gestartet.

Tipps im Internet sagen nun, dass sich bei der aktuellen Version der WhatsApp Desktop App der Prozess einfach nicht richtig beendet und man ihn im Task Manager abschießen soll. Danach würde die App wieder starten. Das war vielleicht bei anderen Bugs sinnvoll, aber beim aktuellen Problem hilft das nicht weiter.

Also ziehe ich den Schlussstrich und deinstalliere die Desktop App. Gewinne Platz und hab einen Datenspion weniger auf meinen Rechnern. Die Web App ist ja zur Not sowieso genauso gut zu verwenden wie die Desktop App.

Reguläre Ausdrücke in Python

Bei LinkedIn Learning gibt es seit heute wieder einen neuen Entwickler-Tipp zu Python. Reguläre Ausdrücke in Python sind das Thema. Reguläre Ausdrücke sind sehr mächtige Features, um Suchausdrücke in Form von Pattern zu definieren. Das re-Modul ist der Zugang in Python, das in diesem Video vorgestellt wird. In Python ist das Modul re die Basis. Nicht die einzige Möglichkeit, aber das ist ein Standardmodul, mit dem man reguläre Ausdrücke formulieren und vor allen Dingen verwerten kann. Das Interessante ist nicht die Formulierung, das ist die Verwertung. Das heißt, es gibt Methoden, um reguläre Ausdrücke, also Such-Pattern in irgendeiner Form zu verarbeiten, nach Übereinstimmungen zu suchen, aber beispielsweise auch Texte an gewissen Stellen aufzusplitten und ähnliche Dinge.

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.

Neuer Versuch

Ich versuche es noch einmal mit einem E-Bike. Durch Corona arbeite ich ja beruflich seit über 1,5 Jahren ausschließlich von zu hause. Wobei das ja 2 Standorte sind – Bodenheim und Eppstein. Zwischen denen pendle ich immer wieder. Meist mit dem Auto, ab und zu mit dem Mopped, aber auch immer wieder mit dem Fahrrad. Dazu habe ich mir letztes Jahr ein Trek Procaliber 9.6 zugelegt – ein Carbon-Cross-Country-Rad. Eine echte Rennmaschine, aber immer noch komfortabel für ein Hardtail durch eine spezielle Konstruktion am Hinterbau. Das Teil ist echt eine Waffe und ich bin die Strecke von Eppstein nach Bodenheim damit schon in 1:29 gefahren. Nur ist die Strecke zwischen Bodenheim und Eppstein wirklich nicht ohne. Vor allen Dingen in Richtung Eppstein. Da ist zwischen dem Wiesbadener Kreuz und dem Lorsbach-Tal ein knackiger Berg im Weg. Entweder fährt man außen herum und damit mehrere Kilometer Umweg oder man hat ziemlich viele Höhenmeter – von Bodenheim kommend lang und hinziehend, von Eppstein aus brutal steil. In jedem Fall ist die Strecke so anstrengend, dass immer wieder der Schweinehund siegt und ich das Auto oder Mopped statt des Rades nehme – auch wenn ich durchaus häufiger schon die Strecke gefahren bin.

Das Hauptproblem ist aber, dass eine Fahrt hin und zurück an einem Tag absolut an mein Leistungslimit geht. Das habe ich vor etwa 2 Wochen wieder gemerkt, als ich mich an die gesamte Strecke an einem Tag gemacht hatte. Nach der Tour war ich fix und alle und hatte auch die nächsten Tage Muskelkater. Daraus folgt, dass ich die eine Richtung locker mit dem Trek schaffe und wenn ich dann in Eppstein übernachte und erst an einem der nächsten Tage zurück fahre, ist das easy. Aber hin und zurück an einem Tag schaffe ich nur, wenn ich wirklich gut drauf bin. Fazit – für so eine Tour ist ein E-Bike definitiv besser.

Aber auf die Idee war ich schon einmal gekommen und hatte mir vor wenigen Jahren bereits ein E-Bike zugelegt, das aber nach einem halbem Jahr schon geklaut wurde. Direkt beim Kunden aus der Garage. Deshalb hatte ich danach frustriert den Gedanken eines E-Bikes als „Business-Fahrrad“ aufgegeben. Die werden einfach zu schnell gestohlen. Zudem war ich damals mit einem Carbon-Rad eine Referenzstrecke (halbe Distanz von Eppstein bis Hochheim) gut 10 Minuten schneller als mit dem E-Bike gewesen. Deshalb wurde es eben letztes Jahr das Trek und mit dem habe ich zwischenzeitlich meine Bestzeit von Eppstein nach Bodenheim wie gesagt auf 1:29 gebrandet.

Aber der Gedanke an eine leichtere Gesamttour hat mich nicht losgelassen und durch das neue Trek ist mein altes MTB ein bisschen in Dornröschen-Schlaf gefallen. Es wurde die letzte Zeit zwar immer noch regelmäßig verwendet, aber nur noch im Ort und wenn eines der anderen Räder der Familie defekt oder nicht verfügbar war.

In Eppstein hat nun ein neuer Radladen aufgemacht und nachdem ich mein Trek und das Kelly von meinem Sohn da zur Inspektion hatte und sehr zufrieden war, hab ich den Knaben gefragt, was er von e-Bike-Nachrüstsätzen für normale Fahrräder halten würde. Wie es der Zufall wollte, macht er sogar solche Umbauten. Nachdem ich dann seine Referenzräder probegefahren bin, habe ich mich direkt entschlossen, mein altes Carver-MTB mit einem Motor nachrüsten zu lassen.

Am Donnerstag habe ich es abgeholt und heute die erste wirkliche Probefahrt gemacht – eben von Bodenheim nach Eppstein und wieder zurück. Ich hatte da sowieso zu tun, es war super sonnig und genau dafür wollte ich ja ein E-Bike. Mein altes Rad hat einen Bafang-Mittelmotor bekommen und einen riesigen Akku – sowohl von dem Ausmassen, aber auch der Kapazität. Selbst nach der brutalen Tour mit ca 70 Km und gut 600 Höhenmeter hat der Akku angeblich (Anzeige) noch 50% Kapazität. Das Rad ist durch den Motor und vor allen Dingen den Akku gewaltig schwerer geworden, fährt sich aber ansonsten nicht wesentlich anders wie vorher.

Beim Fahren habe ich nur die gleichen zwiespältigen Eindrücke, wie bei meinem ersten E-Bike. Auf gerader Strecke ist das Abriegeln bei 25 km/h grausam und einfach komplett praxisfern. Man schleicht da so vor sich hin, was ich mit dem Trek nie machen würde. Da fahre ich deutlich schneller. Und sobald der Motor nicht mehr unterstützt, wird es mit dem E-Bike halt elend schwer, schneller als 25 Km/h zu fahren. Aber das Bild dreht sich natürlich, wenn es an Steigungen geht. Da schiebt der Motor schon gewaltig. Nach der Tour habe ich auch raus, wie man halbwegs flott mit dem E-Bike vorankommt – sobald die Geschwindigkeit unter 25 Km/h fällt, volle Motor-Power. Und wenn es etwas bergab geht oder schneller wie 25 Km/h wird – Motor abschalten und voll aus eigener Kraft treten. Auf der Strasse zwischen Langenhain und Wallau konnte ich so auch bis auf 60 Km/h kommen. Das hohe Gewicht hilft da bergab sicher, aber mit meinem alten E-Bike war ich damals auf der Strecke sogar 68 Km/h schnell (das hatte größere Räder) und ich gehe davon aus, dass ich mit dem Trek noch schneller würde, wenn ich es darauf anlege.

Ich bin nun heute sowohl auf dem Hinweg als auch Rückweg über Langenhain so um die 1:30 Stunden gefahren und vor allen Dingen auf dem Hinweg würde ich das mit dem Bio-Bike nicht schaffen. Auch war mein Krafteinsatz deutlich geringer und ich bin zwar etwas geschafft, aber das ist gar kein Vergleich zu der Tour von 2 oder 3 Wochen mit dem Trek.

Mit dem E-Bike kann ich also die Strecke zwischen Bodenheim und Eppstein einigermaßen locker an einem Tag hin und zurück fahren, wobei man sich nicht täuschen sollte – auch ein E-Bike fährt nicht alleine und an den Anstiegen hoch nach Langenhain musste ich schon heftig mittreten – gerade auf dem Rückweg von Eppstein aus durch den Wald. Die gesamte Tour würde ich damit auch als „Sport“ titulieren.

Mal sehen, was das Finanzamt sagt, wenn ich sowohl das Trek für letztes Jahr als Geschäftsfahrzeug anmelde (habe meinen Abschluss 2020 noch nicht gemacht) und für 2021 den E-Bike-Umbau. Den Privatanteil will ich da nicht leugnen, aber ein bisschen kann sich das FA schon an den doch recht hohen Anschaffungskosten beteiligen. Denn ich nutze die beiden Räder ja wirklich zum beruflichen Pendeln. Ich werde auf jeden Fall meinen Steuerberater fragen.

Reference Counting – Länger und länger

Mit 12:19 Minuten ist mein aktueller Entwicklungs-Tipp der Woche bei LiL schon gewaltig lang für ein Video. Aber zu dem Thema „Reference Counting“ gibt es bei Python einfach eine Menge zu sagen. Dabei geht es um eines der geheimnisvollsten Dingen in Python – die Referenznummer bei Objekten. Die Details und Auswirkungen sind sehr spannend und erklären die manchmal etwas „eigenartigen“ Verhaltensweisen von Python. Das betrifft etwa die Technologie der Speicherbereinigung, aber nicht nur diese.

Properties vs Getter und Setter in Python

Heute ist wieder der Regeltag, an dem bei LinkedIn Learning mein aktueller Entwickler-Tipp zu Python veröffentlicht wird. Getter und Setter auf der einen Seite und Properties auf der anderen Seite stehen im Fokus. So genannte Properties sind in vielen Sprachen als Ersatz von Gettern und Settern sehr populär geworden. Auch Python kennt diese.

Facebook & Co offline

Da schau – Fratzenbuch, Instagramm und andere asoziale Zeitvernichter aus dem Konzern waren weltweit offline. Auf einmal haben unzählige Leute Zeit gehabt und vermutlich nicht gewusst, was man mit der anfangen soll. Falls sie nicht panisch die ganzen Stunden immer wieder versucht haben, ob das Zeug nicht doch wieder zu erreichen ist. Auch eine Art der Beschäftigungstherapie.

Stellt sich die Frage, was der Grund für den Ausfall war? Angeblich ein Problem mit dem DNS, aber ich vermute, dass bei einem der Rechner hinter Facebook & Co ein Kabel locker war :-).

Schade, dass ich den Ausfall verpasst habe – ich hätte gerne soviel gewonnene Zeit sinnlos verprasst.

 

Ab in den Schulungs-Block

Der Sommer ist vorbei und auch meine recht entspannte Zeit. Die letzten Wochen hatte ich erfrischend viel Freizeit, aber ab heute geht es wieder mit Schulungen los. Und das gleich geballt sowie ausschließlich remote. Erst 10 Tage mit 3 zusammenhängenden Kursen und dann nochmal 5 Tage eine weitere Schulung. Also 3 Woche am Stück und – wenn alle Anfrage so kommen, wie ich denke – es geht im Nov und Dez vermutlich mit ziemlich viel Schulungen weiter. Die übliche Jahresendralley beginnt dieses Jahr ziemlich früh.

Mein bisher längster Entwickler-Tipp zu Python

Gerade habe ich bei LinkedIn Learning nachgesehen, welcher aktueller Entwickler-Tipp zu Python die Woche veröffentlicht wurde. Denn die Reihenfolge, wie die Tipps freigeschaltet werden, ist nicht zwingend identisch zur Reihenfolge, wie ich sie aufgenommen habe. Ich habe dazu zwar gewisse Vorschläge eingereicht, aber die habe ich weder in Erinnerung noch ist es sicher, dass die auch so umgesetzt werden. Deshalb bin ich in der Tat jede Woche gespannt, welches Thema für die jeweilige Woche angesagt ist.

Die Woche geht es um diverse Spezialitäten bei Lambda-Ausdrücken. Mit über 10 Minuten ist dieser Entwickler-Tipp wohl auch der bisher umfangreichste, wenn ich das recht im Blick habe. Aber es gibt eine ganze Menge zu Lambda-Ausdrücken unter Python zu sagen. Einfach selbst überzeugen.

Windows 11??

Es wäre falsch bzw. verlogen und manipulierend zu sagen, dass ich überhaupt nichts von dem neuen Windows 11 mitbekommen hätte. Ich zappe ja immer wieder durch PC Magazine im Web und da wohl wirklich interessante Themen im Moment fehlen, wird dort auch immer wieder die kommende Version von Windows thematisiert.

Wenn man an die gedruckte Version eines Magazins denkt, kann man es vielleicht so ausdrücken:

Besser wie ein leeres Blatt Papier!

Woraus zwingend gefolgert werden kann, dass ich nicht die Bohne an dem kommenden Windows 11 interessiert bin. Was ich bisher mitbekommen habe, gibt es rein gar nichts, was ich von den Neuerungen benötige. Nur ein neues Design, was mir am A… vorbeigeht, eine extrem gesteigerte Vernetzung mit noch mehr Datenspionage durch MS & Co sowie erheblich gestiegene Anforderungen an die Hardware.

Werde ich mich also Windows 11 verweigern? Das auch nicht, denn wenn ich mir irgendwann einen neuen PC zulege, wird der das neue OS wahrscheinlich als Basis haben. In dem Fall macht es wenig Sinn, auf einem alten OS zu bestehen. Höchstens ganz auf Windows zu verzichten und Linux zu nehmen, aber das kollidiert mit diversen Prozessen, die ich wegen meiner Arbeit halt mit Windows machen muss oder die zumindest damit bequemer gehen. Aber meine Rechner mit Windows 10 werde ich nicht umstellen und – wenn dann Windows 10 wirklich total veraltet ist – ggf. da nur noch Linux drauf betreiben.

Ich wage die Prognose, dass Windows 11 ein Flop wird. Braucht wohl kaum jemand, der schon Windows 10 hat. Aber es ist ja „gute“ Tradition bei Windows, dass die Versionen mit ungeraden Nummern entweder kompletter Schrott oder zumindest eben ein Flop sind.

Mein Buch zu Vue.js wird übersetzt

Webanwendungen erstellen mit Vue.js - Ralph Steyer

Webanwendungen erstellen mit Vue.js

2019 habe ich beim Springer-Verlag ein Buch zu Vue.js veröffentlicht. Nur herrscht bei mir seit dem Erscheinen des Buchs quasi Funkstille rund um Vue.js. Fast zumindest. Weder habe ich dazu Schulungsanfragen erhalten, noch habe ich in der Folge wirklich viel mit dem Framework gemacht. Mit Ausnahme eines permanenten Onlinekurses bei der ILS, der u.a. Vue.js zum Thema hat und damit war das Thema für mich nicht ganz untergegangen. Aber so richtig stand Vue.js bei mir die letzte Zeit eben nicht im Fokus.

Nur gibt es wohl keine Zufälle, denn gestern bekam ich erst eine Mail, dass mein Buch zu Vue.js ins Englische übersetzt werden soll (wenn ich damit einverstanden wäre) und 40 Minuten später eine Schulungsanfrage zu Vue.js. Letztere war aber wieder so eine Anfrage, die mich zu einer Gewissensentscheidung gezwungen hat. Denn es sollte für nur 2 Tage nach Hamburg gehen – seit langer Zeit wieder einmal Vor-Ort beim Kunden. Das ist verdammt viel Reiseaufwand für eben nur 2 Tage und da ich noch keine vollständige Vor-Ort-Schulung zu Vue.js gehalten habe, hätte ich zudem erst einmal ein Konzept erstellen müssen. Zusammen mit der Tatsache, dass ich ebenso erst einmal wieder massive Praxis mit einigen Vue.js-Projekten durchspielen müsste und mir dazu im Moment die Zeit fehlt, ist bei der Schulungsanfrage die Waage in Richtung „Passe“ ausgeschlagen.

Aber die geplante Übersetzung meines Buchs finde ich klasse und selbstverständlich habe ich zugestimmt. Wobei die Bitte um mein Einverständnis schon einmal im Juli per E-Mail an mich geschickt wurde. Diese Mail hatte ich aber als Spam verstanden, weil der Betreff mir dubios erschien, die Mail auf Englisch war und zudem aus Indien kam. Also ist die Mail damals mehr oder weniger ungelesen im Spam-Ordner verschwunden. Dabei hätte mir der Absender aus Indien klar sein können, denn der Springer Verlag arbeitet sehr viel bei der Produktion mit Partnern in Indien. Anyway – ich habe im Juli die Mail ignoriert, aber dieses Mal besser aufgepasst und wie gesagt selbstverständlich der Übersetzung zugestimmt.

Wobei die Art der Übersetzung spannend als auch etwas beängstigend ist. Die Übersetzung soll rein mit künstlicher Intelligenz erfolgen (was langfristig eine komplette Berufsgruppe die Arbeit kostet – und das ist eben schon beängstigend). Das stand auch im Betreff und das war für mich sogar ein Indiz, dass es sich um Spam handelt. Dem ist aber nicht so. Ein Übersetzungstool soll zum Einsatz kommen, dass ich selbst schon seit geraumer Zeit sehr gerne nutze (wenn ich keine Lust habe, selbst zu übersetzen) und sogar genutzt hatte, um die Mail erst einmal zu übersetzen – es gibt wie gesagt keine Zufälle.

Bei Springer Natur wurde – nach den Infos in der Mail – vor einiger Zeit ein Innovationsprojekt gestartet, um gemeinsam mit DeepL (das ist die KI bzw der Dienstleister im Bereich der automatisierten Übersetzungen) ausgewählte deutschsprachige Bücher mit Hilfe von künstlicher Intelligenz zu übersetzen. Und mein Buch zu Vue.js soll eben dabei sein, was mich wirklich freut :-).

Denn die Sache eröffnet mir natürlich die Möglichkeit, das Buch zu Vue.js einer internationalen Leserschaft zugänglich zu machen. Die KI soll angeblich bei der automatischen Übersetzung die Struktur und die Gliederung des Textes erhalten. Quellen und Verweise werden von einem Lektor überprüft und abschließend soll ich noch einmal drauf schauen. Auch die Abbildungen können nicht automatisch übersetzt werden und da muss ich selbst tätig werden.

Das Buch zu Vue.js ist nicht mein erstes Buch, das ins Englische übersetzt wurde. Mein erstes Buch zu HTML wurde in den 90iger-Jahren sogar ins Französische, Holländische und Spanische übersetzt und auch ein paar anderen Bücher sind ins Englische übersetzt worden. Aber das ist schon Jahre her und natürlich „von Hand“ gemacht worden.

 

Qualitätskontrolle mit Linting – Neues in meinem Tutorial zu Python

Bei LinkedIn Learning gibt es wieder einen neuen Entwickler-Tipp zu Python. Thema ist diese Woche die Qualitätskontrolle mittels Linting. Beim Linting geht es allgemein um die Verbesserung der Softwarequalität. Für die Qualität von Software es ist nicht nur elementar, dass diese fehlerfrei ist. Es gibt weitere Kriterien, die teils standardisiert getestet werden können. Unter Python kann man das mit PyLint machen. Hervorragend wird das Linting dabei in Visual Studio Code integriert.

Clive Sinclair gestorben – ein persönlicher Nachruf

Wie ich gerade gelesen habe, ist Clive Sinclair im Alter von 81 Jahren gestorben. Auch wenn der Name sicher nicht so prominent wie Steve Jobs oder Bill Gates ist, ist das dennoch einer der wichtigsten Pioniere in den frühen Jahren der IT gewesen. Allgemein und vor allen Dingen für mich, denn mein erster Computer überhaupt war ein ZX81 von Sinclair. Ohne diese Erfahrungen mit dem Teilchen hätte ich garantiert keine Laufbahn in der IT eingeschlagen. Damit habe ich meine allerersten Programmierversuche gestartet. Mit einer speziellen Variante von BASIC, was fest in dem ZX81 implementiert war.

Wenn man sich heute die Eckdaten von dem Zwerg ansieht, muss man an sich halten. Die meisten (smarten) Lichtschalter der heutigen Zeit haben mehr Hauptspeicher und sind leistungsfähiger. Folientastatur, 1 Kilobyte RAM (ja – Kilobyte, nicht Megabyte oder gar Gigabyte) und keine Möglichkeit zum Speichern von Inhalten. Wobei der Zwerg durch Ergänzungsmodule auf „gigantische“ 64 KByte RAM aufgerüstet werden konnte, was ich damals auch irgendwann gemacht habe. Und ich habe versucht, Daten mittels eines Kassettenrecorders mehr oder weniger erfolgreich zu speichern bzw. von gekauften oder kopierten Kassetten zu laden (es gab da vor allen Dingen ein Spiel, das ich geliebt, aber dessen Titel ich mittlerweile vergessen habe).

Alles in allem war das echte Computersteinzeit mit viel Bastelei und Stochern in einem vollkommen undurchdringlichen IT-Nebel, aber man hatte einen Computer, was Anfang der 80iger-Jahre im Privatbereich alles andere als üblich war. Und ich war noch in dem Alter, in dem man neuen Dingen aufgeschlossen gegenübersteht und aufnahmebereit für neue Ideen und Kenntnisse ist.

Ich verdanke dem ZX81 und damit auch seinem Erfinder also wesentliche Impulse meines beruflichen Werdegangs. Und ich hätte sogar gerne wieder aus sentimentalen Gründen einen ZX81.

I’ll be back

Maschine bleibt Maschine. Auch der Terminator ist eine Selbige – wie ein Bürostuhl. Wer intelligenter ist, ist die entscheidende Frage, aber hier irrelevant. Das Federbein von meinem Bürostuhl kam wieder an und der Zusammenbau war deutlich leichter als der Ausbau des Federelements, das nur mit Hilfe von Gewalt und einem Vorschlaghammer zu bewerkstelligen war.

Ich bin echt froh, dass ich wieder einem wirklich ergonomischen Bürostuhl habe. Obwohl mein Ersatzbürostuhl nicht wirklich schlecht ist, hatte ich es gestern nach der UML-Schulung im Rücken gemerkt. Hat teilweise in der Rückenmuskulatur richtig gekrampft. Das hatte ich auf dem KLIM-Gamerstuhl noch nicht gehabt.

Doppelte Verschiebung

Für Mittwoch hatte ich eine UML-Einzelschulung auf der Agenda. Remote und nur einen Tag, aber über Nacht ist der Teilnehmer krank geworden. Er hat um eine Verschiebung gebeten und da ich den Monat ziemlich flexibel bin, habe ich die auf den heutigen Donnerstag verschoben. Interessanter Weise ist aber auch mein wöchentlicher Entwickler-Tipp zu Python erst am heutigen Donnerstag freigeschaltet worden. Also gleich eine 2-fache Verschiebung. Im Entwickler-Tipp geht es um das Debuggen von Python-Quellcode in Visual Studio Code.