Dienstag, 6. Dezember 2011

Demo gegen Homophobe Dreckskacke

Folgende Mail schneite mir gerade in den Posteingang, wäre toll, wenn viele kämen…
(ich reposte das mal hier weil es das sonst nur auf Facebook gibt)

Liebe Mitstreiter,

noch gestern diskutierte Jena über Toleranz, Weltoffenheit und Imageverlust. Nur einen Tag später heißt es Handeln statt Reden!!!
Heute, werden diskriminierende und weltfremde Inhalte zum besten geben, die nicht unwidersprochen hingenommen werden können. Anlass ist ein Vortrag bei einer Jenaer "Burschenschaft".

Wir unterstützen folgenden Protestaufruf und laden alle ein, sich an der Kundgebung in weniger als 1 1/2 Stunden zu beteiligen!

19:00 Uhr LÖBDERGRABEN 9A, Haus der KDStV

-------------------- A U F R U F -----------------------------

Am heutigen Dienstag, den 6. Dezember wird die Publizistin Gabriele Kuby in der „Katholischen deutschen Studentenverbindung (KDStV) Saarland zu Jena“ einen Vortrag mit dem Titel „Gender-Mainstreaming - Verlust der Freiheit durch Freiheit ohne Grenzen?“ halten. Die Referentin ist bekannt für ihre diskriminierenden Äußerungen zum Thema Homosexualität und Gleichstellung. So bezeichnet Frau Kuby Homosexualität als Identitätsstörung und therapierbar, Aufklärungsprojekte hingegen als „Homosexualisierung von Kindern und Jugendlichen“. Als eine der Unterzeichner_innen der Marburger Erklärung spricht sie sich weiterhin gegen einen angeblich angestrebten Totalitarismus der SchwuLesBischen Vereine aus, der verhindert werden muss.

Der Verein „Vielfalt Leben – QueerWeg Verein für Jena & Umgebung e.V.“ ruft nun ab 19 Uhr zu einer Kundgebung vor dem Haus der KDStV im Löbdergraben 19a auf. Unterstützt wird er hierbei durch den Arbeitskreis „Queer-Paradies“ am Studierendenrat der FSU Jena sowie durch die „Koordinierungsstelle des Jenaer Stadtprogramms und Kontaktbüro des Runden Tisches für Demokratie“ (KoKont).
Mit der Kundgebung wollen wir uns gegen Hassreden wehren und ein Zeichen für Akzeptanz setzen. Wir rufen alle zivilgesellschaftlich engagierten Menschen auf, sich dieser Diffamierung mittelalterlicher Denkart gegenüber einer angeblich „unchristlichen“ Minderheit zu erwehren.
-- --
KoKont Jena

Koordinierungsstelle und Kontaktbüro
im Jenaer Stadtprogramm gegen Fremdenfeindlichkeit,
Rechtsextremismus, Antisemitismus und Intoleranz

Löbdergraben 25 A
07743 Jena

Telefon: 03641- 236 606
Fax: 03641- 236 607
E-Mail: kokont@t-online.de
www.kokont-jena.de

- Ein Projekt in Trägerschaft des Bildungswerks BLITZ e.V. - 

Montag, 24. Oktober 2011

Lass uns über Geld reden…

Wann und mit wem?

Ich habe heute zwei Stunden mit meinem einem MLP Berater über Geld geredet. Etwas was ich sehr ungerne und nur selten mache. Ich mache das nicht deshalb nur selten und eigentlich nur mit ihm, weil ich besonders wenig (oder viel) habe - was heißt schon "haben" oder "viel"? -  sondern weil mir das Thema so unvertraut ist und es so unüblich ist darüber zu reden.
"Über Geld redet man nicht, man hat es"
Meine Eltern haben mit mir über Sex geredet, über Drogen und Politik, das war fruchtbar und wertvoll und ich will es nicht missen. Ich glaube sogar, dass ein Teil von dem was mich ausmacht auf dieser Offenheit Dinge zu besprechen fußt. Aber sie haben nie mit mir über Geld geredet, ich vermute, weil sie es auch nicht viel besser wissen, zumindest kann ich nicht einschätzen ob sie es besser wissen.

Ich kann muss mich entscheiden

Als ich noch Student war stellte sich die Frage nicht. Ich hatte genug Geld um zu leben und habe hin und wieder ein bisschen was zurückgelegt. Das habe ich dann spätestens zwei Monate später wieder ausgegeben, entweder für die Nebenkostennachzahlung oder für ein neues Handy. Aber ich verdiene inzwischen mehr Geld als ich ausgeben müsste, ich kann meinen Grundbedarf an Wohnung, Nahrung, Kommunikation und Kultur finanzieren und es bleibt übrig. Solange ich nicht darüber nachdenke werde ich aber auch das was übrig bleibt für genau diese Posten ausgeben. Statt Käsebrot Joeys Pizza, statt eines gebrauchten Laptops einen neuen und vielleicht hier und da ein Buch oder ein Kinobesuch mehr. Nichts substantielles aber deutlich mehr Lebensqualität.
Auf der anderen Seite steht die ungewisse Zukunft, es drohen mir Krankheiten, Unfälle, Pech und unausweichlich das Alter. Und wenn ich mit Versicherungsvertretern, Finanzberaterinnen rede klingt es so als ob mir morgen ein Sattelschlepper meine Hände abtrennt, mein Gebiss entzahnt , ich vom dunkelsten Burn-Out-Syndrom einer Depression heimgesucht werde und als ob Norbert Blüms „Die Rente ist Sicher” sich als Barth'scher Kalauer entpuppt.
Soll ich aus den vollen oder sparsam leben?

Trau! schau! wem?

Kann ich den als Stimmen der Vernunft verpackten Mahnungen glauben überhaupt? Sind die, die mir da Ratschläge geben nicht wie Taxifahrer in Ländern deren Schriftzeichen ich nicht lesen kann? Ich kenne nur grob das Ziel, aber weder die Straßen noch den Verkehr und mich beschleicht beständig die Angst, dass der Weg den Sie nehmen für mich nicht optimal ist? Denn natürlich leben die Beraterinnen und Vermittler von Provisionen und sind keine Altruisten, selbst wenn Sie das gerne behaupten. Vielleicht muss ich mich ja aber sogar in Ihre Hände begeben weil ich den Weg zum Ziel sonst nie erreiche? Vielleicht ist die unnütze Hausratversicherung der Preis dafür, dass ich mit 63, 67, 70 nicht mit einer mickrigen staatlichen Rente dastehe die mir Vollinvaliden gerade für die Busfahrkarte zur örtlichen Tafel reicht?
Ich weiß nicht ob ich eine Riester-Rente brauche? Mir ist schleierhaft Berufsunfähigkeitsversicherung abzuschließen hoch vernünftig ist? Soll ich lieber jeden Monat Geld zurückzulegen um mir in naher oder ferner Zukunft Dinge zu kaufen für die meine Portokasse jetzt (noch?) zu klein ist? Wo soll ich sparen und wenn ja wie viel? Ich weiß es nicht und fühle mich in der komplexen Welt der Erwachsenen verloren, was ich brauche ist einen vertrauenswürdigen Freund. Aber den finde ich wohl weder im Büro meiner Hausbank noch bei einem Erstsemestersektempfang im Foyer der Universität.

Das private ist politisch

Nirgendwo prallen politischer Anspruch und Realität so deutlich aufeinander. Ich mache keinen Hehl daraus, dass es mir durchaus recht wäre wenn, lieber heute als morgen die ganze Kackscheiße den Bach runter ginge und durch etwas besseres ersetzt werden würde. Es soll Leute geben die sagen das wäre bereits passiert.
Wenn ich mein Geld anlege vertraue ich es Menschen an die versuchen damit mehr Geld zu erwirtschaften - sie teilen diesen Gewinn sogar mit mir. Nur ist mir das System aus Geld Geld zu machen doch höchst suspekt.
Exkurs (kann übersprungen werden): Um mit Geld Geld zu erwirtschaften muss das mehr durch etwas weniger an anderer Stelle ausgeglichen werden. Entweder zerstöre ich die Umwelt, oder ich erhöhe die Arbeitszeit, oder ich drücke Löhne oder lasse das Fließband schneller laufen. Apple macht ja bekanntlich aus guten Ideen Geld. Aber um wirklich Geld mit Apple zu verdienen muss Apple nicht nur weiterhin gute Ideen haben (denn diese Erwartung hat sich ja bereits im Preis der Aktie niedergeschlagen) sondern mehr, bessere und häufiger gute Ideen haben. Die einzige Alternative zur tatsächlichen Wertsteigerung ist die Hoffnung auf Wertsteigerung, damit können wir zwar auch aus Geld mehr Geld machen, aber das geht nicht unbegrenzt. Irgendwann wird ein Teil dieser Hoffnungen erfüllt - der andere Teil platzt aber und macht aus viel Geld wenig Geld.
Ich wünsche mir aber für mich und alle anderen Menschen weniger und leichtere Arbeit in einer intakten Umwelt. Diesem Wunsch steht also die Idee Geld anzulegen, Zinsen zu kassieren* und Steuern zu sparen diametral gegenüber.
*) Ich habe nichts gegen Zinsen an sich, ich bezahle einen Preis dafür, dass jemand anders das Risiko eingeht das Geld nicht zurückzuerhalten, aber diese Zinsen müssen eben wie oben beschrieben erwirtschaftet werden.

Fazit

Wie passt das also zusammen? Nach dem Gesetz der Trägheit müsste meine Angst Geld mit dem ich mein Leben jetzt schöner machen könnte zu verlieren, gepaart mit meiner ideologischen Ablehnung dazu führen, dass ich eben keine Rentenversicherung abschließe und mich nicht gegen die Gefahren des Lebens versuche abzusichern.
Auf der anderen Seite plagt mich das schlechte Gewissen, ich habe das Gefühl es sei vernünftig und erwachsen Geld zurückzulegen, für schlechte Zeiten, für das eigene Haus, für ein sicheres Auto. Was nun? Ich weiß es nicht, ich müsste mal mit jemand über Geld reden…

Donnerstag, 20. Oktober 2011

Winzige Zeiterfassungs Software

Ich habe in Ermangelung von Lust und Zeit ein fremdes Projekt zu suchen, testen und dann zu verwerfen ein winziges (Web-)Programm zur Zeiterfassung mit PHP und MySQL zusammengehackt. Wollte ich nur mal fix bekanntgeben.
Screenshot gibt's vielleicht wenn das hier mal so richtig genutzt wird - wir werden sehen.

Freitag, 30. September 2011

Tschüß Facebook!

Liebe Freund_innen - zumindest, wenn wir der Bezeichnung von Facebook glauben - ich habe mich immer wieder gefragt, warum ich bei Facebook Angemeldet bin und immer wieder keinen Grund gefunden. Ich habe mich damals angemeldet als es noch cool war ;-) doch jetzt sehe ich keinen Vorteil mehr, sieh selbst:

  • Wenn ich dir eine Nachricht schicken will, schreibe ich eine Mail über oder - die kann ich sogar mit GPG/PGP verschlüsseln. Das gibt mir nicht nur das falsche Gefühl die Konversertion wäre privat - nur weil sie nicht in meiner Timeline angezeigt wird - nein, eine verschlüsselte Konversertion ist tatsächlich so privat wie es heute geht.
  • Wenn ich mit dir reden will rufe ich an. Ich habe immer noch die selbe Telefonnummer: (O²-Netz) seit ich 16 bin!
  • Wenn ich mit dir chatten will, dann nutze ich entweder ICQ/AIM mit meiner Kontaktnummer oder jabber über - und beide Protokolle kann ich bequem mit OTR oder GPG/PGP verschlüsseln, dank den Programmen Pidgin (nur OTR Verschlüsselung) oder Gajim (Nur für Linux). Und ich kann damit sogar Gruppenchats durchführen!
  • Wenn ich an deinem digitalen Leben teilhaben will - und du mich daran teilhaben lassen willst, dann leg dir entweder ein Blog zu oder einen Twitteraccount. Blogs abboniere ich und verfolge sie regelmäßig von überall aus mit meinem Handy. Du kannst dir fast sicher sein, wenn du nicht zu viel Mist schreibst, jeden Eintrag lese. Wenn du bei Twitter schreibst lese ich nur, wenn ich gerade Zeit habe und online bin, also in den Ferien eher weniger… Und natürlich kannst du auch an meinem digitalen Leben teilnehmen. Ich twittere und habe ein Blog das du auch abbonieren kannst.
  • Wenn du mich zu einer Veranstaltung einladen willst (und ich meine damit nicht wahllose Masseneinladungen zu irgendwelchen Marketingevents am anderen Ende Deutschlands), dann schreib mir ne Mail. Oder ruf mich an. Oder schreib mir ne Postkarte (das wäre echt cool)!
  • Wenn du mich mal sehen willst kannst du mich jetzt, wo ich mich nicht mehr auf Facebook rumtreibe und wieder mehr Zeit habe, besuchen. Ich "empfehle" dir dann auch gerne andere Freund_innen von mir, echt interessante Menschen!
  • Und wenn du wissen willst, gefällt mir etwas?, dann warte darauf, dass ich von mir selbst etwas dazu sage!
Also, du siehst, ich brauche kein Facebook und habe keinen Bock mehr auf nervige Nachrichten und zeitraubende Onlinespiele. Ich nutze meine Zeit lieber, um wirklich mit meinen Freund_innen in Kontakt zu bleiben und nicht nur das Gefühl zu haben ich täte es.

Einen lieben Gruß,
dein Ber

Montag, 18. Juli 2011

Wohin mit dem Kind

Ich habe vor kurzem eine Diskussion von Bekannten verfolgt die ich gerne in aller Ruhe hier weiter diskutiert hätte, es geht um das emotional hoch aufgeladene Thema Kindererziehung. Die eine Streitparte, ein idealistischer linker Mensch, hielt es für eine gute Idee, falls sich kein anderer Platz fände, das gemeinsame Kind in Lobeda, genauer Neulobeda, einer typischen Plattenbausiedlung am Stadtrand von Jena, in den Kindergarten zu geben. Die andere Partei hingegen war von der Idee wenig angetan und führte wie folgt aus:

  1. In Lobeda wohnt ein im Vergleich zur Innenstadt erhöhter Anteil an Menschen die als "sozial schwach" einzustufen sind.
  2. Daraus ergibt sich, dass der Anteil der Kinder in Lobedaer Kindergärten mit ebensolchen Eltern entsprechend hoch bzw. höher als in der Innenstadt ist.
  3. "Sozial schwach" ist oft die Ursache von psychischen Störungen und wesensähnlichen, nicht pathologischen, Verhaltensauffälligkeiten oder Verhaltensdefiziten (hohe Aggresivität, wenig Kommunikationsbereitschaft, "assozial"), sowohl bei den Eltern als auch bei den Kinder.
  4. Diese, den Kindergartenstandort Lobeda auszeichnende Besonderheit, stellt eine Gefahr für das Wohl des gemeinsamen Kindes dar.
Argumentationsstrang zwei:

  1. Die Prävalenz in Lobeda für "Armut" und "Drogen" ist im innerstädtischen Vergleich erhöht.
  2. Armut und Drogen gilt als Risikofaktor für die Intelligenz
  3. Das allgemeine Niveau der frühkindlichen Bildung im Kindergarten ist dadurch niedriger.
  4. Kinder die wegen fehlenden Risikofaktoren in der Intelligenzverteilungskurve in höhere Quantile einzuordnen müssen aufgrund des niedrigeren Bildungsniveaus mit Nachteilen rechnen.


Daraus folgt für die zweite Streitpartei, dass es "nicht in die Tüte kommt", dass Kind in Lobeda in den Kindergarten zu schicken.
Mein Bauchgefühl sagt mir, dass das eine vorurteilsbelastete, sozialfaschistische Denkweise der zweiten Partei ist die ich ablehne. Ich sehe kein Problem darin das Kind in einem als sozialem Brennpunkt bekannten Stadtteil in den Kindergarten zu schicken. Ich halte die Grundlegenden Annahmen für vage, mehr oder fundierter kann ich jedoch auch nicht argumentieren. Hat da jemand mal 2cent?

Montag, 4. Juli 2011

Freie Fahrt für seriöse Statistiken!

Gemeinsam mit ca. 18,4 Mio. anderen* lese ich monatlich die ADAC Motorwelt. Das sind 22,5% der Bevölkerung. Es lesen also mehr Leser_innen die Motowelt als die BILD (12,5 Mio.); Spiegel, Stern und Focus zusammen vertreiben nur wenig mehr Abos (Σ=19,1 Mio.). Noch einfacher: mehr Personen als 2009 CDU oder FDP gewählt haben, lesen die ADAC Motorwelt - es sind jedoch nicht zwangsläufig die selben, ich, zum Beispiel, lese nur die ADAC Motorwelt. Das Begleitheft zur Clubmitgliedschaft kann also getrost als Zeitschrift mit extrem großem Einflussbereich bezeichnet werden.

Offensichtlich ist die Motorwelt auto(fahr)freundlich eingestellt, und getreu des Mottos „freie Fahrt für freie Bürger” ist die Juli-2011-Ausgabe dem Thema Stau gewidmet. Um zu verdeutlichen wie sehr die freie Fahrt behindert wird, findet sich auf Seite 24 in der Mitte eine Grafik, welche die starke Zunahme der Staus (gemessen an der Gesamtlänge der Staus eines Jahres)  verdeutlichen soll.

Originalgrafik aus ADAC Motorwelt Juli 2011, S. 241,2
Leider dramatisiert die Grafik die Situation und verfehlt komplett ihren Zweck. Anstatt komplexe Sachverhalte einfacher erfaßbar zu machen vermittelt sie das Bild einer drohenden Katastrophe.

Die Zahlen der Grafik als Tabelle, die Balkenlängen sind handgemessen, die restlichen Zahlen direkt übernommen.
Jahr   Balkenlänge    Staulänge     Maßstab
       [cm]           [1.000 km]    [cm/100.000km]
2002   11             321           3,4
2006   14,1           359           3,9
2010   17,6           400           4,4


Unterschiedliche Maßstäbe in einem Diagramm sind jedoch höchst verwirrden, deuten auf die Inkompetenz bei der Gestaltung, eventuell sogar mutwilliges Lügen3 hin. Bei einheitlicher Verwendung des Maßstabes 4,4cm/100.000km, der dem Verhältnis von Balkenlänge zu Staulänge im Jahr 2010 entspricht, wäre der 2002er Balken genau so lang, wie jetzt der Balken für das Jahr 2006. Im Handumdrehen sähe die Situations sicher immer noch unangenehm aus, jedoch nicht nach einem Verkehrsinfakt noch vor dem Atomausstieg (ob das wünschenswert ist, soll anderswo diskutiert werden).

Des Rätsels Lösung ist ein unsichtbarer Offset, also eine Verschiebung des Nullpunkts, so dass ein Balken mit der Länge 0 cm nicht der Staulänge 0 km entspricht. Das Verhältnis zwischen den Abständen der Staukilometer der einzelnen Jahre und den Abständen der Balkenlängen ist nämlich, im Rahmen der Messgenauigkeit, konstant. Die drei Balken müssten also alle jeweils 16 cm länger sein - mehr als der 2006er Balken in der Originalgrafik. Um wieder von Staukilometern zu sprechen, rund 190.000 km Stau. Warum die ADAC Motorwelt so viel Stau unterschlägt und gleichzeitig vor 80.000 km Stau zusätzlich in den letzten 8 Jahren erblasst, wird wohl auf ewig ein Geheimnis bleiben.

Ich glaube, dass der ADAC versucht durch die absichtliche Verzerrung der Realität  seinen immensen Einfluß auf die Politik, weiter auszubauen. Die Situation wird einem riesigen Empfänger_innenkreis drastischer dargstellt als sie ist und der ADAC weiß, wer dir mal aus bei einer Panne geholfen hat, dem vertraust du auch. Mit der Impatinenz eines Kindes am Süßwarenstand vor der Kasse fordert der Club seit Jahren (Jahrzehnten?), mehr Geld in Ausbau und Erneuerung der Straßen zu stecken. Ein umfassenderes Verkehrskonzept wird dabei ebenso wenig diskutiert wie die Frage welcher Haushaltsposten für die neuen Autobahnen bluten soll.

* Alle Zahlen, so nicht anders gekennzeichnet. aus Wikipedia
1 Die Faltspuren bezeugen meine erstes Erstaunen beim Lesen des Artikels. Ich faltete die Seite, um sicherzugehen, dass ich keiner optischen Täuschung zum Opfer fiel, bevor ich mein Lineal herausholte.
2 Sollten Sie, sehr geehrte Damen und Herren der ADAC Motorwelt, ein Problem mit der Verwendung der Grafik auf meinem Blog haben, bitte ich um eine Mail anstelle einer kostenpflichtigen Abmahnung.
3 So lügt man mit Statistik - Walter Krämer

Montag, 27. Juni 2011

Umzug meiner Passwortdatenbank

Da ich meine Passwortdatenbank von Gorilla zu KeePassX migriere hab'sch dafür mal ein BASH-script geschrieben welches mir das von-Hand-kopieren abnimmt. Ich teile es wie üblich ohne, dass ich für verlorene, falsch kopierte oder sonstige Probleme mit den Passwörtern, der Welt oder sonstwas Verantwortung übernehmen werde: Konvertierungsskript

PS: Ich habe mir bei GitHub ein Repository für so Zeugs angelegt und nehme auch gerne Verbesserungsvorschläge/Push-Requests an.

Mittwoch, 18. Mai 2011

Aus Webdoku mach PDF-Dokument

Und weiter gehts völlig schamlos wieder mit einem Bash-Skript welches mir erlaubt von Websites (wie der von Doctrine, einem ORM für Symfony) mit Gebrauchsanleitungen drauf tolle PDF Dokumente zu erstellen. Zur Zeit allerdings nur wenn diese Website das Sphinx Markup bereitstellt (wie es eben jende Website tut).
Anleitung
$Programmname OPTIONS URI_der_Indexdatei
OPTIONS:
-r zum Neukonvertieren aber nicht Runterladen verwendet werden (hilfreich wenn kleine Änderungen am Sphinx-Code vorgenommen wurden)
-d wenn nach der erfolgreichen Konvertierung die heruntergeladenen Dateien nicht gelöscht werden sollen.

UPDATE: Jetzt auch auf GitHub zu finden

#!/bin/bash
echo checking prerequisits
sphinx=$(which "sphinx-build");
if [[ ! "$sphinx" ]]; then
    echo "Can't find »sphinx-build« binary!" >&2;
    exit 1;
fi
latex=$(which "pdflatex");
if [[ ! "$latex" ]]; then
    echo "Can't find »pdflatex« binary!" >&2;
    exit 2;
fi
wget=$(which "wget");
if [[ ! "$wget" ]]; then
    echo "Can't find »wget« binary!" >&2;
    exit 3;
fi
sed=$(which "sed");
if [[ ! "$sed" ]]; then
    echo "Can't find »sed« binary!" >&2;
    exit 4;
fi

echo analyzing index link
new="$1";
if [[ "$new" == "-r" ]]; then
    shift;
else
    new="";
fi;
del="$1";
if [[ "$del" == "-d" ]]; then
    shift;
else
    del="";
fi;
index="index"
download="$1";
path="$(dirname $download)";
suffix="$(basename $download)";
suffix=${suffix:${#index}};

if [[ ! "$2" ]]; then
    read -p "Name of project: " projname
else
    projname="$2";
fi
if [[ ! "$3" ]]; then
    read -p "Version of $projname: " projversion
else
    projversion="$3";
fi
echo creating config file
year=$(date +%Y);
wget -q --no-check-certificate https://github.com/fabpot/sphinx-php/raw/master/configurationblock.py
echo "import sys, os
sys.path.append(os.path.abspath('.'))
extensions = ['configurationblock']
master_doc = 'index'
project = u'$projname'
copyright = u'$year, $projname Team'
version = '$projversion'
release = '$projversion'
exclude_trees = ['_build']
pygments_style = 'sphinx'
latex_documents = [
('index', 'index.tex', u'$projname Documentation',
u'$projname Team', 'manual'),
]
latex_show_pagerefs = 1
latex_show_urls = 1
latex_papersize = {'papersize': 'a4paper'}

" > conf.py;

if [[ "$new" ]]; then
    echo "only reloading, no getting";
else
    echo "getting index file";
    index="index.rst";
    $wget -q -O $index "$1";

    dirs="";
    echo -n "getting all documentation files ";
    for name in $($sed -n $index -e '/^\.\. toctree/{:beg; n; s/^$//; T beg; :rep; n; s/^$//; t end; p; T rep; :end}'); do
    dir=$(dirname "$name");
    if [[ "$dir" ]]; then
       mkdir -p "$dir";
       dirs="$dirs $dir";
    fi;
    $wget -q -O "${name}.rst" "$path/$name$suffix";
    echo -n ".";
    done;
    echo "";
fi;

echo converting into latex document
index="index.tex";
$sphinx -b latex . . 1>/dev/null || exit 5;
tmpfile=$(tempfile);
cp $index $tmpfile;
cat $tmpfile | sed 's/fi/fi/' > $index;
rm $tmpfile;

echo -n "creating latex 1/2";
$latex -halt-on-error $index 1>/dev/null || exit 6;

echo -e "\b\b\b2/2";
$latex -halt-on-error $index 1>/dev/null || exit 7;
mv index.pdf "${projname}_${projversion}.pdf"

echo cleaning up
rm conf*.{py,pyc}
rm index.{aux,tex,log,out,toc}
rm Makefile
rm *.{cls,sty,idx}
rm python.ist
rm -rf .doctrees
if [[ ! "$del" ]]; then
    rm -rf$dirs
    rm index.rst
fi;

echo done

Freitag, 29. April 2011

Resize LUKS crypted partition without and sans LVM

Wer mal wissen will wie sowas von statten geht, hier meine Anleitung.


newSizeInByte=$2
newSizeInSectors=$[$newSizeInByte/512];
cryptDevice="$1"
cryptedDevice="/dev/mapper/resizeDevice"

echo "Opening the crypt partition"
cryptsetup luksOpen "$cryptDevice" "$cryptedDevice"

echo "Resizing cryptED partition";
resize2fs "$cryptedDevice" $newSizeInSectors;

echo "Resizing crypt partition";
cryptsetup --size $newSizeInSectors resize "$cryptedDevice"

offset=2056
echo "Guessing offset to $offset sectors";
cryptsetup status "$cryptedDevice" \| grep offset

echo "Closing crypt partition";
cryptsetup luksClose "$cryptedDevice"

echo "Resizing crypt containing partition";
cryptSizeInKiloByte=$[($newSizeInSectors+$offset)/2];
fdisk "$cryptDevice" < echo -e "p\nd\nn\np\n1\n\n${cryptSizeInKiloByte}K\np\nw"

Donnerstag, 28. April 2011

Schmecken lassen!

Heute möchte ich mich über eine Floskel aufregen. Die Floskel lautet schmecken lassen!" und hat sich in Jena ziemlich eingebürgert. Ich behaupte die Wurzel dieses Ausdrucks - zumindest in Jena - sind die meist unfreundlichen, Mitarbeiter der nichts desto trotz erfolgreichen Frittenbude Fritz Mitte in der Jenaer Wagnergasse*. Ich behaupte weiterhin, dass die Floskel dem Versuch entspringt die so genannte Berliner Schnauze zu imitieren.
Und in der Tat, auf den ersten Blick beim ersten Hören klingt "schmecken lassen!" wie die freundliche Aufforderung "lassen Sie es sich schmecken/lass es dir schmecken" oder sogar - zugegeben weit gegriffen - "Guten Appetit". Nur eben verkürzt durch die humorvolle Formulierung als dreist-frechen Befehl. Der Humor liegt ganz offensichtlich also im überraschend Unfreundlichen, obwohl alle wissen, es kann ja gar nicht unfreundlich gemeint sein, schließlich ist die Kundin ja Königin, einer sonst freundlichen Umgangsform.
Doch leider nutzt sich dieser Humor ab, nach dem zweiten, zehnten oder hundertsten Mal klingt "schmecken lassen!" eben nicht mehr wie eine Einladung mit Augenzwinkern, mit Humor verpackt à la, wir kennen uns, wir können so miteinander umgehen, sondern eher wie die unfreundliche Aufforderung sich nicht zu beschweren, getragen von der arroganten Annahme es sei gar nicht möglich etwas an dem Essen auszusetzen. Und was am Anfang unglaublich klingt - der Wirt oder die Servicekraft wäre unfreundlich - rückt durch die ständige Wiederholung durchaus in den Bereich des Möglichen.
Wir fassen zusammen: ich verstehe die ursprüngliche Intention der Floskel und kann sogar erklären warum sie (eigentlich) lustig ist. Dennoch wünsche ich mir, dass der inflationäre Gebrauch von jeder und jedem der mir Essen (oder Trinken) serviert eingestellt wird um die ursprünglich Intention, nämlich mit Freude, gut gelaunt und erfrischt durch einen Scherz zu Mahl zu schreiten, nicht zu zerstören.

* Ich mag zwar die Pommes bei Fritz Mitte ebenso wie die Currywurst, muss jedoch zugeben, dass mir das Essen dort inzwischen auf den Magen schlägt, es ist mir zu fettig. Und Abends/Nachts nach der Rose (oder wohl aufgrund meines gefühlten Alters eher ähnlichen Gelegenheiten) wenn ich also betrunken und mit ordentlichem Appetit derartige Bedenken beiseite wischend nach einer Alternative zu Döner suche hat Fritz Mitte leider schon lange geschlossen.

Donnerstag, 7. April 2011

Snipplets I

Sprache: Bash
Ziel: Auflisten der zuletzt geänderten PHP-Skript in einem Dateibaum mit Ausnahme gecachter vorberechneter Skripte im Ordner './cache/':

ls -l $(
  find -type f -iname '*.php' -printf '%C@ %p\n' | \
  sort -r | \
  grep -v ' ./cache/' | \
  head -5 | \
  cut -d ' ' -f '2-'
)

Auto-Taptetenwechsel

Eine der vielen Seiten die eine nette Sammlung von Hintergrundbildern anbieten habe ich mich spontan für http://interfacelift.com entschieden. Jeden Tag möchte ich auf meinen gnome2 Desktop ein neues Hintergrundbild sehen.
Hier das nötige Skript welches per crontab regelmäßig aufgerufen wird:

UPDATE: Jetzt auch im Repository zu finden


#!/bin/bash

# Ich speichere die letzte Aufrufnummer am Ende des Skripts
counter=$(tail -1 "$0");
# Mein default user agent für wget
user_agent="Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Ubuntu/10.10 Chromium/10.0.648.133 Chrome/10.0.648.133 Safari/534.16";
# gnome2 speichert den Desktophintergrund in diesem "registry" key
gconf_key="/desktop/gnome/background/picture_filename"

# da nicht jede Nummer einem Hintergrundbild entspricht wird
# solange gesucht bis eine Nummber gefunden wird die passt
while [[ ! "$page_name" ]]; do
  counter=$[$counter+1];
  base_url="http://interfacelift.com/wallpaper/details/"$counter"/"
  forward=$(wget -q -O - $base_url | sed -n '/URL=/{s%^.*\(http://.*\.html\).*$%\1%;p}');
  page_name=$(echo $forward | sed 's%^.*/\(.*\)\.html.*$%\1%;s/_//;');
done;

die beste 4:3 Auflösung raussuchen
resolution=$(wget -q -O - -U "$user_agent" $forward | sed -n '/4:3/{n;s%^.*>\([0-9]*x[0-9]*\)<.*$%\1%;p}');
page_id=$(printf %05d $counter);
image_url="http://interfacelift.com/wallpaper/7yz4ma1/"$page_id"_"$page_name"_"$resolution".jpg";

# Bild mit temporärem Dateinamen als Hintergrundbild setzen
tmp_filename=$(tempfile);
wget -q -U "$user_agent" -O $tmp_filename --referer=$forward $image_url;
gconftool-2 -s "$gconf_key" --type "string" $tmp_filename

# neuen Coutner im Skript setzen
tmp_filename=$(tempfile);
(head -n -2 "$0"; echo; echo $counter) > $tmp_filename;
cat $tmp_filename > "$0";
rm $tmp_filename;
exit 0;

#Counter

0

Freitag, 11. März 2011

Salami II

In meinem letzten Post habe ich über meine Freizeitaktivitäten berichtet. Heute möchte ich ein Update geben:Als erste Antwort auf meine Anfrage habe ich eine freundliche Mail bekommen die zwar nicht großartig war, mich jedoch mit der Auskunft befriedigte, dass ich in Zukunft meine ursprüngliche Produktform zur Wiederverwendung im Supermarkt meiner Wahl vorfinden werde:
Sehr geehrter Verwender,

wir freuen uns, Sie als Kunden des Hauses Wiesenhof betrachten zu dürfen. Gerne erhalten wir Meinungen unserer Kunden, damit wir uns ständig verbessern können. Wie Sie sicherlich bereits bemerkt haben, wurde die Darreichungsform wieder geändert. Wie gewohnt bieten wir die Salami als kleine Scheibe an.

Vielen Dank für Ihre Email.


Ein großzügige Aufmerksam-
keit aus der „in keinem Fall
eine Anerkenntnis […] gel-
tend gemachter Ansprüche
abgeleitet werden“ kann. 

Das wäre sicher vollkommen genug gewesen, was ich jedoch heute in der Post vorfand (bzw. bei meinem verdutzen Nachbarn, den ich mit der Vorgeschichte begeistern konnte, abholen durfte) hat mich selbst ein wenig (positiv) überrascht. Hier also ein Blogeintrag der mich sicher aus dem Verzeichnis der selbsternannten Thüringer Blogzentrale werfen würde, wäre ich dort jemals gelistet gewesen:
Ein freundliches Präsent zur Erinnerung an meinen Wurstverkäufer 
Neben einem äußerst freundlichen Anschreiben, das ausschnittsweise zu zitieren ich mich nicht traue in der Sorge darum möglicherweise den potentiellen Lieblingssatz einer Leserin oder eines Lesers damit zu unterschlagen, erhielt der Umschlag einen Kugelschreiber und als besonderes Präsent eine Trostwurst welche ich zum Beweis hier abgelichtet präsentiere.



































































Dienstag, 1. März 2011

Wenn ich sonst nichts zu tun habe…: Salami

Jetzt wo Karl Guttenberg als Verteidigungsminister zurückgetreten ist können wir uns dankenswerter Weise endlich wieder den wirklich wichtigen deutschen Themen zuwenden.
Wenn ich sonst nichts zu tun habe kommuniziere ich gerne mit Firmen die Produkte des täglichen Bedarfs oder Lebensmittel herstellen. Also Firmen mit denen ich tagtäglich zu tun habe, deren Willkür ich jedoch schutzlos ausgeliefert bin. Natürlich wäre es mir möglich auf andere Produkte anderer Firmen zurückzugreifen, dafür müsste ich jedoch mit meiner Gewohnheit brechen und andere Läden aufsuchen, mit an einen anderen Geschmack gewöhnen oder schlicht mehr Geld bezahlen. Deshalb gehe ich den Weg des für mich geringsten Widerstandes und melde mich bei den Firmen. Die wissen nämlich manchmal gar nicht was sie für einen Flurschaden anrichten:

An die Firma Wiesenhof Geflügel:
Sehr geehrte Damen und Herren,
unsere Familie kauft seit längerem aus Überzeugung die von Ihnen hergestellte Geflügelsalami Classico. Mit Bedauern mussten wir feststellen, dass seit wenigen Wochen die Scheibengröße geändert wurde. Anstelle zweier kleiner runder Scheiben sind in der Packung nun weniger, dafür größere, ovale Salamischeiben. Sicherlich ist dieser Schritt in Ihrem Hause wohlbegründet durchgeführt worden, es ist mir jedoch wichtig Sie darüber in Kenntnis zu setzen, dass in unserem Hause die neue Dareichungsform aufgrund der Form und Größe der örtlichen Bäckereiprodukte zu unnötigen Schnippelaktionen führt.
Ich würde mich freuen, wenn Sie in Zukunft bei ähnlichen Produkten diese Problematik in Ihre Überlegungen einbeziehen würden.

Mit freundlichen Grüßen

Mittwoch, 9. Februar 2011

Petersen und andere Namen


Da rankt sich im schönen Städtchen Jena alles um die Frage wie ein Platz der, in guter Tradition schon häufiger umbenannt wurde, (im NS hieß der Platz Adolf-Hitler-Platz, während der DDR Karl-Marx-Platz) nun weiter heißen soll. Der aktuelle Name "Petersen-Platz" bezieht sich auf den Jenaer Reformpädagogen Peter Petersen der, den Zeitgeist mitgestaltend, Anfang des 20. Jahrhunderts das "JenaPlan"-Schulkonzept schuf. Die heiße Diskussion dreht sich in Jena jedoch nicht um das Schulkonzept (die Jenaer Schule welche das Konzept verfolgt, hat sich wohlweißlich nicht nach dem Entwickler benannt) sondern um sein Verhalten während des NS. Die Einen behaupten, seine Verhalten wäre damals notwendig gewesen, die Anderen sehen in Petersen einen Vor-/Mitdenker des NS Staats. Als Parallele möchte ich dazu die Staufenbergstraße anführen die sich ebenso auf eine Person bezieht, die in der Zeit des NS weit entfernt davon war den faschistischen Staat zu kritisieren. Nur der Hitler, der gefiel dem Staufenberg nicht.

Klar ist ja, aus welchem Grund der Platz und die Straße so benannt wurden. Petersen soll damit für sein reformpädagogische Konzept und Staufenberg für seinen (missglückten) Anschlag geehrt werden. Ich bin mir sicher, beim Wühlen in der Lebensgeschichte vieler, nach denen Namen, Plätze, Gassen oder wer weiß was benannt wurden, finden sich dunkle Kapitel. Die Bennenung von Orten nach Personen um diese zu ehren wiedert mich jedoch im Gesamten an. Aufgrund eines asymetrischen Menschenbildes wird davon ausgegangen, dass bestimmte Personen herausragend ware, in ihrem Sein. Und andere eben nicht. Da wird nicht gefragt wie der nicht gewählte Stadtrat XY als Stadtrat gewesen wäre (vgl. Stadtrat Lehmann-Str in Jena Ost) oder ob Curt Unckel nicht nur deshalb ein für Jena wichtiger "Völkerkundler" wurde weil er es sich im Gegensatz zu der viel besser geeigneten Frau ABC leisten konnte nach Südamerika auszuwandern. Menschen die tolle Dinge tun haben sicher daran auch einen Eigenanteil. Aber Menschen verkacken es auch immer wieder. Und wie wichtig das "verkacken" gegenüber den "tollen Dingen" ist die sie tun, ist immer auch eine politische Frage. Eine Frau die Tolles tat, aber Ihre Kinder schlug wird inzwischen anders betrachtet als früher. Und Alan Turing wurde, nachdem er entscheidend zur Entschlüsselung deutscher Kriegsdepeschen beigetragen hatte, aufgrund seiner sexuellen Neigung verfolgt - inzwischen ehrt man Ihn. Ein anderes Beispiel ist Mutter Theresa (ich verweise mal nur auf den Wikieintrag). Ich votiere also für eine vollständige Abkehr von der Ehrung von Menschen für ihre tollen Taten, ich sehe das hanseatisch.

In Bezug auf den Petersen Platz in Jena halte ich jedoch die Umbenennung auch abseits meiner grundsätzlichen Ablehnung für angebracht. Selbst die JU hält die Beibehaltung für einen Widerspruch, fordert jedoch in einem Tweet vom 6. Februar 2011:

[..] "Keine Umbenennung des Petersenplatzes! Mit Widersprüchen leben lernen!"






Petersens rassistische (schriftliche) Äußerungen lassen sich nämlich nicht leugnen, und mit ihnen muss umgegangen werden. Wenn sich jetzt in Jena der ach-so antifaschistische Bürgermeister und der ihn dabei gerne unterstützende Stadtrat nicht für eine Umbenennung entscheiden können, dann unterstützen sie diejenigen, die zum Thema "böse, vergangene Nazizeit" möglichst gerne Richard Fish aus Ally McBeal zitieren würden: "Schwamm drüber!".


Donnerstag, 3. Februar 2011

Neue angeheftete Elemente haben keine Funktion (mehr) [Update]

Ohne Frage, jQuery ist eine JS Bibliothek die es in sich hat. Wie erinnere ich mich mit Grauen an den Aufwand in einem select-Element eine Option auszuwählen; dagegen mit jQuerys $select.val(auswahl) ein Kinderspiel.
Aber vor kurzem stolperte ich über ein Problem das mich doch ordentliche Zeit gekostet hat. Mein Ziel war an ein Element (legend) ein span-Element das mit einem click-Eventhandler ausgestattet wurde  anzuheften:
$('legend', fieldset).append(
    $('<span>').….click(tuWas)
);
Brav erschien das span-Element auch im fieldset, nur es rührte sich nicht. Nach langer Fehlersuche fand ich eine Formulierung mit der ich zum Ziel kam:
fieldset.children('legend').append(
    $('<span>').….click(tuWas)
);
Ganz klar, der Unterschied war das Zielelement und nicht das anzuheftende Element, doch wo nur war der Fehler? Nach dem beim konkreten Auftauchen keine Zeit für eine ordentliche Analyse mehr war bin ich heute Abend dem Problem auf den Grund gegangen. Im Prinzip ist auch alles ganz einfach:
  1. Aufgrund komplizierterer Verschachtelungen waren (fehlerhafterweise) bei der Ursprungsversion mehr als ein HTML-Element gespeichert: $('legend', fieldset).length > 1(!)
  2. jQuery kopiert das anzufügende Element, und heftet es an alle Objekte an, nur leider gehen dabei seine Eventhandler verloren, und zwar bei jedem angehefteten Element (und nicht wie naiv erwartet bei allen Kopien, aber nicht dem ersten (original) Objekt).
    Das passiert übrigens unabhängig davon wie ich das Objekt anhefte, also traditionell per Elternteil.append(Kind) oder in der Yoda-Notation mit Kind.appendTo(Elternteil).
  3. Selbst wenn ich das Kind-Element mit der .clone()-Methode klone bevor ich es anhefte, auch das geklonte Element hat keine Eventhandler mehr - unterscheidet sich also deutlich vom Original, so wie Dolly.
  4. Ein neuer Fall von RTFM: Die richtige verwendung der .clone()-Methode hätte geholfen; Eventhandler werden mit .clone(true) mitgeklont.
Es gibt also zwei saubere Lösungen, je nachdem welcher konkrete Fall vorliegt:
  1. Falls es möglich ist sicherzustellen, dass immer nur an ein Element andere Elemente mit Eventhandlern angeheftet werden ist das die einfachere Lösung.
  2. Wenn das nicht möglich ist so kann auf die .each() Notation zurückgegriffen werden:
    ELTERNELEMENT.each(function() {
        $(this).append(
            $(ELEMENT).....EVENTHANDLER(function(){tuWas;})
        )
    });
PS: Ich bin mir nicht sicher ob ich nicht bei jQuery einen Bugreport filen sollte...
PSS: Wen außer mir erinnert die jQuery/JS-im-Allgemeinen Schreibweise an den Kampf der Klammern bei LISP?