204 Tage zuvor: Update mit Updates

Scheinbar habe ich mir weit über ein halbes Jahr Zeit gelassen um das Update auf Textpattern 4.5.4 (dem CMS für dieses Blog) durchzuführen. Nicht, weil es so viel Arbeit ist; um genau zu sein hat es keine zehn Minuten gedauert. Eher weil es immer andere Dinge zu tun gab. Zeit raubend sind eher die Arbeiten an der Seite selbst, die im Laufe der Zeit liegen geblieben sind – aber auch die sind nunmehr abgearbeitet. Eine kleine Übersicht der Änderungen:

  • Kommentare erfordern keine Email-Adresse mehr
  • Die Suchfunktion liefert nun Ergebnisse
  • Tag-Suchen zeigen jetzt die gesamten Artikel an, nicht nur eine Ergebnisliste
  • Die Artikelnavigation am Ende der Seite wird wieder angezeigt
  • Sowohl Anderswo als auch Andere wurden repariert und aktualisiert (soweit möglich)

Außerdem wurden diverse Anpassungen am Design durchgeführt.

Wie immer gilt: Wer Fehler findet bitte melden! Ich werde dazu die kommenden Wochen die Anzeige von Fehlermeldungen aktiviert lassen. Als kleinen Ansporn habe ich insgesamt fünf Artikel freigeschaltet, die seit einiger Zeit auf Veröffentlichung gewartet haben.

Weiterlesen?

204 Tage zuvor: Sticky-Navigation in Prototype

Sticky-Navigationen sind ja irgendwie ein Trend: Die Navigationsleiste einer Webseite bleibt dabei am oberen Fensterrand kleben, wenn man nach unten scrollt. Ist ja auch eine praktische Sache, manchmal jedenfalls.

Die gängigen Implementierungen greifen jedoch auf jQuery zurück. Soweit nichts verwerfliches, ist es doch eine weit verbreitete Standard-Bibliothek. Für die Implementierung auf diesem Blog wollte ich jedoch die ohnehin bereits verwendete Bibliothek Prototype nutzen. Doch leider gab es dazu keine Lösung. Oder zumindest konnte ich keine finden. Für die nachfolgenden Leidensgenossen hier ein passende Lösung:

HTML:
<style>
#navigation.relative{
position:relative;
top:100px;
}
#navigation.fixed{
position:fixed;
top:0px;
}
</style>
<script type="text/javascript">
Event.observe(window, 'scroll', function() {
        if (document.viewport.getScrollOffsets()[1] > 100) {
                $('navigation').removeClassName('relative');
                $('navigation').addClassName('fixed');
        } else {
                $('navigation').removeClassName('fixed');
                $('navigation').addClassName('relative');
        }
});
</script>

214 Tage zuvor: Zigeuner-Soße

Dem geneigten Leser mag bekannt sein, dass mich hauptsächlich der Heißhunger auf geliebte, heimische Gerichte zum Kochen gebracht hat. Kochen soll in diesem Zusammenhang, so traurig es auch sein mag darauf hinzuweisen, auf das Zubereiten von Gerichten von Grund auf heißen. Keine Tüten-Soßen, keine Dosen-Ravioli und ganz sicher auch keine Mikrowellen-Currywurst.

Eine letzte Bastion, die es zu erklimmen galt, war die Zigeuner-Soße. Einige erste Versuche sind leider nicht sehr erfolgreich geendet (zumindest was meine geschmackliche Erinnerung betraf), daher hatte ich mich zuletzt nicht mehr sehr häufig daran versucht. Heute jedoch wurden die Bemühungen von Erfolg gekrönt. Damit es beim nächsten Mal nicht wieder im Desaster endet, hier das (ziemlich einfache) Rezept:

  • Zwei Zwiebeln, in Halbkreise geschnitten
  • Eine Knoblauch-Zehe
  • Zwei Paprika (rot & grün), in kleine Streifen geschnitten
  • Circa fünf pürierte Tomaten

Die Zwiebeln scharf anbraten. Sobald die Kanten der Zwiebeln braun werden Knoblauch und Paprika dazugeben und ebenfalls mit scharf anbraten. Mit dem Tomaten-Püree ablöschen und alles kurz aufkochen. Mit Salz, Pfeffer, Paprika, ein wenig Chilli und süßem Curry nach Belieben abschmecken. Anschließend circa 30 Minuten köcheln lassen.

Dazu passt natürlich nur eines: Schnitzel mit Pommes! Obwohl es auf einem Hotdog bestimmt auch ganz vorzüglich schmecken dürfte. Zigeuner-Hotdog?

217 Tage zuvor: Bubble-Sort in PHP

Da bin ich die Tage doch glatt dazu gekommen einige (Er-)Kenntnisse meines Algorithmus-Kurses vom letzten Jahr anzuwenden. Grund war die fehlende Funktion zur Sortierung eines Mehrdimensionalen Arrays basierend auf einem Sub-Key. Aber gut, so konnte ich mir wenigstens beweisen das ich das Konzept noch verstanden habe:

PHP:
// (Bubble)Sort
do{
        $swapped = false;
        for($i=0; $i<(count($calendar)-1); $i++){
                if($calendar[$i]["stamp"] &gt; $calendar[$i+1]["stamp"]){
                        $swap = $calendar[$i];
                        $calendar[$i] = $calendar[$i+1];
                        $calendar[$i+1] = $swap;
                        $swapped = true;
                }
        }
}while($swapped != false);

Mal schauen wann mir dann eine Anwendung für die Algorithmen zu Graphen in den Schoss fällt.

PS: Wieso gibt es in PHP eigentlich kein array_swap()?

219 Tage zuvor: The Gathering

Ich bin jetzt schon seit zwei Tagen auf der Suche nach einem ganz bestimmtes Lied. Gothic war es wohl. Circa im Jahre 2001 – gehört wohlgemerkt. Trotz mannigfaltigen Anfragen konnte ich es bis dato nicht entdecken.

Aber immerhin habe ich dabei viel Musik zu hören bekommen. Ein wirklicher Fund, wie ich finde, ist The Gathering’s if_then_else:

331 Tage zuvor: Stadt des Winds

Nun also Chicago. Ganze fünf Jahre hat es gedauert. Zumindest wurde eine Geschäftsreise mit freiem Wochenende daraus. Und das Frühstücksbuffet im Hotel erinnerte doch arg an alte Zeiten. Nicht des Essens wegen (grausam). Vielmehr kennt man fast jeden, der im Esssaal sitzt – alles Kollegen. Zuletzt passierte mir dies in einem ähnlich günstig (was das berufliche betrifft) gelegenen Hotel im Stuttgarter Raum.

Aber zurück zu Chicago, den sub-urbanen Teil in dem mein Hotel gelegen ist. Es erinnert einen doch arg Wohnsiedlungen die aussehen wie im Film: Lang-gezogene, grüne Vorgärten mit Auffahrten für die diversen Autos. Weiße Briefkästen am Straßenrand soweit die Strasse reicht. Chicago selbst hingegen ist anders. Anders als so vieles in diesem Land: Eine spürbar alte Stadt. Das wird einem nicht nur durch die tatsächlich nennenswert alte Geschichte auf, sondern man spürt es auch. Die überall vorhandenen Industriegebäude erinnern an die Zeiten der Industrialisierung, allerdings weniger dreckig als der Ruhrpott.

CHicago

Doch auch die klassischen Touristen-Attraktionen sind durchaus sehenswert: The Art Institute of Chicago (Zeit mitbringen! Auch wenn Google einem hier die Gemälde erklären kann), Grant Park , eine Boots-Tour über den Chicago-River oder auch einfach nur durch die Stadt zu spazieren. Chicago ist definitiv eine Reise wert! Und es gibt immer noch so viel zu sehen… Einzig mit der typischen Chicago-style Pizza konnte ich mich nicht so recht anfreunden. Sei’s drum.

395 Tage zuvor: DNSmasq und Active Directory

Eines meiner liebsten Tools für den Heimeinsatz ist DNSmasq. Es handelt sich dabei um einen kleinen, leicht einzurichtenden DNS und DHCP-Server – perfekt für das Heim-Netzwerk. Der grösste Vorteil allerdings ist seine enorme Flexibilität, denn dank zahlreicher Funktionen und Optionen kann man nahezu alle Netzwerk-Szenarien mit ihm realisieren. Vermutlich sind das auch die Gründe aus denen er bei Tomato, einer wirklich tollen Router-Software, zum Einsatz kommt.

Leicht einzurichten oder nicht, wenn man ausgefallene Netzwerk-Konfigurationen hat, wird es auch mit dem übersichtlichsten Programm kompliziert. Zum Beispiel wenn man das Netzwerk für Dual-Stack mit einer Active-Directory Domain im IPv6 Netzwerk konfigurieren möchte. Kompliziert, vielleicht. Aber mit folgenden Parametern durchaus machbar:

srv-host=_ldap._tcp.<Domain-Name>,<DC-Hostname>,389
server=/<Domain-Name>/<DC-IPv6>

Mit diesen Parametern sagt man DNSmasq welche Anfragen an einen Domain-Controller weiterzuleiten sind (und wo sich dieser befindet). Der DNS-Server der Domäne muss allerdings auch umgekehrt konfiguriert werden, zum Beispiel mit einem Forwarder zum DNSmasq-Host um allgemeine (oder nicht AD-integrierte) Anfragen auflösen zu können. Die Namensauflösung sollte damit einwandfrei funktionieren – sowohl für IPv4 als auch für IPv6 Endgeräte.

Ein hier nicht angesprochenes, da nicht mit der Namensauflösung zusammenhängendes, Problem ist die IPv6 Adress-Vergabe. Denn leider funktioniert die vermeintliche Selbstkonfiguration nicht ganz so Aufwands-arm wie angepriesen. Dazu vielleicht später mehr.

401 Tage zuvor: Wanted!

Wer kennt diesen Mann?

WANTED

Hinweise bitte an die Polizei Miami Beach oder hier in den Kommentaren.

413 Tage zuvor: Offiziell Projektmanager

Im Dezember stellt ich mir noch die Fragen mit welcher Zertifizierung ich mich wohl als nächstes beschäftigen werde. Hier die Antwort, in Form eines Zertifikats:

PMP Certification

Die PMP Zertifizierung des PMI ist eine international anerkannte (und gelobte) Auszeichnung. Das Motto Good Things Happen When You Get Involved with PMI kann ich übrigens auch nur unterstreichen (wobei es erschreckend ist wie schnell dies passiert). Mehr dazu später.

429 Tage zuvor: Versichert?

In Deutschland ist man verwöhnt. Um nicht zu sagen geradewegs verhätschelt. Vermutlich könnte man sogar dasselbe über jeden Sozialstaat auf dieser Erde behaupten. Zumindest auf die Krankenversicherungen bezogen. Wann hat man denn schon mal eine Abrechnung des Arztes gegenüber der eigenen Krankenversicherung gesehen? Ich wurde von derlei kapitalistischen Entartungen stets wohl behütet, zumindest wenn man von der berühmt-berüchtigten (und mittlerweile wieder eingestampften) Praxis-Pauschale einmal absieht.

Die USA sind auch in dieser Hinsicht dem Kapitalismus folgsam. Ärzte wollen Geld direkt vom Patienten, Versicherung hin oder her. Sicher, man wird brav gefragt ob meine eine Versicherung hat (und welche). Aber da fängt es dann auch schon an: Hat der Arzt einen Rahmenvertrag mit der eigenen Versicherung? Wenn nicht zahlt die Versicherung weniger (prozentual).

Und was genau zahlt sie eigentlich? Auch hier herrscht weithin Unklarheit. Zwar ruft der Arzt brav bei der Versicherung an um sich zu erkundigen – allerdings scheinbar eher um den Maximal-Betrag für eine bestimmte Behandlung zu erfahren, der dann anschließend auch prompt auf der Rechnung ausgewiesen wird. Aufwands-gerechte Abrechnungen sehen anders aus. Sicher, man darf (und soll, laut Versicherung) eine detailliert aufgeschlüsselte Abrechnung einfordern. Allerdings werden diese scheinbar eher umgekehrt kalkuliert: Wie viel muss ein Wattestäbchen kosten damit an Ende der Maximalbetrag herauskommt?

Weiterlesen?