Monthly Archives: May 2010

Favoriten beim Eurovision Song Contest

Durch ihren Auftritt bei „Schlag den Raab“ rechnete ich bei Lenas Auftritt beim Eurovision Song Contest schon mit dem schlimmsten, sie konnte da allerdings mit einem makellosen Auftritt wieder sprichwörtlich punkten. Und wie sie gepunktet hat; 246 Punkte und damit ein meilenweiter Abstand zu den Folgeplatzierten. Somit hat es also 28 Jahre gedauert, bis Deutschland es wieder schaffen konnte, die musikalische Nummer 1 in Europa zu sein. Und auch wenn ich nach wie vor nicht vom musikalischen Talent Lenas überzeugt bin, so gönne ich ihr doch den Sieg.

Nichtsdestotrotz sind mir vom Verlauf des Contest jedoch zwei andere Beiträge ganz besonders in Erinnerung geblieben:

SunStroke Project & Olia Tira – Run Away (Moldavien)

Die Kombination aus Violine (immer gut) und treibenden elektronischen Beats liegt gänzlich auf meiner Wellenlänge. Die Abrundung durch das kleine aber markante Saxophon-Solo ist gänzlich gelungen und dass Olia Tira auch noch etwas fürs Auge ist tut dem ganzen keinen Abbruch. Lediglich den Beitrag des Sängers vom SunStroke Project hätte man sich meiner Meinung nach sparen können.

maNga – We Could Be The Same (Türkei)

Einfach nur bombastisch und überzeugend vom allerersten Ton. Interessanterweise zählt auch hier eine Violine zum Ensemble. In typischer New-Metal-Fasson gibt es hier kräftige E-Gitarren und Drums zur Genüge nebst eingängigem Gesang. Und mit dem Bandnamen kann man bei mir eigentlich fast gar nichts falsch machen.

Dass ich mir diese Videos hin und wieder erneut anschaue ist deutlicher Beleg dafür, dass sie mir für immer in Erinnerung bleiben werden. Ich weiß nicht, ob ich das von „Satellite“ auch behaupten kann.

Iteration durch gtk.TreeModel

Zur Verarbeitung von Einträgen in einem gtk.TreeModel bedient man sich in Python üblicherweise der Iteration. Hierbei bietet gtk.TreeModel einige Methoden zur Arbeit damit. Ein übliches Konstrukt sieht damit so aus:

iter = model.get_iter_first()
while True:
    value = model.get_value(iter, 0)
    # Do something with value
    iter = model.iter_next(iter)
    if iter is None:
        break

Ziemlich umständlich und daher oft auch in dieser etwas vereinfachten Version vorzufinden:

iter = model.get_iter_first()
while iter:
    value = model.get_value(iter, 0)
    # Do something with value
    iter = model.iter_next(iter)

Doch wie so oft in Python gibt es eine viel intuitivere und simplere Lösung; gtk.TreeModel implementiert __iter__ und __next__, womit sich das obige Konstrukt auf folgenden Zweizeiler reduzieren lässt.

for row in model:
    value = row[0]

Bei row handelt es sich um eine gtk.TreeModelRow, welche intuitiven Zugriff auf die Daten der jeweiligen Spalten ermöglicht.