Olivenölkännchenschwachsinn

Veröffentlicht:

Die EU hat endlich mal was für den Verbraucherschutz getan und verbannt Ölfläschchen von den Restauranttischen.

Endlich, wurde ja auch Zeit! Ich habe mich schon immer daran gestört, dass es meist einfach nur metallene Kännchen waren und keine bunten, voller Logos, Abzeichen und Gütesiegel überlaufenden Plaste-Flaschen. Endlich muss ich mich bei einem Restaurantbesuch nicht mehr mit meinem Gegenüber beschäftigen, sondern kann vorgeben die Angaben auf dem Ölivenölfläschchen studieren zu müssen. Ihr kennt ja auch alle die hohen Zahlen der Verletzten, Gebrochenen und - ja, sogar die gibt es sicherlich - Toten, die durch die Nicht-Kennzeichnung der Olivenölkännchen verursacht werden.

Mal im Ernst, das die Tischgewürze sind wohl das letzte, um das ich mir bei einem Restaurantbesuch Sorgen mache. Ist die Küche sauber, kann der Koch sein Handwerk, sind die Lebensmittel frisch, wird auf genmanipuliertes Gemüse verzichtet, Starb die Kuh glücklich... ihr kennt das.

Die Neuregelung der Olivenölfläschchen wird vermutlich nur einer Gruppe von Olivenölherstellern helfen: den großen. Die Fläschen dürfen nicht mehr nachgefüllt werden und müssen versiegelt sein. Mein kleiner Lieblings-Olivenöl-Lieferant aus dem spanischen Hinterland, der auf seinem Hain seit Jahren Olivenbäume anbaut und das weltklassigste Olivenöl der Welt macht, wird also ab demnächst nicht mehr auf den Tischen stehen. Abfüllanlage, Flaschen, EU-Olivenölgenehmigungsformular 37A und der ganze Aufwand lohne sich für ihn nicht - wieso auch, schließlich habt ihr das Olivenöl bisher immer in eurem Kanister mitgenommen.

Die Regelung trifft übrigens nur das Olivenöl. Was-auch-immer sonst auf dem Tisch steht ist davon völlig unberührt. Aber selbst wenn es davon berührt werde: Mist bleibt Mist.

PS: Sucht mal im Netz nach der Da Wird Mir Übel-Folge mit Olivenöl. Findet man leider nicht mehr in der ZDF Mediathek, war aber sehr aufschlussreich. Da sah man gut welche Firma Olivenöl panscht und dafür auch noch viel Geld haben will.


Das Büro des Todes ist wieder da!

Veröffentlicht:

Ich bin ziemlich erfreut darüber, dass das Büro des Todes - einer meiner liebsten Comedy-Podcasts - wieder regelmäßig über neue Abenteuer von John und Jane berichtet.

Es gibt eine neue Adresse und ich habe das Gefühl, dass sich bei den Sprechern etwas geändert hat, aber das ist alles egal, solange es weiter geht!


Python: Key in einem Dict ändern

Veröffentlicht:

Eine Kleinigkeit für die Trickkiste, denn normalerweise sind die Keys von Dictionaries in Python unveränderlich. Gefunden habe ich es im Blog von Javier Andrés Alonso.

>>> my_dict = {"protocol": "HTTP", "size": 1024}
>>> my_dict["inet_protocol"] = my_dict.pop("protocol")
>>> print my_dict
{'inet_protocol': 'HTTP', 'size': 1024}

PS: Funktioniert in Python 2 & 3 :)


Stromsparen

Veröffentlicht:

Mir macht es keinen Spaß an einem Laptop zu sitzen, bei dem der Lüfter ständig dreht und der Akku nach kurzer Zeit bereits leer ist. Glücklicherweise, kann ich mir mit powertop und cpufrequtils helfen!

Die Installation wird wie auf einem Debian oder Ubuntu üblich erledigt:

sudo apt-get install cpufrequtils powertop

cpufrequtils

cpufrequtils erlaubt mir die vom Kernel bereits mitgebrachten Stromspartechniken zu beeinflussen. Mittels cpufreq-info bekomme ich Informationen über den Zustand der CPUs und den verwendeten Frequenzen. Auch kann ich sehen welche Strategie die Frequenz beeinflusst. Die Strategie wird durch den so genannten Governer bestimmt. cpufreq-info zeigt nicht nur an welche Governor zur Verfügung stehen, es zeigt auch welche Frequenzschritte möglich sind.

Mittels sudo cpufreq-set --cpu 0 --governor conservative --related setze ich die Strategie für alle hardwareseitig zusammengehörenden CPUs auf die konservative Umsetzung der Frequenzen. Diese bevorzuge ich gegenüber dem häufig empfohlenen ondemand, da selbiger mir oftmals zu sprunghaft ist und dadurch gefühlt öfter für das Anlaufen des Lüfters sorgt.

Nach dem Setzen kann wiederum mit cpufreq-info überprüft werden, welche Settings gemacht wurden und in welchem Frequenzbereich die CPU laufen soll. Wenn bei einem Governer keine Frequenzspanne angegeben ist, dann kann man diese mit --min $untere_schwelle sowie --max $obere_schwelle angeben.

Bei meinem Intel Atom N270 verwende ich folgenden Befehl:

sudo cpufreq-set --cpu 0 --governor conservative --related --min 800

Note

Von der Verwendung des powersave Governers wird in vielen Fällen abgeraten.

powertop

Powertop ist ein weiters nützliches Tool zum Stromsparen. Während cpufreq sich nur um die Frequenz der CPU kümmert, zieht Powertop verschiedenste andere Dinge heran. Hier werden z.B. Stromsparmodi des Chipsatzes aktiviert, unbenötigte Netzwerkverbindungen abgeschaltet oder die Stromsparfähigkeiten des Audio Codecs aktiviert.

Außerdem zeigt powertop an welche Prozesse die CPU beanspruchen und in welchen Modi sich die CPU aufhält.

Das wichtigste an powertop ist aber meiner Meinung nach der Reiter Tunables, in welchem man ruck zuck einzelne Stromsparmodi aktivieren kann. Dazu muss man kein großer Hacker sein, Option auswählen und mit ENTER bestätigen ist ausreichend. Wow!

Fazit

Einem Linux-Rechner Sparsamkeit beizubringen ist gar nicht so schwer. Der Kernel hat alles wichtige an Bord und die Hilfsmittel sind einfach zu bedienen. Beachten sollte man bei der Anwendung, dass nicht alle Änderungen permanent sind, sondern nach einem Neustart wieder neu vorgenommen werden müssen.


Planet-Python.de

Veröffentlicht:

Der englische Planet Python wird von vielen Pythonistas gelesen - mir inklusive. Aber wär es nicht manchmal schön zu sehen, was die deutsche Python-Community umtreibt?

Dafür gibt es nun Planet-Python.de!

Der Planet soll der deutschen Community die Möglichkeit geben sich zu zeigen und Sichtbarkeit für die uns bewegenden Themen geben.

Aber dazu brauchts natürlich auch Blogs, deren Posts im Planet dargstellt werden. Auf der Position ist der Planet momentan noch dünn besetzt, was hoffentlich nur an seinem geringen Alter liegt. Von daher bin ich noch auf der Suche nach Blogs, die sich mit Theme aus dem Python-Umfeld beschäftigen und beim Planet mitmachen! Vielleicht suche ich ja genau dich?!

Der Planet wird, wie auch mein Blog, durch Nikola erstellt. Die Konfiguration ist auf Github einseh- und anpassbar.


Namensräume

Veröffentlicht:

Mama Gump war eine weise Frau.

Mama Gump always said, import star is like a box of chocolates, you never know what you're going to get :-)

Raymond Hettinger, Python core developer

Einfache Regel: niemals from foo import * !

Denn damit holt man sich jede Menge Namen in seinen Namensraum und das kann unter Umständen den einen oder anderen unerwünschten Seiteneffekt haben. Ich mache an solchen Stellen meist ein from foo import first, second, um explizit festzulegen, welche Objekte in meinem Namensraum importert werden sollen.

Weitere Informationen zu Python und Namensräumen gibts unter im Guide to Python Namespaces.


Google Chrome: Zeilenabstand im Lesezeichen-Menü anpassen

Veröffentlicht:

Mit dem letzten Update scheint Google seinem Browser Chrome im Lesezeichenmenü mehr Abstand zwischen den einzelnen Elementen gegeben zu haben.

Leider gibt es keine Möglichkeit über eine GUI den Abstand wieder zu verkleinern. Aber es gibt die Möglichkeit Chrome beim Start einen Paramter mitzugeben!

Dazu macht man auf dem Desktop einen Rechtsclick auf die Verknüpfung und wählt dann den Punk Eigenschaften. Im Eigenschaften-Fenster muss dann unter Ziel --disable-new-menu-style angehangen werden.

Beim nächsten Start über die Verknüpfung haben die Lesezeichen dann wieder den gewohnten Abstand.


Gehälter von Politikern

Veröffentlicht:

Bei den eigenen Diaten gibt es wenige Widersprüche im Bundestag, die Erhöhung findet in der Regel ohne große Gegenwehr statt. Wieso auch, es wär' wie ein Schnitt ins eigene Fleisch.

Nun befürwortet Norbert Lammert höhere Gehälter für die Abgeordneten. Und ich finde das gut!

Unsere Politiker sollen gut verdienen, denn sie haben eine große Verantwortung durch ihr Mandat. Aber dieses Einkommen sollte an zwei Bedingungen geknüpft sein: Unabhängigkeit und Transparenz.

Kein Politiker soll von Nebenbeschäftigungen in der Wirtschaft abhängig und dadurch beeinflussbar sein. Das Gehalt muss ihn unabhängig machen, so dass er nur den durch ihn vertretenen Bürgern und seinem Gewissen verpflichtet ist. Immerhin gibts als Politiker bereits eine Reihe von netten Vergünstigungen.

Und wir brauchen keine Wischi-Waschi-Regelungen zum Veröffentlichen des Einkommens. Es soll alles auf den Tisch! Und nicht nur wieviel, sondern auch woher.

Ich glaube leider nicht, dass wir eine solche Änderung bald sehen werden. Vielleicht müssen wir dann doch dazu übergehen, dass Politiker die Logos ihrer Financiers auf der Kleidung im Bundestag tragen müssen.


IPython: die bessere interaktive Python-Shell

Veröffentlicht:

IPython nutze ich quasi nur als interaktive Python-Shell, da es deutlich komfortabler zu bedienen ist als die Shell des Standard-Interpreters.

Ich kann mir - wie beispielsweise in der Bash - mittels Tab Vervollständigungen anzeigen lassen und dadurch mir schnell einen Blick über die Schnittstellen meiner Objekte anzeigen lassen.

Ich kann mittels %paste schnell einzelne Codestücke einfügen und ausprobieren oder mittels %run gleich ein ganzes Modul starten.

Damit nutze ich aber nur einen Bruchteil der Möglichkeiten von IPython. Besonders das Notebook scheint viele Anhänger zu haben und auch für parallele Arbeiten kann man IPython verwenden.

In meinen Augen hat IPython-Erschaffer Dr. Fernando Perez völlig zu Recht einen der Free Software Awards durch die FSF überreicht bekommen. Gratulation von mir!

PS: Wusstet ihr dass Nikola durch ein Plugin Seiten aus IPython-Notebooks erstellen kann?


Wordpress nach Nikola umziehen

Veröffentlicht:

Ihr wollt von Wordpress zu Nikola wechseln? Super, denn das ist ziemlich einfach! Hier werde ich euch zeigen, wie ihr einen Umzug von eurem bestehenden Wordpress-Blog hin zu Nikola macht.

Zuerst brauchen wir einen Export der Wordpress-Daten. Der kann im Admin-Bereich unter dem Punkt Werkzeuge -> Daten exportieren erstellt werden. Zum Umzug aller Daten wählen wir Alle Inhalte und drücken auf den Knopf zum Download.

Ich nutze für die weiteren Schritte der Anleitung Debian unstable. Für maximalen Comfort installieren wir die folgenden Pakete, falls sie nicht schon längst installiert wurden:

sudo apt-get install python-dev python-notify python-pip python-virtualenv virtualenvwrapper python-distribute libxml2-dev libxslt1-dev build-essential libjpeg8-dev

Für die Nikola-Installation richten wir uns nun ein virtualenv durch den grandiosen virtualenvwrapper ein. Damit haben wir eine Umgebung, in der wir auch als non-root Benutzer Python-Pakete installieren können. Falls beim ersten Versuch den folgenden Befehl auszuführen eine Meldung kommt, dass mkvirtualenv nicht gefunden werden konnte, müsste ihr eine neue Terminal-Session öffnen.

mkvirtualenv nikola

Solange (nikola) eurem Prompt vorangestellt ist, sind wir in der virtuellen Umgebung. Hier können wir nun Nikola installieren. Nikola ist nur das Grundgerüst. Wir werden für den Import noch Requests und Markdown installieren. Für die Komprimierung von CSS & JavaScript installieren wir noch Webassets.

pip install --use-mirrors Nikola requests markdown webassets

Bevor wir nun den Import durchführen, können wir uns mit folgendem Befehl die Optionen dafür anzeigen lassen:

nikola help import_wordpress

Ich will keine Entwürfe importieren und die Dateien sollen am Ende im Ordner blog landen.

nikola import_wordpress -o blog --no-drafts path/to/wordpress_export.xml

Nikola wird nun die Artikel und/oder Seiten aus der Export-Datei in ein Markdown-Format umwandeln und eventuell vorhandene Anhänge, das können z.B. im Post enthaltene Bilder sein, herunterladen. Anschließend finden wir im Ordner blog unsere Konfigurationsdatei conf.py. In der werden die Einstellungen für den Blog gemacht und man sollte sich kurz Zeit nehmen, um dort reinzuschauen und gegebenenfalls Änderungen zu machen.

Befinden wir uns im Ordner blog, können wir mittels nikola build dafür sorgen, dass unsere Seite erstellt wird. Das Ergebnis ist danach im Ordner output zu finden. Haben wir unsere Seite erstellt, können wir sie uns mit nikola serve in unserem Webbrowser anschauen - dabei ist dann noch alles lokal.

Nun ist der Zeitpunkt, um ein letztes Backup des Wordpress-Ordners zu machen, bevor man ihn verschiebt oder löscht. Wer ihn verschiebt, der sollte vorher im Admin-Backend die Adresse des Blogs anpassen, damit bei einem Aufruf an der neuen Adresse noch alles funktioniert und man nicht in der Datenbank rumwühlen muss ;)

Wollen wir die fertige Seite nun auf unseren Webserver schieben, können wir das entweder über ein FTP-Programm oder - eleganter - durch die Angabe von Deploy-Befehlen in conf.py. Bei angegebenem Deploy-Befehl kann mittels nikola deploy die Übertragung auf den Webserver vorgenommen werden.

Da ich nicht nur das Blog-System sondern auch die Domain gewechselt habe, habe ich zusätzlich im alten Verzeichnis meines Blogs eine Weiterleitung eingerichtet, welche Besucher und Feedreader automatisch auf die neue Adresse verweist. Dabei sieht meine .htaccess wie folgt aus:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule feed/ http://blog.nerdno.de/rss.xml [R=301,L]
RewriteRule ^(.*)$ http://blog.nerdno.de/$1 [R=301,L]
RewriteRule . /index.php [L]
</IfModule>

Redirect 301 / http://blog.nerdno.de
Redirect 301 /feed/ http://blog.nerdno.de/rss.xml

Die immer wieder auftauchende 301 ist der HTTP Status Code für moved permanently.

Das wars auch schon, an diesem Punkt sollte euer Nikola up and running sein :)