startafire

That blog about stuff.

The Rook
2017-02-19 12:30

Ich war unsicher, was mich bei Daniel O'Malleys The Rook erwarten würde. Dass es mich so fesselt und so schnell ausgelesen sein würde, hat mich selbst überrascht!

Bevor ich mit dem Nachfolger, Stiletto, beginne, will ich euch dieses Buch ans Herz legen. Es ist nicht das typische Fantasy-Buch mit Mittelalter und Zauberern, sondern hier wird eine ungewöhnliche Geschichte in unserer modernen Zeit erzählt. Sehr unterhaltsam, sehr spannend und selbst für einen Fantasy-Muffel wie mich geeignet.

Ich bin gespannt, was der Nachfolger bringt und freue mich schon wieder in diese vor unseren Augen verborgene Welt einzutauchen!

Python: Execute function only if parametrized
2017-02-18 10:37

I recently created a script based on the simple log parsing pipeline to analyse some Apache webserver logfiles.

To get specific data out the script was equipped with various function to apply filters. All those were optional and I ended up equipping all those functions with something like the following:

def filter_something(requests, parameter):
    if not parameter:
        yield from requests
        return

    for request in requests:
        # Use parameter for filtering ...
    yield request

To get rid of this I wrote a simple decorator:

from functools import wraps

def if_parametrized(func):
    def returner(requests):
        yield from requests

    @wraps(func)
    def only_if_parametrized(requests, *params):
        if not any(params):
            return returner(requests)

        return func(requests, *params)

    return only_if_parametrized

Now I can skip the duplicated check for the parameters and get some cleaner code:

@if_parametrized
def filter_something(requests, parameter):
    for request in requests:
        # Use parameter for filtering ...
    yield request

Apache: Weiterleitung ohne mod_rewrite
2016-12-20 11:36

Beim Aufsetzen des opsi-Blogs musste ich eine passende Apache-Config erstellen. Der Blog sollte per default über https erreicht werden. Oftmals erledigt man so etwas mittels mod_rewrite, aber dann fand ich die Redirect-Anweisung!

Dadurch sieht die Umleitung auf https so aus:

<VirtualHost *:80>
    ServerName blog.opsi.org
    Redirect permanent / https://blog.opsi.org/
</VirtualHost>

Der Charme ist nicht nur die unkomplizierte Anweisung, sondern auch dass es zum Standard-Umfang von Apache gehört - im Gegensatz zur Erweiterung mod_rewrite.

Beispiele und weitere Optionen dazu finden sich in der Dokumentation.

apt rockt
2016-11-06 21:20

Seit ich Ubuntu 16.04 nutze, bin ich großer Freund von apt geworden. apt ist eine Alternative zum den meisten Benutzern bereits bekannten apt-get und bietet fast die gleiche Syntax im täglichen Arbeiten, man muss oftmals nur apt anstatt apt-get verwenden.

Eine typische Anwendung sieht bei mir so aus. Erst einmal Paketdaten auf den neuen Stand bringen:

$ sudo apt update

Dann checken was aktualisiert werden kann. Gut finde ich die einfache Anzeige welche Pakete bei einem Upgrade aktualisiert werden:

$ sudo apt list --upgradeable
Auflistung... Fertig
libowncloudsync0/unbekannt 2.2.4-1.3 amd64 [aktualisierbar von: 2.2.3-1.2]
libqt5keychain1/unbekannt 0.7.0-9.4 amd64 [aktualisierbar von: 0.7.0-5.1]
owncloud-client/unbekannt 2.2.4-1.3 amd64 [aktualisierbar von: 2.2.3-1.2]
owncloud-client-l10n/unbekannt 2.2.4-1.3 all [aktualisierbar von: 2.2.3-1.2]

Anschließend die Pakete auf einen neuen Stand bringen.

$ sudo apt upgrade

Oder auch die Pakete, die einen Reboot wollen:

$ sudo apt dist-upgrade

Schön ist, dass beim Update ein Fortschrittsbalken angezeigt wird. Dadurch sieht man gerade bei der Aktualisierung oder Installation vieler Pakete wo man gerade steht und man kann ungefähr abschätzen, wie lange der Vorgang noch dauern wird.

Gravel Fondo - über Stock und Stein im Schwarzwald
2016-10-23 13:25

Mit vielen Sonnentagen und schönen Bergen ist der Schwarzwald ein Paradies für Radler. Als ich letztes Jahr dort zum Wandern war, wollte ich irgendwann mit dem Fahrrad zurück kommen, um die Berge nicht nur zu Fuß zu bezwingen. Letztlich war es Glück, dass ich mich kaum ein Jahr später plötzlich wieder im Schwarzwald befinde um Fahrrad zu Fahren.

Weiterlesen…

Rucksack: Blahol New Wave
2016-08-20 10:57

Einkaufen mit meiner Messengerbag klappt gut. Wenn man allerdings für zwei Leute für eine ganze Woche einkauft, wird es eng. Selbst mit zwei Messbags, mussten wir immer noch zusätzliche Taschen mitnehmen. Mich hat das ziemlich genervt, da Radeln mit einem Stoffbeutel über der Schulter keinen Spaß macht. Zeit nach Alternativen zu suchen!

Weiterlesen…

TCR 2016
2016-07-30 10:12

Gestern Nacht ging es los beim diesjährigen Transcontinental Race. Nach dem Start in Geraardsbergen müssen die ohne Unterstützung fahrenden Teilnehmer zum Mount Ventoux, über den Furkapass, den Passo di Giau und den Durmitor, bevor sie das Ziel Çanakkale erreichen.

Im Gegensatz zum letzten Jahr wird die gesamte Strecke vermutlich 400km kürzer ausfallen, dafür sind einige Höhenmeter mehr zu erwarten.

Ich werden in den nächsten Tagen auf jeden Fall das Livetracking verfolgen und nach Beiträgen mit #TCRno4 Ausschau halten!

Bringing opsi to Github
2016-07-14 12:24

Probably the most satisfying thing I have done in the last month was publishing the official opsi.org repositories at Github.

Weiterlesen…

Kartusche oder Muskeln?
2016-06-13 22:37

Ein platter Reifen kommt nie zu einem guten Zeitpunkt. Glücklicherweise ist ein Reifen schnell ausgebaut, geflickt und wieder eingebaut. Was dann noch fehlt ist Luft.

Weiterlesen…

PyCon.DE 2016
2016-06-12 20:42

Nachdem es lange unklar war, ob es 2016 eine PyCon in Deutschland geben wird, bin ich sehr erfeut zu lesen, dass es eine geben wird. Überraschenderweise in München anstatt Berlin.

Mehr Infos gibt es aktuell unter pymunich.de. Dort läuft aktuell auch der Call for Papers, es ist also ein guter Zeitpunkt noch einen Talk einzureichen.