22.11.2013

Thor 2 - The dark kingdom

Ich liebe ja Comics und Comic-Verfilmungen ... von Iron Man 3 und dem zeitlichen direkten Vorgänger Avengers war ich begeistert.

Gestern war ich mit einem guten Kumpel im neuesten "Thor" und bin etwas enttäuscht zurückgeblieben.

Unglaublich großes und bombastisches Bumms. Fans von Actionfilmen kommen auf jeden Fall auf ihre Kosten, und besonders tief ist meine Enttäuschung auch nicht. Es war auf jeden Fall gute Unterhaltung.

Ein Bösewicht will gleich das ganze Universum mit einer Superwaffe zerstören, die er vor langer Zeit erfunden hat und ihm in einem fulminanten Kampf von Odins Vater Bor abgenommen wird. Das "ganze Universum" umfasst dabei die "Neun Welten" aus der nordischen Mythologie, also Midgard (unsere Welt), Asgard (die Welt der Götter), Jotunheim (die Eiswelt), und so weiter ... Wie diese neun Welten mit dem Dimensionsriss zusammenpassen, durch den Loki in "Avengers" eine Invasion der Erde ermöglichen wollte, ist unklar geblieben. Vielleicht gibt es da auch gar keinen Zusammenhang, und ich hätte nur gern einen ;)

Der Oberböse Malekith hat einen Namen, der förmlich nach dem Wortspiel Malefiz verlangt. Nun, bitte schön, da war es - das Wortspiel ;). Offensichtlich ist Malekith so an die Dunkelheit gewohnt, dass er alles Licht auslöschen will. Später heißt es dann, er will alles vernichten, und das Universum, wie wir es kennen (hell), hätte nie entstehen dürfen. Leider wird auch dieses Thema nicht weiter vertieft. Warum nun "Verdunkelung" im späteren Verlauf gleich zu totaler Vernichtung wird, war einer der Punkte, warum ich ratlos aus dem Film gegangen bin. Außerdem sind die besonders starken und widerstandsfähigen Dunkelelfen-Kämpfer, die Karedh, sehr heiß und stark leuchtend, es sollte wohl nach glühender Lava aussehen, die ja auch nicht wirklich besonders dunkel wirkt. Etwas widersprüchlich.

Außerdem war mir in den ganzen letzten Filmen zuviel umherfliegendes Zeugs (Autos, Busse, Häuser, Panzer, Flugzeuge, ...). Das erschöpft sich ganz schnell ... im "Man of Steel" war es am Ende genauso chaotisch, als der Superheld gegen General Zod gekämpft hat.

Ziemlich cool waren die Szenen, in denen durch die "Konvergenz" Durchlässe zwischen den Welten entstanden und Menschen, Autos und Jets sich plötzlich in einer Welt wiederfanden (und an einer anderen Stelle wieder zurück).

Meine Lieblingsfigur seit dem ersten Thor-Film ist der Wächter der Brücke Bifröst, Heimdall. In diesem Film scheitert er daran, das Raumschiff von Malekith zu sehen, wenn es sich unsichtbar macht, obwohl er alles sehen kann. Genausowenig kann er Jane sehen, als sie sich eine Zeit lang im Versteck des Aethers befindet, das sie durch einen Übergang zufällig betritt und dann vom Aether "besessen" wird.

Ziemlich unpassend fand ich auch, dass der Wissenschaftler Dr. Eric Selvig plötzlich nackt in Stonehenge herumgetobt ist, verhaftet wurde und dann vom Praktikanten der Praktikantin so mir-nichts-dir-nichts aus der Psychiatrie abgeholt wurde und plötzlich wieder geistig gesund war. Ich habe die ganze Zeit darauf gewartet, dass Stonehenge eine besondere Bedeutung hat; stattdessen wurde dann London/Greenwich zum Ort des finalen Showdown, obwohl sich astronomische Ereignisse sicherlich nicht an eine menschliche Metrik mit Längengraden halten müssen (durch Greenwich verläuft per Definition der Nullte Längengrad, dort gibt es das "Royal observatory" und eine Militärakademie der Royal Navy).

Andere Kritiken fanden die Lichtschwerter, Space-Elfen, die Mischung von Göttern und Raumschiffen, Einstein-Rosen-Brücken und magischer flüssiger Materie, die sich in Menschen flüchten kann, ganz toll, aber mir hat diese merkwürdige Mischung von Fantasy und SF nicht besonders gefallen.

Zugegeben, die Effekte waren toll; es war ein gigantischer Film, und wenn man die Personen im Abspann zählt, weiß man auch, warum der Film so teuer war ;)

Der Film hatte auch einige gute Szenen in den ruhigen Teilen. Die vorgetäuschte Sterbeszene war klasse gemacht. Ich war fast geneigt, Loki zu glauben. Die Handgranaten waren offensichtlich kleine Schwarze Löcher, ähnlich wie die Waffen der Kolonne TRAITOR bei Perry Rhodan. Der Aether hat mich ein bißchen an das "Element der Finsternis" erinnert ;). Eine nichtgezeigte Szene dürfte enthalten haben, dass der doch nicht tote Loki Odins Platz einnimmt und für das Gespräch mit Thor kurz vor Schluss, als Thor auf den Thron verzichten will, Odins Aussehen vortäuscht.

Jeder, der den Film gesehen hat, weist darauf hin, dass man unbedingt beide Kurzfilme im Abspann ansehen muss. Ehrlich gesagt, lohnt sich das elendige Warten auf den zweiten Abspann kein bißchen. Man sieht eine Knutschszene und danach hüpft ein lustiges Monsterli auf einem Parkplatz herum und versucht, Tauben zu haschen.

Die 3D-Effekte waren mäßig, und im Nachhinein hätte ich mir lieber die billigere 2D-Variante anschauen sollen. Im Hanauer Kinopolis schlägt der Film in 3D eine 11 Euro tiefe Kerbe ins Portemonnaie. Immerhin ist im Preis ein kostenloses Ticket für maximal vier Stunden im benachbarten Parkhaus enthalten, das man an der Kinokasse gleich im Voraus entwerten kann.

[Update 2013-11-22: Link zu Phantanews]

Die eigene Cloud - oder doch nicht? Leserbrief zum WZ-Artikel 16.11.13

Letzten Samstag war ein Artikel in der WZ, den ich für sehr fragwürdig halte: dort wird die Einrichtung einer eigenen Cloud im Internet besprochen.

Allerdings wird nicht genauer erklärt, warum man eine eigene Cloudsoftware einrichten sollte. Einen Server bei einem Rechenzentrum mieten, nur für den eigenen Kalender? Halte ich für übertrieben.

Sollen dort in der "eigenen Cloud" die Urlaubsbilder sicher gespeichert werden? Cloud ist die falsche Lösung, da verwendet man Backups oder ein NAS oder beides.

Leserbrief zum Artikel "Die eigene Cloud" WZ 16.11.2013

Der Artikel beschreibt, wie man sich selbst einen Server mit "Cloud"-Funktion einrichtet. Im Ansatz ist die Idee natürlich löblich, die Kontrolle über die eigenen Daten zu behalten. Die "Cloud" dient dazu, dass man von überall her auf seine eigenen Daten zugreifen kann, ob nun zuhause, im Büro oder unterwegs mit dem Smartphone.

Die zwei prinzipiellen Möglichkeiten, so eine "eigene Cloud" zu realisieren, sind allerdings beide nur mit großer Vorsicht genießbar, deshalb halte ich den Artikel bei weitem für zu ungenau und zu einseitig positiv.

Im Lichte der Details, die nach und nach über die diversen Geheimdienste und ihre Abhöraktivitäten ans Licht kommen, wäre die erste Überlegung nämlich nicht das "wie" - realisiere ich meine Cloud mit dem heimischen Gerät, miete ich einen V-Server oder ein richtiges "Blech" im Rechenzentrum eines Dienstleisters, sondern zunächst mal - "ob" und wenn ja, "wofür" ich so etwas wirklich so dringend benötige.

Die "eigene Cloud" begründet der Artikel eben genau mit der Datensicherheit, die bei Anbietern wie Dropbox, Box, Google, Microsoft etc. nicht gewährleistet ist, weil die Rechenzentren in den USA liegen und damit natürlich der amerikanischen Rechtsprechung unterliegen, die sehr hemdsärmelig mit Datenschutz umgeht (Patriot Act, Gag order, usw.).

Andererseits sind die Enthüllungen mittlerweile so schockierend, dass man eigentlich nichts und niemandem mehr trauen darf. Glaubwürdige Berichte beschreiben, dass die USA gezielt Schwachstellen in Standardisierungen von Verschlüsselungsalgorithmen einschleusen ließen, und die übliche Verschlüsselungstechnik für WWW, nämlich das SSL (das "s" in "https"), ist zwar mathematisch sicher, wird aber dadurch angreifbar, dass es auf dem Vertrauen in Signaturstellen beruht. Leider sind alle großen Signaturstellen (Verisign usw.) in den USA beheimatet, und es ist mehr als plausibel, dass sie durch rechtliche Anordnungen gezwungen werden können, die Basis-Signaturschlüssel ("root CA") auszuliefern. Mit diesem Besitz ist es möglich, sich in verschlüsselte Verbindungen einzuklinken und insbesondere beiden Parteien vorzugaukeln, dass ihre Verbindung sicher ist.

Es ist also zu vermuten, dass auch verschlüsselte Verbindungen abgehört werden können, und da die Telekom nicht am Datenaustausch des DE-CIX in Frankfurt teilnimmt, laufen vermutlich sehr viele Datenverbindungen unnötig durch ausländische Netze, die fröhlich abgehört werden. Aber nicht nur das, eventuell wird auch am DE-CIX direkt abgehört, genauso wie der englische Geheimdienst an den Landestellen der Seekabel in England und Zypern die Daten abschnorchelt. Mittlerweile heißt es ja auch, dass der BND sich vom englischen Geheimdienst helfen ließ, Gesetze so umzuinterpretieren, dass effektiv jeglicher Datenverkehr als "ausländisch" betrachtet wird und abgehört werden darf.

Im Grund kann man also festhalten: nur Daten, die den eigenen Rechner nicht verlassen, sind sichere Daten.

Wenn es denn unbedingt eine eigene Cloud sein muss, schlage ich einen gemieteten Server mit Linux oder BSD vor (keinen virtuellen, auch wenn das monatlich etwas teurer kommt, und ganz bestimmt keinen Windows-Server). Auf keinen Fall sollte eine Cloudsoftware auf dem Rechner oder Router zuhause laufen und eine Verbindung ins Internet geöffnet werden. Ich denke, dass die allermeisten Privatpersonen nicht in der Lage sind, sich gegen Hackereinbrüche zu schützen oder überhaupt zu erkennen. Dazu tragen leider auch Sicherheitslücken und absichtliche Hintertüren in Routern bei, über die die Fachpresse regelmäßig berichtet.

Wenn die Cloud "nur" dazu dienen soll, die eigenen Daten vor Verlust oder Zerstörung zu schützen, flapsig gesagt also eine sichere Ablage für die Urlaubsbilder gesucht wird, ist ein sicheres Speichergerät mit redundanten Festplatten die bessere Lösung (ein NAS-Gerät mit 2 bis 4 Festplatten im RAID), und immer 1 bis 3 Generationen Sicherungen der Daten an verschiedenen Stellen aufbewahren (externe Festplatten z.B.). Für diesen Zweck ist eine "eigene Cloud" zwar eine Lösung, aber nicht für dieses Problem.

21.11.2013

So baut man ein aktuelles Komplettpaket Acrobat Reader X

Hilfsvariablen setzen


set D=C:\tmp\AR10
set S=C:\tmp\download
set MSI=AdbeRdr1000_de_DE.msi
set AR=ftp://ftp.adobe.com/pub/adobe/reader/win/10.x

Ordner erstellen

if exist %S%\nul rmdir /S /Q %S%
if exist %D%\nul rmdir /S /Q %D%
mkdir %S%
mkdir %D%
cd /D %S%

wget beschaffen

Bei sourceforge.net herunterladen und das ZIP auspacken. wget ist ein cooles Kommandozeilenwerkzeug zum Abrufen von URLs, sei es http, https oder ftp.

Dateien herunterladen

wget -nv -nc -N %AR%/10.0.0/de_DE/%MSI%
wget -nv -nc -N %AR%/10.1.8/misc/AdbeRdrUpd1018.msp

Patches in das Grundpaket integrieren

msiexec /a %S%\%MSI% /qb- TARGETDIR=%D%
msiexec /p %S%\AdbeRdrUpd1018.msp /a %D%\%MSI% /qb- TARGETDIR=%D%
Die Angabe /a führt eine reine "Administrator"-Installation durch, d.h. die Software wird nicht auf dem PC installiert, auf dem der Befehl aufgerufen wird, sondern es wird nur vorbereitet, dass die Software auf anderen PCs installiert werden kann. Mit /p werden die heruntergeladenen Patches in die Basissoftware integriert. Die Reihenfolge von /p und /a im letzten Befehl oben muss man einhalten, sonst klappt es nicht.

Recht angenehm: man muss nur den neuesten Patch für den Acrobat Reader herunterladen und nicht sukzessiv alle. Derzeit aktuell ist 10.1.8.

Der Ordner C:\tmp\download wird danach nicht mehr benötigt und kann gelöscht werden. Den vollständigen Ordner C:\tmp\AR10 kopiert man nun auf ein Netzlaufwerk, z.B. ein NAS oder eine Festplatte am DSL-/LTE-Router.

Installation

msiexec /i I:\win\adobe\AR10\AdbeRdr1000_de_DE.msi /qb-!
Natürlich muss man hier das Beispiel I:\win\adobe\AR10 entsprechend an die eigenen Verhältnisse anpassen.

Credits: das Prinzip und die Downloadlinks hab ich mir hier im heise-Forum abgeguckt.

15.11.2013

Die Telekom und das Schland-Routing

Von allerorten tönt es derzeit, dass "man" ja unbedingt etwas gegen die ausufernde Schnüffelei tun muss.

Es hagelt Vorschläge, und man bekommt den Eindruck, wenn man nicht mindestens alle diese Vorschläge befolgt, steht der Geheimdienst quasi schon hinter der nächsten Wand und wenn man nur aus Versehen "Bombe" sagt oder schreibt, hört man im nächsten Moment das "hoi hoi hoi", wenn sich das SEK vom Dach abseilt.

Da gibt es Vorschläge für Emails mit Verschlüsselung (GPG), da gibt es Vorschläge, anonym mit dem Browser zu surfen, indem man Zwischenstationen verwendet, die keine Verbindungen aufzeichnen (TOR als Proxyfunktion), und es gibt auch Vorschläge, dass Datenverbindungen von den großen Providern nicht mehr durch das weltweite Warten geschickt werden, wenn Anfang und Ende der Verbindung doch beide im selben Land liegen.

Prinzipiell eine gute Idee, nur: größtenteils wird das schon längst umgesetzt, weil sich über 200 Provider in Frankfurt am DE-CIX zusammengetan haben, um genau das umzusetzen.

Nur: wer beteiligt sich nicht? Ausgerechnet die Telekom, die immer noch ihrer Monopolstellung aus dem letzten Jahrhundert nachtrauert und sich dem Prinzip der "kurzen Wege" verweigert. Die Telekom findet, dass sich alle nach ihr richten sollen, und versucht, die anderen Provider zu "privatem Peering" zu zwingen, d.h. zum Einrichten von bilateralen Übergabestellen, statt sich am genossenschaftlichen Multilateralismus in Frankfurt zu beteiligen.

Genau diese engstirnige Geschäftspolitik führt ja gerade dazu, dass ein Risiko besteht, dass eine Verbindung von einem Provider ohne direktes Peering zur Telekom durch Nichtschland geroutet werden muss, damit es letztendlich doch wieder bei der Telekom landet. Immerhin hat die Telekom einen Marktanteil von knapp 30 % auf dem deutschen DSL-Markt.

Abgesehen davon löst selbst das "Schlandrouting" (oder Schengen-Routing, wie es die Telekom nennt), nicht das grundsätzliche Problem, dass am DE-CIX fröhlich weiter direkt an den Knotenstellen des Austauschs abgehört wird. Auch das wissen wir ja leider und zum Glück durch Edward Snowden. Ich hätte mir bis vor kurzem nicht vorstellen können (und wollen ...), dass tatsächlich jemand die Chuzpe besitzt, die gigantischen Datenmengen (mehrere TB/s) anlasslos zu durchsuchen und vermutlich auch komplett zu speichern.

Lösen ließe sich dieses Problem nur, wenn man eine starke Ende-zu-Ende-Verschlüsselung einführt, die nicht auf der kaputten Vertrauenshierarchie von SSL beruht. Zur Erinnerung: wenn ich ein SSL-Zertifikat nicht persönlich kenne (also mein PC oder sonstiges Endgerät ...), muss ich darauf vertrauen, dass die Zertifizierungsstelle sorgfältig gearbeitet hat, dass also die Root-CA-Stelle ordentlich geprüft hat, wem sie ein Zertifikat ausstellt.

Bis vor einem Jahr hätte ich als grundsätzliche Empfehlung geschrieben, dass man auf https-Verschlüsselung beim Browsen im WWW achten soll. Viele Anbieter haben inzwischen eine automatische Umleitung eingebaut, so dass man bei http-Verbindungen automatisch auf https umgelenkt wird. Allerdings setzt dies voraus, dass man der SSL-Verschlüsselung vertraut. Das schützt also nur gegen Mitlauschen durch böse Buben, die es auf Geld oder ähnliches abgesehen haben.

Da wir aber mittlerweile wissen, dass auch die Root-CA-Stellen korrumpiert sind, weil die fast alle in USA sitzen und deshalb von amerikanischen Gerichten zu allen möglichen Schweinereien gezwungen werden können, kann sich mit großer Sicherheit ein Geheimdienst selbst ein gültiges Zertifikat für eine belauschte Verbindung ausstellen und somit eine "man in the middle"-Attacke ausführen, die fast nicht erkannt werden kann.

Statt der zentralisierten Behauptung von Vertrauenswürdigkeit durch Root-CA-Stellen müsste es peer-to-peer-Schlüsselaustausch geben, wie z.B. in Bruce Schneiers "Applied Cryptography" beschrieben, mit einer Vertrauenswürdigkeit ähnlich wie bei GPG, wobei hier natürlich das Problem von Agenten existiert, die verdeckt für einen Geheimdienst arbeiten und sich in so ein "web of trust" einschleichen können.

Die Angriffe, die (vermutlich) staatliche Stellen letztes Jahr im Iran gegen Google Mail durchgeführt haben, sind nur deshalb aufgeflogen, weil im Google-Chrome-Browser geprüft wird, ob beim empfangenen Zertifikat der Signierer wirklich der ist, von dem Google das Zertifikat gekauft hat. Hier ist der Geheimdienst daran gescheitert, dass sie von dieser zusätzlichen Kontrolle nichts wussten und einfach mit der falschen Identität das Zertifikat signiert haben, mit dem die Antwort nach dem Lauschen weitergegeben wurde.

Auch wenn das alles ziemlich düster aussieht, was Bürgerrechte und Privatsphäre angeht, sollte man nach wie vor im Privat- und Geschäftsleben die Tipps für sicheren Umgang mit WWW, Email und dem Internet beherzigen, die ich schon mal zusammengestellt hatte, etwa hier und hier und hier. Elternbeiräte, Lehrer oder andere interessierte Gruppen können mich für einen kostenlosen Vortrag über Datenschutz und Privatsphäre einladen, den ich hier etwas genauer beschrieben habe.

[Update 20131206: Tippfehler in URL]

14.11.2013

Leserbrief zur Strompreiserhöhung der OVAG - WZ 09.11.13

Leserbrief zur Meldung "OVAG erhöht Strompreis" WZ 09.11.2013

Ich finde die Pressemeldung mit der Ankündigung der OVAG, dass eine Strompreiserhöhung nötig ist, unvollständig und deshalb unehrlich.
Hr. Schwarz betont, dass zwar der reine Strompreis an der Leipziger Börse sehr niedrig ist, dass aber wegen der Abgaben gemäß dem Erneuerbare-Energien-Gesetz und wegen der gestiegenen Preise bei "den Netzbetreibern" die Preise trotzdem steigen müssen.

Das Unehrliche daran ist meiner Meinung nach einerseits, dass "der Netzbetreiber", dessen Namen Hr. Schwarz auffallend nicht genannt hat, ebenfalls im OVAG-Besitz ist. Dieses Prinzip nennt man wohl "linke Tasche - rechte Tasche", wenn man auf der einen Seite mehr bezahlt, es sich aber durch die Konstruktion mit der Tochter- oder Schwesterfirma gleich wieder einverleibt. Und da ja auch diese Firma betriebswirtschaftlich erfolgreich sein muss, wird da ein Obolus fällig.

Unvollständig ist andererseits auch der Trick, auf dem mittlerweile durch die CDU-Regierung weichgespülten Erneuerbare-Energien-Gesetz herumzureiten. Dieses Gesetz ist so kaputt und mißraten, dass Solarien und andere "wichtige" Unternehmen sich von der Abgabe auf Antrag befreien lassen können. Diese Befreiungen der sogenannten "energieintensiven" Unternehmen müssen wir Verbraucher ausgleichen und dafür mehr zahlen. Hier gibt es überhaupt keinen Anreiz (oder besser: "Strafe") mehr für Firmen, energiesparend(er) zu wirtschaften. Die Zahlen der befreiten Unternehmen sprechen Bände: 2011 gab es knapp 600 Befreiungen, 2012: 979, 2013: 2245, und für 2014 wurden bis jetzt 2367 Anträge gestellt. Diese Befreiung wird als unerlaubte Subvention seit Mitte 2012 von der EU-Kommission untersucht und es wurde ein Beihilfeverfahren gegen Deutschland eingeleitet.

Abgesehen davon höre ich immer nur einseitiges Gejammer, wie schrecklich hoch doch die Subventionen der alternativen Energiequellen sind: fast 40 Milliarden Euro bislang. Die Kritiker dieser Subventionen vergessen aber gern zu erwähnen, dass in Summe die Kernkraftwerke mit mittlerweile deutlich über 100 (!) Milliarden Euro subventioniert wurden und noch werden. Wenn man nur einen Teil der Differenz in die weitere Forschung steckte, könnte man die unbestritten vorhandenen Probleme bei Sonnen-, Wind- und Wasserkraft sicherlich in den Griff bekommen, insbesondere die Speicherung, wenn Energie erzeugt, aber derzeit nicht benötigt wird.

Entgegen der landläufigen Meinung unterliegen Atomkraftwerke übrigens einer Zwangsversicherung gegen Schäden (als einzige Energiequelle). Diese Versicherungsprämie geht natürlich in die Strompreise der Atomkraftwerke mit ein. Trotzdem ist mir ein Windenergiespargel in der Nachbarschaft lieber als ein Atomkraftwerk. Von Atommüll und radioaktiven Ruinen ganz zu schweigen ...

Auch wenn mich solche Artikel ärgern, werde ich trotzdem Kunde bei der OVAG bleiben. Und zwar deshalb, weil ich das Konzept regionaler Energieversorger sinnvoll finde, die sich im Besitz der Kreise befinden und durch ihre Aktionen auch zeigen, dass ihnen die Region am Herzen liegt. Ich würde mich aber über Presseberichte freuen, die ehrlicher formuliert sind.

12.11.2013

Leserbrief zum Leserbrief "Ideologie in der Energiewende" - WZ 05.11.13

Letzte Woche war mal wieder ein Leserbrief von einem emeritierten Professor für industriellen Ofenbau (THM Mittelhessen) in der WZ.

In diesem Leserbrief wirft er einem anderen Leserbriefschreiber vor, dass dieser die Energiewende als Ideologie betrachte und deshalb nicht realistisch sei.

Außerdem behauptete der Herr Professor, dass (a) das Öl mindestens bis 2050 reicht, dass es (b) möglich ist, Atomkraftwerke zu bauen, bei denen eine Kernschmelze physikalisch unmöglich ist, und dass (c) die "Transmutation" in industriellem Maßstab in der Lage ist, Atommüll in ungefährliche Stoffe umzuwandeln.

Das fand ich in Summe so abstrus, dass ich das kommentieren musste.

Leserbrief zum Leserbrief "Ideologische Energiewende" WZ 05.11.2013

Herr L., ich verfolge seit einiger Zeit Ihren Kreuzzug gegen alles, was nicht mit Feuer und Flamme arbeitet oder Atomkerne kaputtmacht.

Sie versuchen sich und uns damit zu beruhigen, dass die Ölvorräte doch geschätzt immerhin bis 2050 reichen. Nun gut, mag sein, dass Ihnen das nicht beunruhigend vorkommt, Sie sind emeritierter Professor, und die Zeit nach 2050 kann Ihnen ziemlich egal sein.

Ich hingegen bin ein paar Jährchen jünger, und ich halte es für wenig ratsam, das kostbare Erdöl einfach zu verbrennen, bis keins mehr da ist. Es gibt viel bessere Anwendungsmöglichkeiten dafür, und ich hoffe ernsthaft, dass der Lobbyismus in Zukunft nicht mehr dafür sorgt, dass die Auto-Industrie unliebsame, weil strenge, Abgasgrenzwerte von der Kanzlerin in Brüssel torpedieren oder verzögern lässt.

Alchimistische Begriffe wie "Transmutation" und die Behauptung, dass man Atomkraftwerke bauen kann, die eine Kernschmelze unmöglich machen, finde ich sehr fragwürdig.

Selbst wenn Sie behaupten, dass es möglich ist, 100 % sichere Atomkraftwerke zu bauen (was physikalisch unmöglich ist), bleiben uns nach der aktiven Zeit Bauruinen übrig, die noch jahrzehntausendelang hoch radioaktiv sind. Und nicht nur das: die meisten radioaktiven Brennstoffe sind auch chemisch höchst giftig - schon millionstel Gramm Plutonium oder Polonium töten, wie man an Arafat und Litwinenko gesehen hat. Sind Sie sicher, dass niemals etwas von diesen Stoffen freigesetzt wird?

Auch wenn es immer wieder Verharmloser gibt, die die globalen Veränderungen alles als Folge der naturgegebenen Klimawechsel darstellen wollen, sind sich 99 % aller Klimaexperten und Wissenschaftler aus benachbarten Fachgebieten einig, dass die fortgesetzte Verfeuerung von fossilen Brennstoffen keine gute Idee ist.

Sogar die WZ berichtet am 06. November, dass rund 100 Zuhörer zu einem Vortrag von Jürg Luterbacher ins Ober-Mockstädter Bürgerhaus kamen. Herr Luterbacher ist Professor am Geografischen Institut der Justus-Liebig-Universität Gießen, wie die WZ berichtet. Das Fazit seines Vortrags lässt sich so zusammenfassen: ja, es gibt den Klimawandel, vermutlich sind es nicht nur, aber hauptsächlich, menschgemachte Faktoren, die das Ausmaß dieses Klimawandels bestimmen, und dieses Ausmaß ist objektiv zu groß.

Ich weiß nicht, ob Sie Kinder haben, aber denken Sie daran: wir haben die Erde nicht von unseren Eltern geerbt, sondern von unseren Kindern geliehen, und wir sollten sie so übergeben, dass auch unsere Kinder noch eine lebenswerte Welt vorfinden - auch nach 2050. Immerhin haben wir keine andere.

Einen Lesetipp habe ich noch am Schluss: das Buch "Ausgebrannt" von Andreas Eschbach behandelt als Thriller das fiktive, aber nicht mehr unwahrscheinliche Thema "Was wäre, wenn die Ölfelder im Nahen Osten versiegen". Es ist sehr gut recherchiert und spannend geschrieben (längere Buchbesprechung online in meinem Blog).
 

11.11.2013

Kleine Perl-Spielerei mit Tonleitern

Vor einiger Zeit habe ich mich mal ein bißchen näher mit Noten beschäftigt, und fand es ganz schön faszinierend, wie systematisch man eine Tonleiter selbst aufschreiben kann. Es geht nur darum, den richtigen Nachfolger für jeden Ton zu finden, und schon kann man ganz leicht, ausgehend von C-Dur, jede andere Tonleiter zusammenbauen.

Die Profi-Musiker werden jetzt natürlich schon angefangen haben zu lachen, das ist mir klar ;). Die können das alles auswendig oder merken sich lustige Eselsbrücken ("geh, du alter esel, fische holen"). Da mein Gedächtnis für so etwas nicht geeignet ist, mache ich es anders.

Man kann natürlich sowas mit Stift und Papier erledigen. Das geht aber einem Programmierer an die Ehre, und warum etwas manuell erledigen, was man auch mit einem kleinen Progrämmchen schaffen kann?

Also ein wenig nachgedacht über eine sinnvolle Datenstruktur, und los geht's mit dem perl-Skript, um eine Tonleiter zu konstruieren, wenn der Anfangston gegeben ist. Ich bin ein Anhänger des Konzepts, dass man sich zuerst eine möglichst praktische Datenstruktur ausdenkt, und davon ausgehend ergibt sich der Programmcode nahezu von selbst. Dieses Konzept hat Niklaus Wirth als erster formuliert und dann gleich ein Buch drüber geschrieben ;)

Zunächst mal brauche ich zwei Informationen: wie groß ist der Abstand zwischen jeweils zwei benachbarten Noten, und welche Noten folgen aufeinander.

Mein erster Versuch war, die ganzen Noten und die Halbtöne in zwei Arrays zu packen:

my @toene1=("c",   "d",   "e", "f",   "g",   "a", "h");
my @toene2=("cis", "dis", "f", "fis", "gis", "b", "c");

Als ich schon fast fertig war, hat mir meine Tochter ganz empört erklärt, dass man Kreuze und B nicht mischen darf. Ich müsste also "ais" statt "b" schreiben, wenn ich eine Dur-Tonleiter (also die mit den Kreuzen ...) bauen will. Naja ...

Dann müsste ich in einer Schleife ausgehend vom Grundton, die nächsten 7 Töne suchen. Also eine Fallunterscheidung, ob jetzt ein Sprung um einen ganzen oder halben Ton nötig ist, und dann überlegen, welches der entsprechend entfernte Ton genau ist. Dazu muss man wissen, dass zwischen "c" und "d" ein Abstand von einem Ganzton liegt, von "e" zu "f" aber nur ein Halbton. Bei einer Tonleiter gelten ausgehend vom Grundton, bestimmte Regeln, wie groß der Abstand zum nächsten Ton jeweils ist.

Auf der Klaviertastatur sieht man das ganz wunderbar: es gibt immer abwechselnd Gruppen mit zwei und drei schwarzen Tasten mit Halbtönen, und es gibt pro Oktave zwei Stellen, bei denen oberhalb keine schwarze Taste liegt - links von dem Zweierpärchen schwarzer Tasten liegt jeweils das "c", und rechts davon die zwei weißen Tasten ohne eine schwarze dazwischen sind "e" und "f".

Diese Abstandsregel habe ich als "delta" hingeschrieben, und da ich nicht mit Gleitkommazahlen rechnen wollte, habe ich "2" als Ganzton und "1" als Halbton geschrieben. Das hat mich später auf eine Idee gebracht, wie ich die Datenstruktur der aufeinanderfolgenden Töne verbessern könnte, aber das kommt erst als übernächstes.

my @delta=(2,2,1,2,2,2,1);

Dann brauche ich noch eine Hilfsfunktion, die mir den Index liefert, an dem mein gewünschter Grundton in der C-Dur-Tonleiter liegt.

sub findstart {
        my ($start)=@_;

        for ( my $i=0; $i<$max; ++$i) {
                return ($i) if ($start eq $toene[$i]);
        }
        return 99;
}


my $start=lc($ARGV[0]); 
$ofs=findstart($start);

Diese Funktion liefert mir die Nummer des Tons im Array, und für den schlimmsten Fall (kein Treffer) eine 99, also ein Ergebnis außerhalb des möglichen Bereichs.


Außerdem brauche ich noch einen separaten Zähler (dachte ich zuerst), mit dem ich die Liste der Abstände (der Deltas) von Anfang an durchlaufe.

Als nächstes also eine Schleife und eine Fallunterscheidung:

for (my $i=0; $i<7; ++$i) {
  if ($delta[$o]==2) { # sprung um einen ganzton
    $neuerton=$toene1[$i];
  }
  else { # sprung halbton
    $neuerton=$toene2[$i];
  }


Das bringt mir allerdings ein Problem, weil die primitive Datenstruktur mit zwei separaten Arrays "toene1" und "toene2" nur ganz schwer die numerische Information liefert, wann in der Tonleiter der Abstand nur einen Halbton ist (e/f und h/c).

Also flugs eine neue Datenstruktur ausgedacht, die das liefert. Ein Array von Arrays, und jedes Element enthält den Namen des Grundtons, den Ton einen Halbton darüber und den einen Ganzton darüber:

my @toene=(
  ["c", "cis", "d"  ],

  ["d", "dis", "e"  ],
  ["e", "f",   "fis"],
  ["f", "fis", "g"  ],
  ["g", "gis", "a"  ],
  ["a", "ais", "h"  ],
  ["h", "c",   "cis"]
);


Das Coolste an dieser Konstruktion ist, dass ich mir die Fallunterscheidung jetzt ganz sparen kann und sich der Sprung zum nächsten Ton in der Tonleiter ganz zwanglos aus dem "delta"-Array ergibt: der Index [0] ist der Grundton im inneren Array, der Index [1] ist der Halbton darüber, und der Index [2] der nächste Ton mit einem Ganzton Abstand. Der schönste Trick ist hier, dass ich $delta[$o], also den Abstand vom Ton an der Stelle $o zu seinem Nachfolger, als Index verwende, um den Namen dieses Tons zu finden.

for (my $i=0; $i<7; ++$i) {
  $neuerton=$toene[$i]->[$delta[$o]]; 
}


Im Endeffekt hat mir das aber auch nicht allzuviel gebracht, weil nach dem ersten Halbtonsprung (z.B. in D-Dur vom "e" zum "fis") der nächste Schritt in der Schleife mit dem "fis" anfangen müsste, meine Schleifenlogik aber vom "e" zum "f" an Index [0] springt. Der Output war dann "d", "e", "fis" (soweit ok), aber dann kam nochmal ein "fis", weil nach dem "e" in der ersten Spalte das "f" kommt, und das ist falsch.

So elegant diese Datenstruktur auch ist, so ungeeignet ist sie nach wie vor für das, was ich bezwecke. Es tat mir dann auch ein bißchen leid, dass ich sie aufgeben musste ;)

Also bin ich wieder zurückgekehrt zu einer flachen Datenstruktur, nämlich einem Array, in dem schlicht und einfach alle Töne und Halbtöne aufeinanderfolgen. Mir kam dann nämlich der Gedanke, dass ich mit dem "delta" 1 oder 2 ganz einfach in einem flachen Array entweder den Nachfolger mit Abstand 1 oder 2 nehmen kann, um den nächsten Ton zu finden.

Dieser Gedanke hat dann tatsächlich zum gewünschten Ergebnis geführt. Nebenbei hat es auch dazu geführt, dass ich die zweite Schleifenvariable entfernen konnte, und den Index des Grundtons (also mein Parameter von der Kommandozeile) mißbrauchen konnte, um zu zählen. Es ist nur wichtig zu bedenken, dass man nicht über das Ende des Arrays hinausgreifen darf. Deshalb verwende ich den "modulo"-Operator, um (wie bei einem Zifferblatt) dafür zu sorgen, dass nach der "11" bei der "0" weitergezählt wird.

Warum kommt es zu "12" als Größe des Arrays? Ganz einfach: es gibt in einer Tonleiter 7 verschiedene Töne (c/d/e/f/g/a/h), und eine "Oktave" höher findet sich wieder der Grundton. Zwischen "e" und "f" und nach dem "h" gibt es keinen Halbton (musikalisch schon, aber nicht mit einem eigenen Namen), deshalb also 2*7-2=12 verschiedene Töne mit Namen. Solche Überlegungen am Rand sind recht nützlich, um zu testen, ob bestimmte Grundannahmen im Programm plausibel sind, und ob man bei Aufzählungen auch alle Varianten wirklich in den Programmtext geschrieben hat oder noch etwas fehlt.


Und das kam als Endprodukt dabei heraus:

#!/usr/bin/perl -w

my @delta=(2,2,1,2,2,2,1);
my @toene=(
        "c",   "cis", "d",   "dis", "e",   "f",
        "fis", "g",   "gis", "a",   "ais", "h",
);
my $max=scalar(@toene);

sub findstart {
        my ($start)=@_;

        for (my $i=0; $i<$max; ++$i) {
                return ($i) if ($start eq $toene[$i]);
        }
        return 99;
}

my $start=lc($ARGV[0]);
my $ofs;

print "# $start-dur Tonleiter ($max)\n";
$ofs=findstart($start);

for (my $o=0; $o<7; ++$o) {
        print "# "," + ",$delta[$o]," = ",$toene[$ofs],"\n";
        $ofs=($ofs+$delta[$o]) % $max;
}


Hier ist der Probelauf für F-Dur noch mit der Debugging-Ausgabe, wie weit entfernt der nächste Ton liegt (also f+1=g, a+1/2=ais usw.):

server:~ # ~ths/perl/tonleiter.pl f
# f-dur Tonleiter
#  + 2 = f
#  + 2 = g
#  + 1 = a
#  + 2 = ais
#  + 2 = c
#  + 2 = d
#  + 1 = e


[Update 2013.11.12: Formatierung, Tippfehler]