Archiv 10.11.2010 - 22.11.2010

Aus der Abteilung "pimp my Vim": UltimateVimPythonSetup. Ich bin ja durchaus Vim Fan, und einige der Tips da drin klingen ganz interessant. Allerdings geht mir manches dann auch ein bischen zu weit, mein Grund Vim zu benutzen ist ja gerade dass ich keine IDE will, sondern einen Editor der hauptsächlich das macht - Source editieren. Aber für den einen oder andren da draussen vielleicht trotzdem (oder gerade) interessant.

"Eine Bombe im Flugzeug Richtung Deutschland? Zugegeben, ich bin nur Wissenschaftsjournalist, befasse mich mit physikalischen Phänomenen, doch offen gesagt glaube ich nicht an diese Nachricht. Das passt doch alles zu gut. Bei mir im Hotel die Innenminister, und ausgerechnet jetzt wird verkündet, dass Deutschland demnächst zum Ziel eines Terroranschlags wird. Das riecht nach Inszenierung."

via Mit de Maizière am Frühstückstisch: Der Terror ist da, das Müsli ist alle - taz.de.

How I build-in Tumblr in my Drupal install ist schon sehr nah an dem dran was ich mit Tumblr auf meiner Homepage machen will. Jetzt muss ich nur noch ein minimales Widget schreiben und den Code da reinfummeln und statt auf die regulären Postings nur auf die Fotos gehen. und ich hab wieder Tumblr-Fotos auf der Homepage.

Update: wer rechts guckt kann die Tumblr Fotos wieder sehen. Also auf der Homepage. Klappt ganz gut und frisst keine Zeit mehr. Irgendwann pack ich das Plugin das ich da gebaut habe mal zusammen, im Moment ist es noch etwas roh.

Sonntagslektüre: Google Streetview - gelinkt, weil mir das ganze pro-Streetview Gelaber und die "wer verpixelt hat das Netz nicht verstanden" Fraktion gehörig auf den Senkel geht. Das Netz ist ein Medium der ganzen Gesellschaft und nicht allein der Spielplatz einiger Technikbegeisterter. Und wer seine Netzfreiheit an die Erlaubnis zur unbeschränkten Datensammlung für einen Grosskonzern bindet, hat ein saftiges Verständnisdefizit. Besonders wenn der einzige Betriebszweck dieses Konzerns in der systematischen Auswertung dieser Datenberge zwecks Optimierung von Werbung ist..

API | Tumblr - weil ich vielleicht ja doch noch etwas mehr damit machen will als im vorigen PHP Beispiel benutzt wurde.

Display photos from Tumblr (using JSON method) ist PHP, aber das sollte ich eigentlich leicht auf JavaScript umbauen können und dann nur client-seitig laufen lassen.

hyphenator könnte ich mir mal angucken, denn dann läuft die Silbentrennung einfach mit JavaScript auf dem Browser. Ist ja sowieso nur interessant für die Webseiten selber, Feed-Reader müssen eh selber rendern.

Update: jau, sieht gut aus. Jetzt kann ich mir meine Homepage wieder angucken, ohne Pickel zu bekommen, und die Integration war mit dem custom package builder von denen sehr simpel - ein paar Checkboxen durchgehen, eine optimierte Download-Version der Library bauen und diese im Head des Blogs einbinden. Als Klasse hab ich einfach entry-content genommen, dadurch werden alle Beiträge (und nur die) mit Silbentrennung versorgt. Und da Client-seitig, betrifft es weder den Feed noch irgendwelche anderen internen Wege.

Performancefresser ...

... sollte man natürlich nicht unbedingt betreiben. Das Tumblr Widget braucht durch seinen synchronen Zugriff auf Tumblr locker mal eben 300ms und das Typografie Plugin braucht nochmal 300ms. Autsch. Ok, sieht mein Text eben typografisch müllig aus, mir doch egal.

Beim Cache bin ich im Moment bei xcache angelangt - mal gucken ob der ähnlich wie apc komische Meldungen produziert. Ich hab ja Konflikte zwischen apc und WP Super Cache im Verdacht für meine Probleme, denn immer wenn das Problem auftrat, hatte ich auch diese seltsamen GC Meldungen von apc im Log. Und keinerlei Meldungen von PHP, was darauf hindeutet dass nix vom PHP ausgeführt wurde (was auch den leeren Output erklärt).

Es gibt in WordPress Unterstützung für den Objekt-Cache von xcache. Ganz toll, kann man per kleinem Plugin aktivieren. Ich spar mir den Link, denn ohne dieses Modul ist das Blog schneller (und 27 vs 29 DB Queries ist jetzt auch nicht so wahnsinnig erfolgreiches agieren des Objekt Caches). Mit aktiviertem Objekt-Cache war das Blog gleich wieder in der 700ms+ Zone - ganz ohne Zeitfresserplugins.

Für Tumblr werde ich mir jetzt also doch eine JavaScript-Ajax-Lösung bauen, die mittels Tumblr API meine Bilder raussucht und in das HTML der Seite schiebt. Ist eh nur für den Look und dann wird auch nicht versehentlich ein Tumblr-Connect-Problem gecached.

Aber um das doch recht erstaunlich gut funktionierende Silbentrennen aus dem Typografie-Plugin ist es irgendwie doch schade. Man kann wohl nicht alles haben. Render-Zeiten im Bereich von oberhalb ner halben Sekunde find ich jedenfalls albern. Vielleicht änder ich meine Meinung aber nochmal, wenn ich mal wieder länger auf mein Blog gestarrt habe.

WordPress › Support » WP Super Cache sometimes ignites a blank Home Page! Need to restart Apache - klingt genau wie mein Problem, ist aber schon ein Jahr alt. Scheint irgendeine Kombination von vielen Teilen zu sein. Im Moment hab ich erstmal APC ausgeschaltet, denn der produziert auch seltsame Meldungen im Error Log, für die keine richtig befriedigenden Kommentare im Netz zu f inden sind. Irgendwie ist der ganze PHP Kram echt voll scheiße. Viel zu viele Teile die von viel zu vielen verschiedenen Stellen kommen und alle irgendwie aber eben doch nicht ganz zusammenarbeiten. Prinzipiell läuft ja alles, aber sobald man die Performanceprobleme in den Griff kriegen will, gibts lauter seltsame und unerklärliche Effekte. Alles nur wilde Hacks.

Ist die NATO-Strategie das Problem oder die Lösung? Eine Betrachtung der NATO, ihrer Zusammensetzung und Position in der Welt und eine Beurteilung ihres Positionspapieres und ihrer Strategie - besonders unter Berücksichtung der Dominanz der USA in diesem Bündnis. Erstaunlich kritisch für einen Beitrag aus öffentlich-rechtlicher Ecke.

Logisim hätte mir in meiner Jugend grössere Mengen DM sparen können, die ich auf TTL-Chips verbraten habe (nachdem ich vorher und zwischendurch selbige TTL-Chips verbraten hatte).

Pure CSS GUI icons (experimental) sind in hervorragendes Beispiel dafür, was man nicht mit CSS machen sollte. Malstunden mit Boxmodellen ist dann doch eher unproduktiv. Aber irgendwie schon faszinierend, was manche Leute mit ihrer Zeit so anfangen ...

Have we found the universe that existed before the Big Bang?. Erst dachte ich noch, da kommt wieder so ein Randgruppenphysiker mit verrückten Ideen oder unbewiesenen Behauptungen. Und dann les ich Roger Penrose in dem Artikel. Ooops.

BBC - Earth News - Attack of the rats.Warum in Indien alle 50 Jahre gigantische Horden von Ratten die Ernte vernichten. Alles nur wegen der biologischen Uhr von Bambus. Faszinierend.

[WordPress › Support » [[Plugin: WP Super Cache]] Blank Pages - 500 Errror - in Dashboard (sometimes the site too)](http://wordpress.org/support/topic/plugin-wp-super-cache-blank-pages-500-errror-in-dashboard-sometimes-the-site-too). Beschreibt mein momentanes Problem das ich seit SuperCache habe - eventuell ist das auch meine Lösung. Ansonsten fliegt SuperCache eben wieder raus, denn davor liefs eigentlich gut, nur langsam. Wenns hier zwischendurch also mal dunkel (äh, weiß) ist, dann liegts vieleicht an meinem Problem und ich analysiere noch.

Long Live the Web: Scientific American von Tim Berners-Lee. Warum das Netz so wichtig für uns ist und warum und wogegen wir es schützen müssen. Denn immer mehr Interessengruppen versuchen die Offenheit im Netz für ihre Zwecke zu verringern, vorgeblich oft um Benutzer zu schützen oder Rechte zu schützen oder andere toll und positiv klingende Gründe - aber dahinter steckt einfach nur der Griff nach Macht die man will oder die man fürchtet zu verlieren.

pyfpdf liefert PDF Generierung ohne Abhängigkeiten von anderen Paketen. Allerdings steht da vorne ein "ported from PHP" dran. Aber wen das nicht abschreckt und wer einfache Ausgaben in PDF produzieren will, ist damit vielleicht garnicht so schlecht bedient.

Processing.js v1.0 Released und es ist immer noch ein echt nettes Spielzeug. Jetzt ist es von den Features auch fast gleichauf mit dem großen Processing.

Is My Blog Working? Diese Frage stellt man sich ja doch des öfteren. Und nicht immer ist die Antwort einfach durch draufgucken erledigt - zum Beispiel wie siehts mit dem Caching aus? Dieses Tool liefert schon einige Informationen, noch mehr gibt es dann bei RedBot und Cacheability. Speziell bei Cache-Informationen sind die letzten beiden auch besser als der erste Link.

Bottle

Sehr netter Stopmotion Film mit zwei Haufen Dreck.

Bottle from Kirsten Lepore on Vimeo.

Owl Content in neuem Zuhause

Der Owl Content läuft jetzt auch auf der neuen Kiste. War nicht mal sonderlich kompliziert, das haarigste war ein doofer Bug im Feedparser der eingesetzt wird (eine schrecklich alte Version, kann durchaus sein, dass neuere das schon längst behoben haben) und eine Inkompatibilität der PHP gettext Implementation, die von Wordpress 1.5 noch benutzt wird. Ansonsten hats eigentlich ziemlich sofort alles getan, was benötigt wird. Kann sein, dass einige Hits noch auf das alte System laufen, bis sich die Nameserver-Änderungen draußen rumgesprochen haben, aber das sollte sich in den nächsten Tagen rauswachsen. Und so ganz nebenbei hat die Eule jetzt deutlich kräftigere Flügel. Für die nächsten 8000 Beiträge sollte es reichen.

Mit Sicherheit: Rufe nach schärferen Gesetzen | tagesschau.de - schon absurd, dass sich Bundesminister von Union ind FDP klar gegen Landesminister und ihr populistisches Säbelrasseln stellen. Noch absurder, dass sogar SPD Minister nach etwas schreien das vom Bundesverfassungsgericht abgelehnt wurde. Und als Grundlage für das alles nur Behauptungen ohne Beleg und ohne Überprüfbarkeit. Damit haben die Terroristen schon gewonnen und diese Prolethiker maxhen sich zu Erfüllungsgehilfen. Können wir die jetzt bitte vom Verfassungsschutz überwachen lassen? Ihre verfassungsfeindliche Haltung ist doch klar belegt ...

WP Super Cache ist zwingend zu empfehlen wenn man so wie ich einige Plugins benutzt (und diese womöglich so wie das Tumblr Plugin auf externe Dienste gehen). Ok, die Gefahr besteht natürlich, dass mal ein kaputter Status von Tumblr in der Sidebar gecached wird, aber das erledigt sich ja eh nach einer Weile wieder. Aber die Laufzeit eines voll geladenen Wordpress ist ja doch etwas schlafmützig.

offline_messages für OpenSim hier in einer PHP Version. Sollte ich mir mal angucken, eigentlich müsste ich mir daraus was in Python bauen können, das ich dann benutze.

Das Plugin wp-Typography hab ich jetzt mal im Test auf meinem Blog aktiviert. Ich hab zwar bisher kaum richtig gute Trennalgorithmen für Deutsch gesehen, aber vielleicht funktioniert dieses hier trotzdem einigermaßen. Allein schon zur Vermeidung von Witwen und Waisen macht es sicher Sinn. Und im ersten Test sieht der Text schon sehr angenehm aus.

Zahlenmagie beim Renteneintrittsalter: Trick 67 - taz.de - weil dahinter eben einfach die Absicht liegt, die Renten zu kürzen. Keiner der Prolethiker in Berlin glaubt wirklich, Arbeiter könnten bis 67 durchhalten. Das war nie das Ziel, selbst nicht bei Münte und den anderen Lügnern der SPD.

Umzugsstatus

So langsam wird es was - das statische Absaugen meines alten Blogs für das Archiv hat mehrere Tage gebraucht, aber jetzt habe ich einen kompletten Abzug erstellt, Nameserver umgebogen und in den nächsten Tagen sollten dann alle auf dem statischen Teil landen. Einen Teil der Links leite ich direkt um - zum Beispiel den Hauptfeed und die Startseite selber. Eventuell werde ich nach und nach auch andere Sachen auf das neue Blog umleiten wenn ich merke das es sich lohnt.

Die Meta-Eule ist immer noch auf dem alten Server, ich fürchte an die muss ich dann wohl als nächstes mal ran und gucken ob die auf einem neuen System direkt zum Fliegen zu kriegen ist. Und dann sind da noch die diversen Bildergalerien meiner Untermieter - immerhin hab ich da schon alles für vorbereitet, der Rest ist hauptsächlich rüberkopieren der ganzen Dateien und dann ein bischen Layoutanpassung.

Sieht so aus als ob ich in absehbarer Zeit (vielleicht sogar bis Ende des Monats?) die alte Kiste abschalten kann. Die Kiste hat mir ja lange Jahre gute Dienste geleistet, aber mitlerweile ist sie dann doch ein bischen veraltet. Aber ich werde mir die letzten Backups irgendwo zur Seite legen, denn wie ich mich kenne fällt mir da kurz nach dem Abschalten ein, dass ich da ja noch irgendwas irgendwo gespeichert habe was ich dringend brauche ...

Der Front-end Editor ist ein sehr sinnvolles Plugin für Wordpress. Man kann direkt in der Front mit einem Doppelklick auf viele Elemente diese sofort bearbeiten. Da ich üblicherweise Tippfehler und Formatierungsfehler erst sehe, wenn ich mir mein Blog mal selber vorne angucke, kann ich so direkt dort ohne Trip durch den Admin editieren. Geht deutlich schneller für mich.

Die Icon Search Engine kennt vermutlich schon jeder ausser mir, aber da ich gerade mal wieder ein Icon brauchte, wars recht praktisch. Ich finds ja schon immer sehr seltsam, wenn auf Seiten mit angeblich freien Icons dann diese plötzlich geld kosten sollen, da ist eine Site mit klarer Angabe der Lizenz und dokumentierter Herkunft durchaus nett.

F# in MonoDevelop and cross-platform web sites & screencasts | Blog | TomasP.Net hat eine Menge Informationen über F# unter Mono auf Linux und OSX.

JQTreeTable benutzt zwar nicht DataTables, aber ist trotzdem ganz interessant, denn es liefert eine Finder-ähnlichen Tabellendarstellung für hierarchische Daten.

jQuery lightBox plugin ist sehr nett. Es benutzt kein Prototype und kein Scriptaculous, sondern einfach nur jQuery - was sehr hilfreich ist, wenn eine Site sowieso schon jQuery benutzt. Und mit dem jQuery LightBox Plugin für Wordpress kann man es sehr einfach für Bilderanzeigen in seinem eigenen Blog benutzen.

Twenty Ten Weaver ist ein flexibleres Child Theme für Twenty Ten. Allerdigns überlädt es einige der PHP-Files von Twenty Ten, daher ist man davon abhängig ob der Entwickler es weiter pflegt. Aber dafür kann es eine Menge Sachen selber anpassen, die ich bei mir derzeit mit meinem eigenen Theme gemacht habe.

Dynamic Widgets | Qurl ist ein sehr praktisches Wordpress Plugin welches dynamische Regeln für Widgets ermöglicht. Damit können dann zum Beispiel die "lezten Artikel" auf der Startseite unterdrückt werden (weil die da eh alle stehen und das doppelt gemoppelt wäre) und z.B. meine Tumblr Fotos auf Galerie-Seiten ebenfalls unterdrückt werden (damit die nicht vom eigentlichen Bilderinhalt ablenken - und z.B. bei Schwarzweiß-Fotos das ganze nicht plötzlich nur wegen Tumblr bunt wird).

kbhomes's TextCaptchaBreaker zeigt warum Text-Captchas im Prinzip Banane sind. Sie sind oftmals zu leicht zu knacken und das vor allem automatisiert - und dieser Code zeigt eine sehr nette Implementierung davon. Mein altes Blog hat ja noch Text Captchas und kommt damit ganz gut aus, aber das liegt wohl eher an dem geringen Traffic - in den letzten Wochen sind da auch vermehrt Spam-Kommentare gelandet und ich bin mir da auch nicht so sicher, ob das nicht von Automaten platziert wurde.

Word This - Google Chrome-Erweiterungsgalerie ist sehr hilfreich, da Chrome ja so dämlich konstruiert ist, dass Bookmarklets im gleichen Security-Context wie die aktuelle Website laufen. Wodurch man einer Website JavaScript erlauben muss, wenn man ein Bookmarklet wie z.B. "Press This" von Wordpress benutzen will. Mit dieser Extension wandert das Bloggen in ein eigenes Icon und raus aus dem Bookmarkbar.

JLOUIS Ramblings: On Erlang, State and Crashes erklärt gut was es mit dem "in case of error, crash" Mantra von Erlang so wirklich auf sich hat - nämlich den Aufbau einer Anwendung als Schichten von Supervisor Prozessen und Error Handlern. Wesentlich daran ist eben die Struktur der Anwendung - einfach nur crashen reicht nicht, die Architektur muss auch darauf vorbereitet sein.

atomo - sehr interessante Sprache, sehr flexibel und kompakt. Bin drüber gestolpert weil jemand dazu einen Mongrel2 Adapter gebaut hat. Interessant an atomo ist für mich vor allem, dass es mal wieder eine neue Sprache mit Prototyping basierender Objektorientierung ist. Eine Sache die viel zu selten ausprobiert wird (andere Sprachen aus dem Bereich sind Slate, Self, Io, Newtonscript und JavaScript).

Interessant ebenfalls: atomo ist in Haskell eingebettet und bietet daher eine dynamische Scripting-Sprache für Haskell-Umgebungen und natürlich eine gute Integration in die Haskell Welt. Sowas gabs schon mal mit einem der ersten Perl6 Prototypen, der ja auch in Haskell gebaut wurden (Pugs).

WordPress › WPtouch « WordPress Plugins - keine Ahnung ob ich sowas will. Könnte ja ganz interessant sein, hab ja schliesslich selber so ein TouchGerät. Andererseits, der Mobile Safari zeigt auch gut normale Websites an. Ausserdem gibt es noch ein Problem: der nginx Cache weiss nix davon und würde so potentiell die falschen Seiten cachen. Jedenfalls bin ich mir nicht sicher, dass diese Mobil-Erweiterungen sich so gut mit Caches vertragen.

Unionsminister: Sitzblockierer sollen Polizei-Einsatz bezahlen | tagesschau.de - womit man auch gleich noch die lästigen Demonstranten in den Griff kriegt, denn hey, ist doch simpel: Demonstranten generell oder auch Streikende verursachen Kosten und dann kann man die auch gleich von denen holen und dann werden sich die Leute schon überlegen, ob sie auf die Straße gehen!

Der Demokratieabbau ging schon immer ganz prima über das Portemonai.

Herbst

Einfach nur Bilder aus dem Herbst. Diese sind noch aus Papenburg, also schon ein paar Wochen alt. Mittlerweile sieht es doch etwas trüber aus.

Introducing Thirty Ten, my guide to creating a Twenty Ten Child Theme | aaron.jorb.inaaron.jorb.in. Muss ich mir mal genauer angucken, damit ich meine Site etwas mehr anpassen kann ohne allen Kram selber machen zu müssen. Update: klappt. Mein derzeitiges Layout ist entsprechend als Child-Theme für Twenty Ten aufgebaut.

WordPress › WordPress Nginx proxy cache integrator « WordPress Plugins. Benutze ich auf meiner Kiste für die Beschleunigung meines Wordpress. Wordpress selber läuft in einer KVM mit Standard-Stack und davor ein Nginx als Cache. Obs hält?

Bitrot reloaded

Irgendwann muss man ja mal loslegen und wieder neu aufsetzen. Das hier ist der Versuch mal wieder mit Wordpress zu arbeiten. Nachdem mir meine eigene Software einfach durch jahrelanges nicht-updaten von Voraussetzungen unter dem Blog weggerottet ist, gibts diesmal eine Standardsoftware von der Stange. Schaun mer mal.

rfc1437 | Content-type: matter-transport/sentient-life-form - Tendenzen stark in Richtung "wegschmeissen mit Archiv und neu anfangen" mit leichten Optionen zu "wegschmeissen, statisches Archiv und vielleicht einen Teil in die neue Plattform schaufeln wenn ich Zeit finde". Der Link zeigt wo ich im Moment rumspiele. Wordpress mit ein paar kleinen Plugins und einer nginx caching Front.

Bitrot

Hat mich jetzt auch voll erwischt. Meine alte Blog-Software wird wohl nicht unverändert überleben können. Alte Python-Version (2.3), altes (sehr altes) Django (0.91), alter PsycoPG Treiber (1.0), altes PostgreSQL (7.4) und das alles auf einer alten Debian (eine wilde Mischung verschiedenster Versionen mit Backports und eigenen Programmen und mehreren gescheiterten Upgrade-Versuchen). Argh.

Tja, ich schwanke noch zwischen "umprogrammieren" und "wegschmeißen". Letzteres hätte den Charme, dass ich den ganzen Müll nicht mehr mit mir rumschleppe. Und ehrlich, so viel interessantes hat sich auf meinem Blog eh nie abgespielt. Vielleicht kann ich ja vorher einen wget Mirror anlegen und mir den ganzen Kram irgendwo statisch hinkippen, so als Archiv.

Neuschreiben hat natürlich auch eine Menge Charme, aber die tausenden von alten Einträgen (über 4000 Artikel und über 4000 Links, dazu fast 200 Bilder) aus 8 Jahren (erster Eintrag am 3.11.2002) bloggen zu konvertieren klingt nicht wie Spaß. Und vermutlich sind tausende der Links eh völlig veraltet und hinfällig.

Keine Ahnung was ich mache, vielleicht versuch ich erstmal die Metaeule auf die neue Kiste zu bringen, da hab ich ja "nur" das Problem, dass es PHP4 nicht mehr im Ubuntu Repository für die 10.04 gibt und ich daher die Eule zwangsweise auf PHP5 bringen muss (und das mit Code der auf Wordpress 1.5 aufbaut - ich muss wirklich bekloppt sein).

Oder ich versuch die Installation einer gammelalten Debian mit den damals eingesetzten Paketen - die Kiste läuft eh nicht in der Front, sondern hinter anderen Maschinen, das Hack-Risiko ist an der Stelle ja dann doch eher gering. Die Metaeule hat natürlich auch ein paar Tausend Beiträge im Archiv (nur 8291, ist ja fast nix), aber wenn ich die alte Software weiter am Laufen halten kann (Security-Patches sind da einige im Laufe der Zeit reingelaufen, von daher kann die eigentlich ruhig weiter vor sich hin wurschteln), bräuchte ich die ja nicht zwingend anpacken.

Irgendwie war das mit dem Internet auch so eine richtig blöde Idee ...

Fragen und Antworten zur Gesundheitsreform | tagesschau.de - ich finds schon erstaunlich, das die Prolethiker in Berlin sich noch "harte Verhandlungen" liefern müssen um zu beschliessen wie stark die Beitragszahler abgezockt werden dürfen. Die Tatsache, dass bei den Verhandlungen nicht mehr über Einsparungen bei Arzthonoraren, Krankenhauskosten und Medikamentenpreisen diskutiert wird hingegen ist nicht weiter erstaunlich. Das vorgetäuschte Säbelrasseln vom Bundeskrankheitsverwalter ist da ja eh nur Showeinlage für die Medien.

Kilim - beim Stöbern in den Orc Dokumentationen drüber gestolpert, eine microthread-Lib für Java.