Sonntag, 31. Januar 2010

Asia-Pfanne mit Ente und Nudeln

Mengen für 2 Personen:

1 Entenbrust
Chinesische Quick-Cooking-Nudeln (2 Nester)
1/2 rote Paprika
1/2 gelbe Paprika
5 Frühlingszwiebeln
1 Pepperonie (mehr oder weniger, je nach Geschmack)
Eine Hand voll Bambussprossen
Eine Hand voll Zuckerschoten
2 Zehen Knoblauch
20 g Ingwer
3 EL Semsam-Öl
2 EL Erdnuss-Öl
4 EL Soja-Sauce
1/8 Liter Gemüsebrühe
Sesam-Samen

Das Fett der Entenbrust rautenförmig einschneiden und die Ente mit Salz würzen. Den Knoblauch, die Pepperonie und den Ingwer in feine Würfel schneiden. Die Paprika in Streifen schneiden. Von den Frühlingszwiebeln den hellen Teil in Stücke schneiden.

Die chinesischen Nudeln in kochendes Wasser geben in mit etwas Salz al dente kochen (das geht nicht so flott, wie der Name verspricht - bei mir waren es ca. 10 Minuten).

Die Öle in einen Wok geben und auf mittlere Temperatur erhitzen. Die Entenbrust darin 10-15 Minten medium oder well done braten, danach in Streifen schneiden und beiseite stellen. Das Öl bis auf einen kleinen Rest wegschütten. Den Sesam-Samen für ein paar Minuten im Wok anrösten. Den Knoblauch, Ingwer und die Pepperonie dazu geben und etwas dünsten. Dann die Paprika, die Zuckerschoten und die Frühlingszwiebeln und die Sprossen dazu geben und 10-15 Minuten gar braten. Mit der Soja-Sauce und der Gemüsebrühe ablöschen, die Nudeln unterheben, die Entenbrust-Streifen dazu geben und alles zusammen noch einmal für wenige Minuten braten.

Asia-Pfanne mit Ente und Nudeln

Klein-Berlin

Hier kommt meine Liste von Bars, Kneipen und Restaurants, die einem im kleinen Karlsruhe das Gefühl vom großen Berlin vermitteln. Ein Besuch lohnt sich immer - adiós Ludwigsplatz, ihr öden Einkaufstempel und Shopping-Meilen!

kap in der Kapellenstraße KO:HI am WerderplatzCafé Rih neben der Staatlichen Kunstgalerie
Gold in der OststadtPalmera in der SüdstadtLa Rose in der Nähe vom EuropaplatzLöwenbräukeller in der SophienstraßeBento am WerderplatzCafé Palaver im GewerbehofEspresso Stazione in der Nähe vom MarktOktave in der Oststadt Radio Oriente in der HirschstraßeKino Schauburg in der SüdstadtBangkok Foodland am Mühlburger Tor

Freitag, 29. Januar 2010

Karlsruher Walk Score

Mit dem Walk Score Service kann man anhand einer Adresse erfahren, wie "lauffreundlich" die Umgebung dieses Ortes ist. Ich habe das mal für die verschiedenen Karlsruher Stadtteile zusammengestellt:

Zentrum: 75 out of 100
Südstadt: 71 out of 100
Südweststadt: 60 out of 100
Oststadt: 55 out of 100
Weststadt: 54 out of 100
Nordstadt: 37 out of 100

Meine Wohnung in der Ostadt lädt also mittelmäßig zum Laufen ein und liegt nur knapp vor der sibirischen Hauptstadt Novosibirsk ;-). Erschreckend: Die Nordstadt liegt hinter Orten wie Castrop-Rauxel. Weit abgeschlagen jedoch der Walk Score von Timbuktu.

Donnerstag, 28. Januar 2010

Software is hard - Firebug Tutorial

Software is hard ScreenshotSenSEO basierte bisher auf dem Code einer YSlow 1.x Version. An vielen Stellen habe ich bis heute nicht verstanden, was der Code von Yahoo! eigentlich tut und warum er so und nicht anders entwicklet wurde. Auf die Dauer wollte ich mich damit nicht abfinden. Dank dieses Tutorials zur Entwicklung von Firebug-Extensions im Blog von Jan "Honza" Odvarko war es mir möglich, den gesamten SenSEO-Code an einem Abend komplett zu überarbeiten. Das Ergebnis ist verständlicher, aufgeräumter und strukturierter. Ich erhoffe mir von dem Refactoring, dass die Extension dadurch in Zukunft stabiler und schneller läuft. Da ich nun von der ersten bis zur letzten Code-Zeile genau was, was diese tut, sollten auch eventuell nötige Updates auf neue Firebug-Versionen kein Problem mehr darstellen. Bevor ich die neue Version veröffentlichen kann, ist allerdings noch etwas Massage nötig.

Montag, 25. Januar 2010

Semantic Checker mit WAI-ARIA-Support

In der Version 0.7.0 unterstützt die Firefox-Extension Semantic Checker nun auch WAI-ARIA. Neben allen role-Attributen werden auch States und Properties (alle aria-* Attribute) ausgewertet. Damit sind alle geplanten Features für Semantic Checker implementiert. Mit der aktuellen Version habe ich einen Screenshot vom neuen Bestandskunden-Shop gemacht.

BK-Shop-Analyse mit Semantic Checker

Sonntag, 24. Januar 2010

don't move cause nobody wants to get hurt...

Bento-Tür

Bento

Samstag, 23. Januar 2010

Firefoxland

An der Live-Download-Statistik des Firefox 3.6 kann man sehr schön sehen, dass Deutschland Firefoxland ist.

Mittwoch, 20. Januar 2010

PNG-Transparenz für den IE6 ohne HTC

Ich nehme eine aktuelle Zusammenstellung von Performance-Problemen des IE6 im Zusammenspiel mit der HTC-Technologie zum Anlass, eine Alternative für PNG-Transparenz im IE6 ohne den Einsatz von HTC vorzustellen. Grund für die Entwicklung war die Konfrontation mit einigen der im Artikel genannten Probleme bei der Umsetzung eines unserer letzten Projekte.

Abgesehen vom Erzeugen des Namespace UNOUNO.ie kann diese Lösung nativ ohne zusätzliches JavaScript eingesetzt werden. Wie bei der ursprünglichen HTC-Lösung werden lediglich Elemente mit der Klasse alphapng mit PNG-Transparenz versehen. Der Code muss am Ende der Seite vor dem schließenden body-Tag eingebunden werden. Weiterhin sollte im Stylesheet über einen Conditional-Comment oder über den * html Selektor die Regel .alphapng a { z-index: 999; } angegeben werden, um die Funktion von Links sicherzustellen.

// init ie Namespace

UNOUNO.namespace('ie');

// place path to blank 1x1 pixel here

UNOUNO.ie.getPixel = function() {

// Pfad zu einem 1x1-Pixel transparenten Gif

return '/modules/frontend-elements/img/pnghack/transparent.gif';

};

// sets proprietary filter for alpha transparenz

UNOUNO.ie.setFilter = function(src) {

return 'progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,sizingMethod=crop,src="' + src + '")';

};

UNOUNO.ie.fixPng = function(element, width, height) {

// fix "normal" Images and Inputs

if (/IMG|INPUT/.test(element.nodeName)) {

if (element.src) {

if (/.*\.png([?].*)?$/i.test(element.src)) { // make sure it is png image

var source = element.src;

element.style.filter = UNOUNO.ie.setFilter(source);
element.src = UNOUNO.ie.getPixel();

if (width) {

element.style.width = width + 'px';

}

if (height) {

element.style.height = height + 'px';

}

var position = element.currentStyle.position;

if (position != 'absolute' && position != 'relative') {

// this may cause layout bugs

element.style.position = 'relative';

}

}

}

}

// fix elements with png as background

var bgSrc = element.currentStyle.backgroundImage || element.style.backgroundImage;

if ((bgSrc + element.src).indexOf(UNOUNO.ie.getPixel()) == -1) {

var bgPNG = bgSrc.match(/^url[("']+(.*\.png[^\)"']*)[\)"']+[^\)]*$/i);

if (bgPNG) {

var source = bgPNG[1];

element.style.backgroundImage = 'url("' + UNOUNO.ie.getPixel() + '")';

element.style.filter = UNOUNO.ie.setFilter(source);

}

}

};

UNOUNO.ie.getElementsByClassName = function(clsName) {

var retVal = new Array();
var elements = document.getElementsByTagName("*");

for (var i = 0;i < elements.length;i++){

if (elements[i].className.indexOf(" ") >= 0){

var classes = elements[i].className.split(" ");

for (var j = 0;j < classes.length;j++){

if (classes[j] == clsName)

retVal.push(elements[i]);

}

}

else if (elements[i].className == clsName) {

retVal.push(elements[i]);

}

}

return retVal;

}

UNOUNO.ie.initFixPng = function(element) {

var pngElements = UNOUNO.ie.getElementsByClassName('alphapng');

for (var i = 0; i < pngElements.length; i++) {

UNOUNO.ie.fixPng(pngElements[i]);

}

};

UNOUNO.ie.initFixPng();

Es gibt für diese Lösung Einschränkungen. So werden keine sich wiederholenden (gekachelten) oder in irgend einer Weise positionierten Hintergrundbilder berücksichtig. Die neuste Version des TwinHelix IE PNG Fix verspricht dafür zwar eine Lösung, allerdings verrät ein Blick in den (im Alpha-Stadium befindlichen) Quellcode, das da jede Menge Voodoo passiert, dessen Konsequenzen sich für komplexe Layout-Szenarien, mal ganz abgesehen von den geschilderten Problemen mit HTC, nur sehr schwer abschätzen lassen.

Blog abonnieren

RSS 2.0 Feed

Suche

Kalender

Zurück Januar '10 Vorwärts
Mo Di Mi Do Fr Sa So
        1 2 3
4 5 7 8 9 10
11 12 13 14 15 16 17
18 21 22
26 27 30

Verwaltung des Blogs

Blogroll

Projects/Web

vCard

  • Nico Steiner
  • www.nicosteiner.de
  • Karlsruhe/Germany
  • Senior Frontend-Developer at 1&1