Gekaufte Inhalte

Heute habe ich eine Mail bekommen, ob ich hier im Blog nicht über ein IT-Produkt berichten wolle. Als Gegenleistung würde ich dafür eine Jahreslizenz geschenkt bekommen. Was indirekt natürlich bedeutet, dass der Bericht positiv ausfallen sollte. Obwohl das Produkt mir bekannt ist und ich es sogar schätze, habe ich den Deal abgelehnt. Gekaufter Content ist nicht mein Ding.

Klar – ich mache hier im Blog kräftig Werbung für meine Sachen – also  meine Webseite, meine Bücher (s.u.) oder meine Onlinevideos bei LiL. Aber es wäre scheinheilig, wenn ich nicht zu meinen eigenen Erzeugnissen stehen und sie nicht vermarkten würde.

Aber Werbung für fremde Produkte, die dann als Content verschleiert wird, geht mir gegen den Strich. Ich bin doch kein „Influenza“. Klar – auf keinen Fall so cool wie diese „Beeinflusser“ (weil ich sowieso zu alt für sowas bin), aber ich habe auch so viel Stolz, nicht auf so ein Niveau (sorry an den Begriff „Niveau“ – du solltest eigentlich gar nicht mit dieser Krankheit in Verbindung gebracht werden, aber ein anderes Wort fällt mir im Moment nicht ein) abzusacken.

Und jetzt nutze ich den Anlass mal wieder, um meine im Eigenverlag publizierten Bücher ein wenig zu promoten.


Reguläre Ausdrücke – Kurz und bündig
Reguläre Ausdrücke - Kurz und bündig - von Ralph Steyer

Reguläre Ausdrücke – Kurz und bündig

Seitenzahl: 104 Seiten

ISBN: 9783753136493

Verkaufspreis: 11,99 €

XML – Kurz und bündig
XML - Kurz und bündig - von Ralph Steyer

XML – Kurz und bündig

ISBN: 9783753133423

Format: DIN A5 hoch

Seiten: 128

Softcover 14,99 €

Erscheinungsdatum: 13.12.2020

COBOL – Grundlagenkurs für Ein- und Umsteiger
COBOL - Grundlagenkurs für Ein- und Umsteiger - von Ralph Steyer

COBOL – Grundlagenkurs für Ein- und Umsteiger

Seitenzahl: 188 Seiten

Sprache: Deutsch

ISBN: 978-3-753139-03-6

Verkaufspreis: 21,99 €
Erscheinungsdatum: 26.12.2020

Aufzucht und Pflege kleiner Webseiten mit HTML – Grundlagen der Webseiten-Erstellung
Aufzucht und Pflege kleiner Webseiten mit HTML - Grundlagen der Webseiten-Erstellung - von Ralph Steyer

Aufzucht und Pflege kleiner Webseiten mit HTML – Grundlagen der Webseiten-Erstellung

ISBN: 9783741828829

Format: DIN A5 hoch

Seiten: 300

Erscheinungsdatum: 01.07.2016

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.

SmartPhone-Reparatur auf die brutale Art

Nachdem mein Power-Button als auch die Button zum Leiser- und Lauterschalten bei meinem SmartPhone nicht mehr gegangen sind, habe ich diverse Lösungen im Internet gesucht und dazu auch verschiedene Apps installiert, die eine Lösung zu versprechen schienen. Nix ging. Alles Sackgassen.

Eben hatte ich die Faxen dicke. Die Button haben gehangen, nachdem das SmartPhone auf den Boden gefallen war. Also habe ich es mehrfach kräftig auf den Tisch geschlagen.

Feuer mit Feuer bekämpfen sozusagen. Handy-Reparatur mit dem Hammer.

Was soll ich sagen – geht wieder. Vermutlich funktioniert das SmartPhone wieder rein aus Angst :-).

SmartPhone blockiert :-(

Sehr seltsames Phänomen. Mein SmartPhone ist mir runtergefallen und jetzt sind der Power-Button und die Button für Lauter und Leiser auf der Seite blockiert. Das SmartPhone reagiert nicht mehr darauf. Kann es also vermutlich nicht mehr anschalten, wenn es mal aus ist. Aber auch nicht runterfahren. Solange es noch läuft, ist das nur ein ärgerliches, aber nicht wirklich schlimmes Problem. Trotzdem – auf Dauer muss das gelöst werden oder ich brauche ein neues Gerät :-(.

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.

Google My Business

Vor einiger Zeit ist mir bewusst geworden, dass „Hinz und Kunz“ bei Google Maps mit ihren Unternehmen eingetragen sind. Selbst mit den Kleinsten. Klar – das habe ich im Grunde schon häufig „gesehen“, aber eben nicht im klassischen Sinn „wahrgenommen“. Schon gar nicht, dass ich das mit einem „Geschäft“ – also  „My Business“ – auch machen sollte. Warum denn nicht?

Gut – nicht zuletzt durch Corona bin ich beruflich mehr oder weniger bis Anschlag ausgelastet und Marketing bzw. Werbung für neue Aufträge muss ich im Moment nicht machen. Aber es ist natürlich nicht klar, dass die Situation auf Dauer so bleibt. Gibt ja den Spruch, dass man für die Krise vorsorgen sollte, wenn es gerade läuft.

Also habe ich mich in Google Maps mit meinen beiden Standort eingetragen. Und wenn es nur Traffic auf meine Webseite leitet und damit meine Bücher und Onlinevideos bei LiL gekauft werden.

Jetzt hat mir nach der Anmeldung Google Post zugeschickt unter dem Stichwort „Google My Business“. Mit einem Gutschein für Google Ads. Den kann ich in der Tat gut nutzen, um meine im Eigenverlag publizierten Bücher ein wenig zu promoten. Denn da gibt es mittlerweile gleich 4 Stück.


Reguläre Ausdrücke – Kurz und bündig
Reguläre Ausdrücke - Kurz und bündig - von Ralph Steyer

Reguläre Ausdrücke – Kurz und bündig

Seitenzahl: 104 Seiten

ISBN: 9783753136493

Verkaufspreis: 11,99 €

XML – Kurz und bündig
XML - Kurz und bündig - von Ralph Steyer

XML – Kurz und bündig

ISBN: 9783753133423

Format: DIN A5 hoch

Seiten: 128

Softcover 14,99 €

Erscheinungsdatum: 13.12.2020

COBOL – Grundlagenkurs für Ein- und Umsteiger
COBOL - Grundlagenkurs für Ein- und Umsteiger - von Ralph Steyer

COBOL – Grundlagenkurs für Ein- und Umsteiger

Seitenzahl: 188 Seiten

Sprache: Deutsch

ISBN: 978-3-753139-03-6

Verkaufspreis: 21,99 €
Erscheinungsdatum: 26.12.2020

Aufzucht und Pflege kleiner Webseiten mit HTML – Grundlagen der Webseiten-Erstellung
Aufzucht und Pflege kleiner Webseiten mit HTML - Grundlagen der Webseiten-Erstellung - von Ralph Steyer

Aufzucht und Pflege kleiner Webseiten mit HTML – Grundlagen der Webseiten-Erstellung

ISBN: 9783741828829

Format: DIN A5 hoch

Seiten: 300

Erscheinungsdatum: 01.07.2016

Mein Tipp der Woche – plattformneutrale Skripte mit Python

Im Rahmen meiner Serie mit wöchentlichen Tipps & Tricks zu Python bei LinkedIn Learning (LiL) ist das nächste Video draußen. Es geht die Woche um die Erstellung von plattformneutralen Skripten mit Python.

Registierungszwang

Ich nutze seit vielen Jahren beim Gleitschirmfliegen eine Action-Cam, um hin und wieder während des Fliegens Fotos oder Videos aufzunehmen. Eine mittlerweile uralte GoPro 2, die die Tage versagt hat. Videos sind nach wenigen Sekunden abgebrochen und auch die Bilderserien nach wenigen Bildern. Aber da die Cam schon über 10 Jahre alt ist und viel mitgemacht hat, sei es verziehen.
Nun kam ich auf die Idee, mir eine neue Action Cam zu gönnen. Meine Wahl fiel auf eine DJI und eben kam sie an. Nur – das Ding kann man genau 5x starten. Dann muss man sich zwangsweise bei DJI registrieren und dazu zwingend eine App auf das SmartPhone installieren. Geht es noch? Demnächst kann ich wohl beim Kauf einer Brötchentüte vom Bäcker 2 Brötchen essen und muss mich vor dem Verzehr der restlichen Brötchen zwangsweise registrieren? Die haben sie nicht mehr alle.
Ein absolutes NoGo und die Cam ging direkt wieder zurück. Die Unverschämtheit ist, dass man diese Zwangsregistrierung nirgends in der Beschreibung findet. Ich habe sie nur nachträglich bei entrüsteten Benutzerbewertungen gefunden. Die waren genauso perplex wie ich als sie das Ding erhalten haben.

Glücklicherweise hat das Formatieren der Speicherkarte und das gründliche Reinigen der Cam meine alte GoPro wieder einsatzfähig gemacht, wie es scheint. Auch wenn die Qualität der Aufnahmen und insbesondere die Bildstabilisierung heute nicht mehr zeitgemäß ist, bleibe ich dann erst einmal dabei. Der Überwachungswahn nimmt einfach unerträgliche Ausmaße an.

 

Glasfaser-Drama

Ab heute habe ich in Bodenheim Glasfaser! Angeblich. Von wegen – der Anbieter Herznet macht auf „Toter Mann“. Nix is.

Kann man verstehen. Sie hatten ja nur knapp über 1 Jahr Zeit ;-(.

Oh man, was ein Schrott. Vielleicht ist das aber auch typisch für das digitale Hinterland Deutschland. Vollkommen unfähig in Sachen Digitalisierung. Ich habe das Gefühl, das läuft wie beim BER – eine never-ending-Chaosstorry.

Zwar wurde vor gut 3 – 4 Monaten die Glasfaserleitung ins Haus gelegt, Und es war auch schon einmal ein Techniker da, um diese anzuschliessen. Nur hatte der Provider vergessen, einen Router zu liefern. Der Techniker ist wieder abgezogen mit der Zusage, man würde sich „kurzfristig“ (!) darum kümmern.

Nichts ist bisher passiert und der Freischaltungstermin ist jetzt verstrichen. Wir haben sogar immer noch keinen expliziten Vertrag oder so etwas, sondern nur den Vorvertrag. Damit auch keine Vertragsnummer, mit denen uns telefonisch Auskunft gegeben werden kann. Auch wurde die Zusage aus dem Vorvertag nicht eingehalten, dass mein bisheriger Provider-Vertrag von dem neuen Provider gekündigt wird. Die Kündigungsfrist beträgt 1 Jahr und offensichtlich bin ich immer noch bei meinem alten Provider mit langsamen DSL. Was übrigens auf meine letzte Beschwerde bei Herznet damit begründet wurde, wie würden sonst ab heute vermutlich ganz ohne Internet dastehen.

Das ist alles nur noch ganz grosser Pfusch und Schrott, was die da abliefern 🙁

Der Apfel fällt nicht weit usw, usw …

Obwohl ich mich als einen eher ruhigen und introvertierten Typen sehe, verdiene ich dessen ungeachtet überwiegend mit „Reden vor Leuten“ im weitesten Sinn mein Geld. Wenn es fachlich wird und ich es bezahlt bekomme, funktioniert das anscheinend ganz gut. Immerhin habe ich einige Jahrzehnte Schulungen, Vorlesungen und Vorträge damit ja schon Erfahrung sowie nicht zuletzt mit meinen Kursen bei LiL samt der neuen Serie mit wöchentlichen Tipps & Tricks zu Python bei LinkedIn Learning. Und anscheinend gilt der alte Spruch vom Apfel, der nicht weit …

Denn meine Zwillinge haben definitiv die Fähigkeiten zum Reden vor Publikum geerbt und anscheinend noch erheblich ausgebaut. Auch wenn sie rein fachlich nichts mit IT machen – sie senden seit ein paar Tagen einen Podcast, was dann doch meine Welt ganz eindeutig wieder berührt. Wobei – für so ein „neu-modisches“ Podcast-Zeug bin ich wohl zu alt, denn die eigentliche Podcast-Schiene ist irgendwie an mir vorbei gelaufen (in der ersten Version von dem Beitrag hatte ich das sogar noch Broadcast genannt – das kenne ich wenigstens) und bisher habe ich noch nicht einen Podcast wirklich angehört. Aber streng-genommen sind meine Kurse bei LiL im Kern auch sowas wie Podcasts. Nur halt aufbereitet und „gezähmt“ sowie mit Video – wenn ich das richtig verstehe. Also wie ein Film in Relation zu einer Live-Radiosendung oder so.
Und auch wenn die Buben jetzt ganz neu mit ihrem Podcast begonnen haben (der Trailer und die erste Folge  sind draußen) – diese wohl vererbte Tendenz zum Vermitteln von Content ist schon seit Jahren zu bemerken. Von einem Youtube-Kanal ging es als Nachwuchs-Moderatoren zu einem kleinen privaten Radiosender (Radio Klinikfunk) bis hin zu einer kleinen Episode beim Jugendsender von FFH, um dann aktuell als Moderatoren bei Sportdeutschland TV und dem Kommentieren der Heimspiele von Mainz 05 in der Handball-Bundesliga der Frauen zu landen. Und genau daran knüpft nun der Podcast der Sohnemännchen an – als „Ableger“ des Podcasts der Fußballer von Mainz 05 geht es um die Handball-Bundesliga der Frauen im Allgemeinen und die Mainzer Dynamites im Besonderen.

CronTab, Schedule und Python

Nachdem ich vor ein paar Wochen meinen neuen V-Server auch gleich auf eine neue Version von Ubuntu umgestellt hatte, musste ich sämtliche Webseiten wieder neu einspielen. Bis auf meine Webseite zum Gleitschirmfliegen, in der ich eine Webcam und Wetterdaten von einem Flughang bereitstelle, konnte ich auch alle Seiten problemlos wieder einspielen. Nur diese Seite (ein Joomla!-System) hatte herumgezickt und deshalb habe ich sie einfach neu aufgesetzt (jedoch mit WordPress). Aber ein Feature habe ich da auf die Schnelle nicht hinbekommen – das Kopieren und Sichern des aktuellen Bildes der Webcam, das minütlich mit FTP auf meinen V-Server geladen wird.

Es ist aber ganz hilfreich, wenn man über eine gewisse Zeitspanne verfolgen kann, wie etwa schon vor Ort befindliche Gleitschirme oder Windfahnen sich verhalten, um zu entscheiden, ob sich ein Tripp an den Hang lohnt. Ich wurde sogar explizit gebeten, dieses Feature wieder bereitzustellen.

Die originalen PHP-Skripte hatte ich noch alle, aber das Zeug war so zusammengefrickelt (wie so oft), dass ich erst einmal meine eigenen Codes nicht mehr verstanden habe.

Aber da ich parallel im Moment Themen sammle, die ich irgendwann in meinen wöchentlichen Tipps & Tricks zu Python bei LinkedIn Learning (LiL) verwenden kann, kam ich auf die Idee, das Kopieren doch mit Python statt mit PHP zu machen sowie auch das Schedulen vielleicht auch gleich mit Python. Es gibt ja dazu das sched-Modul und/oder die klassischen Module shutil, datatime und time. Dazu gibt es noch in der Community das zusätzliche Module schedule. Also habe ich mich damit eine Weile beschäftigt. Allerdings kam ich darüber über kurz oder lang auch auf die eigentlichen Crontabs von Linux/Unix. Und wenn man die genauer ansieht, ist es fast einfacher, die direkt zu schreiben, als sie von einem Framework wie dem schedule-Modul generieren zu lassen.

Auf der anderen Seite musste ich zudem noch meinen V-Server weiter konfigurieren. Dabei habe ich auf dem Weg nano nachinstalliert, denn ich greife ja per SSH auf den V-Server zu und mit Erschrecken festgestellt, dass da bisher mir nur vim zur Verfügung stand. Also so rudimentär will ich doch nicht mehr arbeiten.

In der Folge habe ich meine neu erstellen Python-Skripte zum Kopieren der Dateien und dem täglichen Löschen des Verzeichnisses (mein Server soll ja nicht volllaufen) hochgeladen und in die CronTab direkt eingebunden. Das geht ganz einfach und logisch, wenn man sich von der Syntax nicht abschrecken lässt.

  • crontab -e öffnet die CronTab-Datei.
  • Wenn man mit nano arbeitet, kann man mit Strg+o die Datei speichern und mit Strg+x den Editor verlassen. Mehr braucht man da eigentlich nicht zu wissen.
  • Mit crontab -l kann man sich alle Cronjobs anzeigen lassen und
  • mit crontab -r bei Bedarf alle Cronjobs löschen (was aber brutal ist, weil direkt alles weg ist).

Die eigentlichen Einträge in der CronTab sehen etwa so aus:

# m h dom mon dow command
*/2 8-20 * * * python3 [pfad]/copierereichenbach.py >> /var/www/vhosts/rjs.de/rb.autoren-net.de/thumb/log.txt
* 5,23 * * * python3 [pfad]/loeschereichenbach.py

Das kopiert dann alle 2 Minuten in der Zeit von 8 bis 20 Uhr das aktuelle Bild der Webcam und um 5 und 23 Uhr wird das Verzeichnis gelöscht.

In Python selbst arbeite ich mit shutil.rmtree() und os.mkdir() beim Löschen des Verzeichnisses. Einfach alles weghauen und dann das Verzeichnis neu erstellen.

Beim Kopieren nehme ich shutil.copy2() und hänge an den Standarddateinamen einfach einen Timestamp an der von datetime.datetime.now().timestamp() geliefert wird.

Das Anzeigen der Bilddateien mache ich natürlich weiter mit PHP – da konnte ich eines meiner altern Skripts nach einer kleinen Anpassung wieder verwenden.

Titanic vs Google Zensur

Google hat sich wieder einmal das Recht herausgenommen zu entscheiden, was Satire darf und was nicht. In der guten (oder üblen) Tradition anderer US-Zensoren wie Apple oder Facebook wurde eine kleingeistige US-Moral als Leitbild der Welt verordnet. Die App von Titanic im Playstore wurde als unseriös gebrandmarkt. Entweder von einem dumpfen Algorithmus oder – noch schlimmer – von dumpfen Zensoren, denen Kunst und Meinungsfreiheit suspekt sind.

Zugegeben – Titanic geht meist bis an die Grenze des Geschmacks und oft darüber hinaus. Ich kann auch persönlich oft damit nichts mehr anfangen. Aber das ist eben die Grundfreiheit unserer Gesellschaft. Die Freiheit der Kunst wird durch unserer Rechtssystem geschützt.

Eigentlich dachte ich, dass die USA auf diesen freiheitlichen Weg zurückkommen, nachdem „ER“ endlich zum Golfen weggeschickt wurde. Aber es zeigt sich ganz deutlich, dass man US-Firmen einfach nie trauen darf. Die kümmern sich weder um unsere Rechtssysteme noch Freiheit der Kunst oder so etwas.

Wenn ich das richtig mitbekommen habe, hat aber Titanic nach der Zensur durch Google das Heft des Handelns in die Hand genommen und seine App aus dem Zensur-Store selbst zurückgezogen.

Skype for Business

Gerade habe ich meine Python-Onlineschulung beendet. Dabei habe ich das erste Mal Skype for Business verwendet (Kundenwunsch). Bisher habe ich immer nur mit Teams geschult bzw. privat Zoom und JamKazam eingesetzt. Aber Skype for Business hat sich wider Erwarten ganz gut geschlagen. Gelegentlich ist meine Bildschirmpräsentation zusammengebrochen und in der letzten Stunde des letzten Tags bin ich 1x aus der Session geflogen – aber sonst ist das System stabil gelaufen.

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.

Amazon-Bewertungen – Fake-News

Gerade habe ich in meinem Büro in der Staufenstrasse ein smartes Thermostat montiert. Aber eigentlich wollte ich es im Büro in Bodenheim verwenden. Nur da hat der Adapter nicht gepasst und deshalb wollte ich das Thermostat an Amazon zurücksenden. Mit solchen Rücksendungen habe ich ganz wenig Erfahrung, weil ich normalerweise gezielt bestelle und nur ganz, ganz selten ewas zurückschicke. Aber grundsätzlich sollte das angeblich einfach gehen.

In dem Fall wurde als Rücksendeoption jedoch ausschließlich die Abgabe in einer UPS-Annahmestelle angeboten. So etwas gibt es bei mir in der Nähe nicht und die einzige theoretische Möglichkeit hat wegen Corona geschlossen. Auf mehrfache Anfrage von mir über Amazon wegen der fehlenden Möglichkeiten zu einer Rücksendung wurde nicht reagiert.

Das habe ich als Verweigerung der möglichen Rücksendung gesehen und eine schlechte Bewertung dahingehend auf Amazon gestellt. Amazon hat diese abgelehnt und nicht veröffentlicht. Letztendlich ist mir das egal und ich bekomme das Teil wie gesagt in Eppstein unter. Aber man sieht, was man von Amazon-Bewertungen halten darf. Nichts. Nur gute Bewertungen werden veröffentlicht, schlechte nur in geringer Anzahl als Alibi. Die meisten werden wohl unterdrückt.