Pytest ist ein sogleich extrem mächtiges, als auch ein wunderbar erweiterbares Testframework. Ich benutze es fast in allen Python-Projekten. Doch war eine Sache immer irgendwie umständlich: Datengetriebe Tests, die aus CSV-Dateien parametrisiert wurden.
Die Umstellung von Cron Jobs auf Celery war mit Hilfe von Paketen wie "django-celery-beat" und "django-celery-results" extrem einfach: So einfach, dass sie jetzt schon abgeschlossen ist.
Ein Tutorial mit Erfahrungsbericht.
Neben diversen Updates an Front- und Backend-Frameworks stand auch ein Wechsel auf einen neuen Uberspace an. Entsprechend wurde die Chance genutzt, einiges grundsätzlich zu überarbeiten und Altlasten über Bord zu werfen.
Die erste Runde Upgrades erhöhen die Alltagstauglichkeit des Urban Arrow Lastenrads enorm. Bei einer Verbesserung fragt man sich aber schon, warum sie nicht gleich ab Werk an Bord ist.
Und natürlich gibt es gleich weitere Ideen zur Verbesserung.
Das Urban Arrow Family Lastenrad ist nun seit einigen Tagen im Einsatz. Jetzt zeigen verbesserungsbedürftige Ausstattungsdetails und die Notwendigkeit eines sehr guten Fachhändlers mit sehr guter Werkstatt, auch wenn man dort das Rad nicht gekauft hat.
Das Lastenrad ist da. Mein persönlicher Beitrag zur Verkehrswende beginnt eher holprig. Doch jetzt sind wir auf dem richtigen Weg.
In einem vorangegangenen Blog-Post beschrieb ich, dass ich im Jahr 2019 mein Auto weniger nutzen möchte. Nun folgen Taten bzw. eine Bestellung.
Ein neues Jahr hat begonnen. Die beste Zeit, gute Vorsätze zu fassen. Weniger Rauchen, weniger Süßigkeiten, mehr Sport: Das sind die üblichen Verdächtigen. Die meisten von uns verfügen über langjährige Erfahrung darin, wie die Vorsätze bis spätestens Ende Januar wieder in Schall und Rauch aufgegangen sind.
Doch wie wäre es mit dem Vorsatz, weniger mit dem Auto zu fahren?
In einem vorangegangenen Artikel beschrieb ich, wie sich die ELV Raumklimastation RS 500 mit einem Raspberry Pi unter Linux auslesen lässt und wie sich die Messewerte für Temperatur und Luftfeuchte für andere Anwendungen bereitstellen lassen. Mit diesem Beitrag wird die Einrichtung eines minimalen Web-Interfaces zur Anzeige der aktuell gemessenen Werte beschrieben.
In einem vorangegangenen Artikel beschrieb ich, wie sich die ELV Raumklimastation RS 500 mit einem Raspberry Pi unter Linux auslesen lässt und wie sich die Messewerte für Temperatur und Luftfeuchte für andere Anwendungen bereitstellen lassen. Mit diesem Beitrag wird die Einbindung in ein Monitoring mit Icinga2 beschrieben.
Der Elektronikversender ELV bietet mit der Raumklimastation RS 500 ein Gerät mit Farbdisplay zur Überwachung von Temperatur und Luftfeuchte an, das gleich mit 5 Funksensoren. Die Station lässt sich mittels einer mitgelieferten PC-Software »EasyTemp« auslesen. Aber nur unter Windows. Wäre es nicht schön, die Daten auch unter Linux zu erhalten? Zum Beispiel mit einem Raspberry Pi?
In Kürze endet die Gültigkeit der StartCom/StartSSL-Zertifikate. Zeit, auf »Let's Encrypt« umzustellen.
Auch juergen.rocks hat ihn jetzt – diesen unsäglichen Cookie Consent Hinweis: Eine reine JavaScript-Lösung unter Verwendung von jQuery, passend für das verwendete Bootstrap UI Framework.
Ein Trie – die Kurzform von »Retrieval« – ist eine einfache Datenstruktur, mit der man in Zeichenketten suchen kann. Ein anderer Begriff dafür ist der »Präfixbaum«. Heute erkläre ich kurz, was man mit einem solchen Teil anstellen kann und wie man es implementiert.
»Die Kette« ist eine kleine syntaktische Knobelei, die es in sich hat – mit Lösungen in Python, JavaScript und C++.
In diesem Jahr habe ich erstmals an der Aktion »Mit dem Rad zur Arbeit« teilgenommen. Eine Zusammenfassung mit lustigen Zahlenspielen.
Statistiken sollte man immer mit Vorsicht genießen. Insbesondere dann, wenn sie dazu herangezogen werden, irgendwelche Umstände zu belegen – so wie der Adblocker-Speedtest von Opera®.
Das Fahrrad ist schon lange mein bevorzugtes Verkehrsmittel für den täglichen Weg zur Arbeit. Seit Anfang des Jahres ist es sogar so, dass ich die tägliche Pendelstrecke mit dem Rad schneller als mit dem Auto zurücklegen kann. Zeit für eine Abrechnung.
Tests direkt in der Quellcodedokumentation verfassen? Pythons »doctest« macht's möglich. Besonders praktisch ist das, wenn man im Rahmen der Quellcodedokumentation sowieso Beispiele mit angeben möchte. Damit spart man viel Zeit und die Beispiele funktionieren garantiert.
Manchmal erlebt man beim Testen noch echte Überraschungen. Zum Beispiel dann, wenn gut geplante und lokal ausgeführte Tests urplötzlich nicht mehr funktionieren, wenn sie auf einem anderen Rechner oder einem Buildserver ausgeführt werden. So meldete sich die Browser-Automatisierung »Selenium« plötzlich mit dieser erheiternden Meldung:
StaleElementReferenceException: Message: Element not found in the cache - perhaps the page has changed since it was looked up
Pythons eingebaute Funktionen »any« und »all« sind tolle Hilfsmittel für das Entwickeln von gut les- und wartbarem Code. Ich möchte nicht mehr auf sie verzichten, auch, wenn sie ein winziges Problem mit sich bringen: Sie untergraben die Idee der Short Circuit Evaluation.
Ab sofort steht eine aktualisierte Version des BlackRed-Pakets zur Verfügung. Wichtigste Neuerung: Endlich kann Redis' AUTH-Funktion verwendet werden.
Während der Entwicklung von »BlackRed« ist mir ein Python-Verhalten aufgefallen, welches ich so nicht auf dem Schirm hatte. Man lernt eben nie aus.
Mit dem Python-Package »BlackRed« lässt sich eine Benutzeranmeldung zusätzlich gegen Brute-Force-Angriffe absichern. Als Datenbank dafür dient »Redis«.
Es gibt viele gute Vorschläge und Ideen, wie man ein Django-Projekt anlegen und verwenden sollte. Die in diesem Artikel beschriebene Struktur hat sich bei mir so entwickelt und inzwischen verwende ich sie bei allen Projekten.
Auch juergen.rocks verwendet Cookies.
Aber wir verwenden nur technisch notwendige Cookies zur Verwaltung und Absicherung Ihres Besuchs. Es gibt keine Tracking- oder Werbe-Cookies, und natürlich keine Cookies von Dritten.
Es gibt also keine Notwendigkeit, sich für irgendetwas an- oder abzumelden, was Sie sowieso nicht mögen würden.
Datenschutz-Infos