Die drei Chinesen mit dem Kontrabass – 3

Mon, 28 Jul 2008 21:29:48 +0000

DrHe ChlnpsMn met dIm KAntrmbTss

Srßan ppf der StrdßI nnd ArzShltpn sach wms

D- kFm dac Ptlozry j! wAs nst dynn dbs

Drod Chyn.sPn mlt dem Kantrsbess


Bilder in geringerer Qualität

Mon, 28 Jul 2008 15:38:58 +0000

Aufgrund von Speicherplatznutzungsüberlegungen habe ich mich entschlossen, die Bilder auf diesem Blog in geringerer Qualität zu speichern. Die URL’s sollten gleich bleiben, aber ein paar Bilder haben jetzt niedrigere Qualität.

Am Liebsten würde ich sie ja direkt in die Beiträge einbetten, das geht unter vielen Browsern mittels <img src=“data:image/png;base64,BASE64-GEBLUBBER” />. Allerdings vern00bt WordPress es mir, das in den Code einzubetten. Bug oder Feature ist da die Frage.


Neues von der RPG-Front

Mon, 28 Jul 2008 15:20:53 +0000

So. Nun, da ich den vierten Dungeon von Twilight Princess durchhabe, auf dessen Endgegner ich mich, da ich ihn aus Spoilern von Youtube schon kannte, eigentlich freute, der aber erstaunlich einfach war, ich habe ihn, wenn ich mich recht entsinne, auf Anhieb geschafft, ohne auch nur einmal verletzt zu werden, was ich bei einem Endgegner in einem vierten Dungeon eigentlich schon etwas erstaunlich finde, machte ich mich ans Programmieren meines eigenen Spiels. Entwürfe zu einem Dungeon sind bereits weitestgehend fertig, und ich bin momentan darum bemüht, die Objekte zu programmieren, die man dafür braucht. Einiges geht inzwischen. Auch grafisch habe ich einiges ein wenig verschönert. Leider sind die Gegner immernoch Bäume. Was solls. Hier mal ein Screenshot:
Screenshot mit etwas mehr Grafik

Oben Links sieht man einen Balken, das ist sowas wie die Poweranzeige – momentan, natürlich werde ich schaun, dass ich das alles noch etwas schöner mache. Es geht mir ja nur darum, dass ich prinzipiell mal soweit bin, dass es funktioniert. Die Verfeinerungen kommen danach.

Herrlich, wie Naiv das Ganze aussieht.


Fünf gute Gründe für Atomkraft

Tue, 22 Jul 2008 22:46:06 +0000

Die aktuelle Diskussion um Atomkraftwerke hat auch mich ins Grübeln gebracht. Ist es vielleicht doch gut, sich von der Atomkraft zu verabschieden? Oder sollten wir lieber die bestehenden Atomkraftwerke weiterbetreiben, aber keine neuen bauen? Oder gar neue zusätzlich bauen? Hier mal ein paar Gründe, warum Atomkraft eine gute, saubere Sache ist:

1. Beschleunigung der Evolution

Radioaktive Strahlung ist mutagen – sie verändert also eventuell das Erbgut einzelner Zellen – das ist soweit ich weiß wissenschaftlich gesichert. Daraus resultieren viele Fehlgeburten und Erbkrankheiten – aber es kann auch zu vorher nicht dagewesenen Mutationen kommen. Und letztendlich sind es die Mutationen, die uns Menschen zu dem gemacht haben, was wir sind. Ohne Mutationen wären wir heute immernoch Einzeller. Keiner, der von der Richtigkeit der Darwintheorie ausgeht, wird es bestreiten können: Evolution ist gut! Also sind Mutationen gut! Und Atomkraftwerke und die Lagerung von Atommüll sorgen genau dafür.

2. Erhaltung der Entropie

Der aktuelle Umweltschutz zielt zumeist nur auf die Reduktion des Ausstoßes von Monocarbondioxid, oder wenigstens chemischer Stoffe. Dies ist ein klarer Fehler. Klarerweise verursachen Wind-, Wasser- und Gezeitenkraftanlagen weniger Monocarbondioxid als die Verbrennung fossiler Brennstoffe. In dieser Hinsicht kann man nicht leugnen, dass sie als vorübergehende Alternative, bis man die Kapazitäten hat, weitere Atomkraftwerke zu bauen, hervorragend geeignet sind. Dennoch wird ein wichtiger Faktor vergessen: Die Entropie. Diese motorischen Anlagen entziehen dem Wind und dem Wasser seine Bewegungsenergie, und vermindern damit auf lange Sicht hin die Entropie der Atmosphäre der Erde. Weniger Entropie, weniger Wärmeenergie. Wenn wir auf solche alternativen Methoden zur Stromerzeugung zu lange setzen, werden wir es also früher oder Später mit einer Klimaabkühlung zu tun bekommen. Ein noch viel schlimmeres Szenario würde uns bei dem Großeinsatz von Gezeitenkraftwerken bevorstehen. Sie nehmen der Ebbe und der Flut ihre Energie – doch diese Energie kommt direkt vom Mond, Ebbe und Flut werden ja bekanntlich von der Gravitation des Mondes hervorgerufen. Wenn wir Ebbe und Flut Energie klauen, klauen wir auch dem Mond seine Energie, die er braucht, um sich in einer Umlaufban um die Erde zu halten. Die Folgen sind fatal: Der Mond würde sich auf lange Sicht hin der Erde immer mehr nähern, bis er ins Trudeln gerät, und auf die Erde stürzt. Die Folgen sind nicht abzusehen, aber es ist anzunehmen, dass ein großteil der Menschheit deswegen ausgerottet werden würde.

3. Verminderung der Lärmbelästigung

Aus Sicherheitsgründen werden Flugzeugrouten nicht in die Nähe von Atomkraftwerken gelegt werden dürfen. Dies wird dazu führen, dass die Lärmbelastung in Atomkraftnahen Gebieten stark abnimmt. Auch die Schadstoffbelastung durch die Verbrennung von Benzin in diesen Flugzeugen nimmt damit an den gegebenen Stellen ab. Es resultiert ein gesünderes Klima für alle Anwohner. Auch die hoch fliegenden Vögel haben in diesen Gebieten keine Gefahr mehr, von einem Flugzeug erfasst zu werden. Man kann also Atomkraftwerkgebiete zu hervorragenden Vogelschutzgebieten umfunktionieren.

4. Schutz vor kriegerischen Angriffen

Die Sicherheit von Atomkraftwerken wird immer wieder fälschlich kritisiert. Atomkraftwerke würden demnach ein hohes Sicherheitsrisiko darstellen, und die Folgen eines Unfalles seien nicht abzusehen, im Krassen Gegensatz zur Realität: Atomkraftwerke gefährden nicht unsere Sicherheit, sie erhöhen sie noch. Kriegerische Angriffe zum Zwecke der Eroberung werden de facto nicht mehr stattfinden, denn durch eine große Fülle an Atomkraftwerken ergibt sich ein natürlicher Selbstzerstörungsmechanismus des Standortes Deutschland. Ein Versuch der Annexion Deutschlands oder großer Teile davon würde zwangsläufig keinen Ertrag bringen.

5. Verminderung der Gefahr durch Tuonische Schädlinge

Die Atommülllager in tiefen Gesteinsschichten sorgen dafür, dass Würmer und andere Schädlinge aus der Tuonela nicht an die Erdoberfläche geraten können. Sie verstärken den natürlichen, aber nicht immer ausreichenden Schutzschild aus Erdstrahlen durch radioaktive Strahlung.

Das sind fünf gute Gründe für Atomkraft. Atomkraft ftw!


Ferien, Zelda, Programmierung

Mon, 21 Jul 2008 01:36:57 +0000

Endlich. Nachdem die Klausuren rum sind, sind auch die meisten anderen Sachen rum, die ich in diesem Semester noch machen muss, und ich kann mich ganz den Sinnlosigkeiten hingeben, bzw. der sonstigen, studienfremden Arbeit.

Und natürlich dem Zelda-Spielen, aktuell Twilight Princess, welches ich bisher definitiv nicht als das beste Zelda-Spiel, das ich kenne, empfinde, auch wenn es oft von “Fans” so gehandelt wird (dazu vielleicht ein andern Mal mehr). Aktuell stecke ich in Selbigem an einer Stelle mehr oder weniger fest, bin aber immernoch zu arrogant, in irgendeinem Walkthrough nachzulesen. Nach mehr als 2 Stunden frustriertem herumsuchen im großen neuen Hyrule nach irgendeiner Möglichkeit, in die Tiefen des Waldes von Phirone hervorzudringen, um – welch eine Neuigkeit – “das legendäre Master-Schwert” zu finden, eingedenk der Tatsache, vermutlich einfach irgendeine Offensichtlichkeit oder irgendeinen Hinweis nicht beachtet zu haben, habe ich es aufgegeben, und mich an die Programmierung meines eigenen Spiels gemacht.

Sichtbare Neuerungen gibt es nicht, aber am Backend hat sich etwas geändert: Man kann jetzt die Bilddateien erst in ein Byte-Array (unsigned-byte 8) einlesen, und dann – mittels sdl:rwops – das Image laden. Bis vorgestern hatte ich mir diese Funktion weitestgehend selber erhackt, mit ein wenig Unterstützung der application-builder Mailinglist. Schon gestern sind sie meinem Beispiel gefolgt, und haben eine ähnliche Funktion in ihren Wrapper aufgenommen – allerdings etwas weniger Hackig, als meine Funktion. load-image kann man jetzt auch einen vector übergeben. Das ist schön, und ich habe es gleich benutzt, und meinen eigenen Code diesbezüglich gekekst.

Das nenn ich Service! Sowas kriegt man so schnell wohl von keinem kommerziellen Softwareanbieter.

Nun, warum ist es gut, Bilddateien ganz einzulesen, und erst dann sdl-image laden zu lassen? Ganz einfach: Ein ausführbarer Coredump, gemacht mit SBCL, hat bei mir immer ca. 28 MB, auch nachdem ich die Bilder geladen habe – und freilich ist es schön, nicht so viele externe Dateien zu haben. Wie es mit CLISP aussieht, weiß ich nicht. Gehen tut es auf jeden Fall, ich schätze aber, da CLISP etwas sparsamer diesbezüglich ist, wird der Coredump doch größer werden, wenn man die Bilder geladen hat. Andererseits hat man die Bilder dann “gleich mit drin”. Es mag sein, dass in der Entwicklungsphase externe Dateien etwas gutes sind. Aber ein fertigcompiliertes Projekt, z.B. für Windaus oder für ein Debian-Paket, ist ggf. auf diese Weise unproblematischer, und schöner.

Schade nur, dass man die Libraries (sdl, sdl-image, etc.) dynamisch laden muss, und nicht zum Beispiel für Windows den Code aus den DLLs mit in den Coredump integrieren kann. Das ist sehr schade, da Windaus in der Regel zu blöd sind, eine DLL in den richtigen Ordner zu kopieren, bzw. wenigstens im selben Ordner wie die ausführbare Datei zu behalten.

Aber wenigstens Bilder, und sicher irgendwann auch Sounddateien, kann man wohl gleich mit einspeichern. Und wo wir grade bei Sound sind… Das wird eh noch ein Geraffel, da ich kaum einen freien Soundeditor bisher wirklich zum Laufen gebracht habe. Das Beste ist immernoch Rosegarden – alle möglichen zusätzlichen Pakete muss man installieren, damit das Ding überhaupt mal davon ausgeht, alles zu können, was es können soll, und mich nicht mit Fehlermeldungen nervt. Und dann – ja, dann schafft es es, meinen PC zum Komplettfreeze zu bringen (scheinbar mittels Jackd – ein Soundserver), was schon eine Meisterleistung ist, die sonst nur das Kernelmodul von nvidia hinbekommt.


Infixschreibweise für Common-Lisp

Thu, 17 Jul 2008 15:57:02 +0000

Ein sehr großer Kritikpunkt, den man immer wieder von Nicht-Lispern über Lisp hört, ist der Mangel an einer Infix-Notation. Infix-Notationen und sonstiger Syntaktischer Zucker machen einen Parser zwar komplizierter, aber können scheinbar den Code lesbarer machen(wenn man bescheuert ist).

Das sieht man besonders gut an gängigem C-Code, der ja bekanntlich vor Übersichtlichkeit nur so strotzt.

Common Lisp sei jedenfalls eine schlechte Sprache – denn die S-Ausdrücke, die man von Lisp kennt, sind kontraintuitiv. Außerdem hat Lisp keinen syntaktischen Zucker (zumindest habe ich diese Meinung von jemandem gehört, der scheinbar irgendwann dazu gezwungen wurde, Scheme zu lernen – ich rede hier von Common Lisp, nicht von Lisp oder Scheme, und ja, da gibt es einen Unterschied, Lisp ist der Sprachenstamm, und Scheme hat einen Standard, der wohl ungefähr ein zwanzigstel der Länge des Common-Lisp-Standards haben dürfte).

Nun, Common Lisp hat einen Mechanismus, um sich syntaktischen Zucker quasi selbst zu definieren. Diese Technologie wird selten genutzt, ist aber sehr praktisch. Mit ebendieser Technologie (ich benutze bewusst das Wort “Technologie”, da man jeden Web-Schrott inzwischen als “Technologie” bezeichnet) kann man quasi die Syntax von Common Lisp erweitern. Die Technologie nennt sich Reader Macro, also Lesemacro. Wer genaueres wissen will, der lese sich die Dokumentation durch.

Definiert habe ich ein Lesemacro, das an den Character ‘<’ gebunden ist – ich hätte es auch an ‘(‘ binden können, Klammern sind die Standardnotation für Instruktionen unter CL, aber das wollte ich – aus Debugtechnischen Gründen, und weil ich generell gerne auch Instruktionen eingeben können will, die nicht durch mein Macro gehen – nicht, aber ob man nun <anweisung> oder (anweisung) schreibt, ist wohl egal.

Ähnlich wie in SML kann man eine Reihe von Infix-Symbolen definieren, allerdings nicht durch einen speziellen Befehl, sondern, indem man die Symbole in eine Liste *infix-symbols* pusht. Die Präferenz wird – auch anders als in SML – nicht durch eine Zahl bestimmt, sondern dadurch, an welcher Stelle in *infix-symbols* das Symbol steht. Rechtsassoziativität und Linksassoziativität muss man nicht unterscheiden, denn ein Term der Form a + b + c wird nicht, wie man vielleicht erwarten würde, in (+ a (+ b c)) oder (+ (+ a b) c) umgewandelt, sondern in (+ a b c), d.h., das Symbol muss zu einer Funktion passen, die sich selbst um die Assoziativität kümmert – das ist rein Effizienztechnisch sinnvoll, oft kann man so einiges im Vorhinein optimieren.

Nundenn, fangen wir an: Ich befinde mich in einer REPL (“Shell”) von SBCL. Zur Erklärung: Hinter “CL-USER>” steht der Befehl, den ich gerade eingebe, darunter die Ausgabe, z.B. das Ergebnis. Zuerst setze ich mal *infix-table* auf einen einigermaßen sinnvollen Wert (einige Symbole brauch ich erst am Ende dessen, was ich zeigen will):

CL-USER> (setf *infix-symbols* '(DEFUN IF FACT PROGN FORMAT = + - * EXPT))
(DEFUN IF FACT PROGN FORMAT = + - * EXPT)

Sehr schön soweit. Jetzt testen wir mal mein Macro:

CL-USER> < 2 + 2 >
4
CL-USER> < 2 * 5 >
10
CL-USER> < 2 * 3 expt 4 >
162

Wundervoll. Einfache Sachen kriegt er also hin. Auch folgendes geht:

CL-USER> < 2 = 2 >
T
CL-USER> < 2 = 71 >
NIL

T steht in dem Fall für “True”, NIL für “False”. Nun, mein Macro bevorzugt Infixe – heißt, wenn der zweite Ausdruck ein Infix-Symbol ist, dann wird der gesamte Ausdruck als Infix ausgewertet. Wenn nicht, wird der erste Ausdruck wie bei normalen S-Ausdrücken, als Instruktionsname genutzt. Man kann also auch sowas schreiben wie

CL-USER> < expt 2 * 5 2 * 5 >
10000000000

Das wird umgewandelt in (expt (* 5 2) (* 5 2)), da 2 kein Infix-Symbol ist. Diese Syntax ist in jedem Fall uneindeutig – ich bevorzuge im Zweifelsfall eben Infixe, man könnte auch Präfixe im Zweifelsfall bevorzugen, eine Frage des Geschmacks.

Ein noch ersprießlicheres Script kriegt man mit der Format-Anweisung. Format ist ein CL-Adäquat für die C-Funktion printf. Man übergibt ihr zwei Argumente, das erste gibt an, wohin geschrieben wird, das zweite (und die restlichen Argumente, die sind jetzt aber erstmal unwichtig), was geschrieben wird. T als zweites Argument steht für den Standard-Output.

CL-USER> (format t "Hallo Welt")
Hallo Welt
NIL
CL-USER> < t format "Hallo Welt infixed" >
Hallo Welt infixed
NIL

Na, da staunt man… stderr sprintf “Hallo Welt infixed”; kann man in C nicht schreiben… Genausowenig kann man überhaupt neue Infixe definieren – dass man wenigstens die vorhandenen Infixe überladen kann, ist eine Neuerung gewesen in C++. Dabei sind doch Infixe so intuitiv. Doch es geht noch weiter. Die Funktion “defun” wird unter CL dazu benutzt, funktionen zu definieren. Wir können eine rekursive Fakultätsfunktion wie folgt definieren:

CL-USER> (defun fact (n) (if (= n 0) 1 (* n (fact (- n 1)))))
FACT
CL-USER> (fact 5)
120

Iiiiiegitt. Wie hässlich. Präfixschreibweise. Saubere S-Ausdrücke. Nein, sowas kann der IT-Experte nicht ertragen. In Infix-Schreibweise ist das doch viel schöner:

CL-USER> <fact defun (n . nil) defun n = 0 if 1 if n * <fact n - 1 > >
FACT
CL-USER> < fact 5 >
120

Mein Beitrag zur Übersichtlichkeit. Wer den Code haben will -> melden.

Den sich wundernden C++-Kundigen Informatiker, weise ich nochmals darauf hin: Diese gesamte Syntax-Struktur wurde von mir selbst definiert. Dazu musste ich nicht den Compiler patchen, sondern es reichte, die Reader-Macro-Facilities zu benutzen (heißt, ein paar Zeilen mehr eintippen, als ich hier Gepostet habe). Man kann damit auch andere lustige Sachen machen – wie gesagt, man kann, wenn man sich genug Mühe gibt, nahezu beliebige neue Syntaxstrukturen definieren. Das ist nur selten wirklich sinnvoll, aber es gibt Situationen. Außerdem macht es die Sprache erweiterbar, und damit um einiges “Mächtiger”, als C und C++, und das ohne relevante Kosten im Sinne von Laufzeit – im Gegenteil, die Compilierzeit kann sich in Extremfällen ein wenig verlängern (was daran liegt, dass ich das Macro nicht sehr efficient geschrieben habe, war mir egal), zur Laufzeit kann man damit aber sogar Vorteile herausholen, eventuell (wobei sich dazu wohl eher die Technologie der Compiler Macros benutzen lässt, auch etwas, was C nur in Spuren hat). Man gibt hier außerdem nicht Code in Form von Strings zurück, sondern in Form von “Forms”, vereinfacht ausgedrückt sind das Listen, die den Code repräsentieren.

Meiner Meinung nach ist diese Technologie zumindest in etwas abgeschwächter, hässlicherer und unsicherer, bzw. hässliche nichtssagende Compilierfehler produzierenden Form, theoretisch auch in C zugänglich, wenn man den Compiler entsprechend erweitern würde – Lesemacros brauchen ja nicht unbedingt starke Optimierung bei der Compilierung. Und meiner Meinung nach würde sie C oder wenigstens C++ auch garnicht unbedingt schaden. Vor Allem aber bei sämtlichen Scriptsprachen, bei denen so ein Mechanismus eigentlich relativ trivial implementierbar sein müsste, zum Beispiel das relativ aufgeschlossene Perl frage ich mich, warum sie nicht soetwas implementieren.


“Gangsta Rap”

Thu, 17 Jul 2008 14:58:10 +0000

Ich persönlich konnte ja mit der gesamten “Black Music” Szene, im Sinne von Gospeln, Jazz und Hip Hop (das gehört meines Wissens alles zu diesem Begriff – vielleicht habe ich den Begriff auch missverstanden, dann bitte Kommentieren – meinen tue ich die Musik, die man überwiegend mit Klischees über farbige Menschen in verbindung bringt, also eigentlich ein rassistischer Sammelbegriff, aber ich habe ihn nicht erfunden), nie besonders viel anfangen. Nicht, dass es keine Lieder gäbe, die mir gefielen, es gibt nur vergleichsweise wenige. Nunja, Musikgeschmack ist verschieden, und ich hoffe mal, kein Farbiger, der das eventuell liest, fühlt sich deswegen irgendwie angegriffen – immerhin stammen große Teile des modernen Techno und Elektropop von “Farbigen” Personen aus den 80er Jahren, nur dass man diese Musik seltsamerweise nicht dazuzählt, und unter dieser Musik gibt es relativ viel, was mir gefällt.
Was ich aber überhaupt nicht ausstehen kann, ist der moderne deutsche “Gangsta Rap”. Wenn ich mir die amerikanischen “Gangsta Rapper” anschaue, nunja, da sehe ich wenigstens irgendwie meistens etwas, was zusammenpasst, auch wenn es mir nicht gefällt. Es mag daran liegen, dass ich deutsch nativ verstehe, und somit merke, von welchem Schrott die Rapper singen, aber jedenfalls finde ich das irgendwie… Unpassend.
Naja, wie dem auch sei. Wem es gefällt, der möge es hören. Anderen gefällt elektrische Musik nicht, und den Leuten, die gerne damit angeben, dass sie einer höheren Schicht angehören, gefällt das alles nicht, und sie hören ausschließlich Opern oder Chorgesang, aber auch das sei erlaubt.

So wie ich – als “Laie” – es verstanden habe, versuchen die meisten “Gangsta Rapper” in gewisser Weise ein Image zu haben, das sich “gegen das System” streubt. Wikipedia gibt darüber leider keinen weiteren Aufschluss (bzw. ich bin zu faul, mir den ganzen Artikel jetzt durchzulesen), aber ich habe halt den Eindruck. Ein scheinbar sehr bekannter solcher Gangsta-Rapper, dessen Name sogar mir ein Begriff war, scheint Bushido zu sein. Und von ebendiesem Rapper las ich heute sehr überrascht diesen Artikel bei Heise. Erstmal gleich ein tolles Zitat, das bei mir für einen kleinen Lacher gesorgt hat:

Ein Rentner hatte erklärt, er wisse gar nicht, wer oder was Bushido sei und habe auch kein Programm, um Musik aus dem Internet herunterzuladen.

Was für eine Überraschung. Jedenfalls hat Bushido laut Heise die Leute verklagt, die sich – zumindest mutmaßlich – dessen Lieder illegal aus dem Internet heruntergeladen haben, so wie ich das verstehe. Der Gangsta, der – laut Wikipedia – dazu verdonnert wurde, entweder eine Ausbildung zum Maler zu machen, oder ins Gefängnis gekommen wäre, verklagt ein paar Leute, weil sie sich seine Musik heruntergeladen haben.

Alda, deine Muddha hat sich meine Songs gezogen! Alles voll Anti! Gegen das System!

Nun, ich bin mir sicher, auch andere “Gangsta” mit Plattenlabel würden sich ähnlich verhalten, vielleicht würden die ja, um ihr Image zu bewahren, wenigstens anderen Leuten das Verklagen überlassen.

Täusche ich mich, oder befindet sich in dieser Situation eine gewisse Ironie?


Grundschulmathematik…

Fri, 11 Jul 2008 23:16:30 +0000

“Sind Sie noch fit in Grundschul-Mathe?” – diese Frage stellt GMX anscheinend gerade, siehe http://portal.gmx.net/de/themen/beruf/quiz/6254438,cc=000000055900062544381Xhze1.html. Ich gebe zu, ich konnte es mir nicht verkneifen, dieses Teil mal auszuprobieren, obwohl ich ziemlich überzeugt davon war, dass ich das Zeug wohl noch können sollte. Nunja, ich kann wohl das meiste noch, die Leute, die diesen Test verfasst haben, anscheinend nicht. Zumindest einigen Fragen nach zu urteilen.

Die erste Frage, die mich etwas irritiert hat, war die Frage nach der “Umkehrzahl” von 85. Nun, ich habe geraten und 58 gewählt. Sollten diese “Umkehrzahlen” wirklich in Grundschulen gelehrt werden, frage ich mich nach deren pädagogischem Sinn, abgesehen davon, die Schüler zu verwirren, und es ihnen zu erschweren, sich die korrekte Reihenfolge der Ziffern in einer Zahl zu merken.

Dann kam folgende Frage (Zitat):
Welche Symmetrieeigenschaft trifft auf Vierecke NICHT zu?

  • Die Diagonalen sind unterschiedlich lang
  • Die Diagonalen halbieren sich
  • Die Diagonalen sind orthogonal zueinander

Hm… Die Diagonalen in Vierecken können durchaus unterschiedlich lang sein (siehe Drachenvierecke), ich sehe auch nicht, warum das eine “Symmetrieeigenschaft” sein soll. Die Diagonalen müssen aber nicht unterschiedlich lang sein. Die Diagonalen halbieren sich auch nicht notwendig (auch hierin sehe ich keine “Symmetrieeigenschaft”, aber mei), können das aber tun. Die Diagonalen können auch orthogonal zueinander stehen… Müssen aber nicht. Äh… Also gut, bei dieser Frage habe ich einfach irgendetwas angewählt. Der Autor meint, die Antwort “Die Diagonalen sind orthogonal zueinander” sei die richtige Lösung – und ich habe keinerlei Ahnung, woher diese Antwort kommt. Selbst der übliche Fehler Viereck=Quadrat fasst hier nicht Fuß. Naja, vielleicht Viereck=Rechteck. Wie dem auch sei.

Nächste Frage, bei der ich mich gefragt habe, was sie soll (Zitat):
Sie haben die Aufgabe 12 : 4 = 3. Welche Aussage stimmt?

  • Der Divisor 4 repräsentiert die Anzahl der Teilmengen.
  • Der Divisor 4 repräsentiert die Anzahl der Elemente einer Teilmenge.
  • Der Divisor 4 repräsentiert die Summe.

Anzahl der Teilmengen? Anzahl der Elemente einer Teilmenge? Summe? WTF? Gewünschte Antwort: “Der Divisor 4 repräsentiert die Anzahl der Teilmengen.” (hab ich sogar richtig geraten, juhu, ich kann gut raten!). Vermutlich mischt sich hier irgendein ungeordneter Gedanke an irgendeine “Menge mit 12 Elementen, die man in Mengen mit 4 Elementen zerlegt” oder so, mit. Die Antwort ist aber auch dann nicht eindeutig, wenn ich eine Menge mit 12 Elementen in disjunkte Mengen mit 4 Elementen “teile”, erhalte ich 3 Mengen – aber auch wenn ich eine Menge mit 12 Elemente in 4 disjunkte gleichgroße Mengen aufteile, hat jede der Mengen jeweils 3 Elemente. 12 : 4 = 3, und 12 : 3 = 4 – aber diese Tatsache scheint wohl hier nicht bekannt zu sein.

Eine weitere Frage (Zitat):
Der Innenwinkel eines Dreiecks ist ein…

  • spitzer Winkel.
  • rechter Winkel.
  • stumpfer Winkel.

Ich weiß nicht, wie sie “den Innenwinkel” definieren, aber ein Innenwinkel ist für mich ein Winkel, der im Inneren des Dreiecks liegt – jetzt mal naiv ausgedrückt. Und der kann sowohl spitz (< 90°) als auch stumpf (> 90°) sein, soweit es mir bekannt ist, jedenfalls. Naja, sie meinen, die korrekte Antwort sei “Spitzer Winkel”. Ok, damit kann ich leben. Vermutlich verwechseln sie einfach Stumpf mit Überstumpf (> 180°).

Das war jetzt nur mal ein kleiner Auszug, ein paar Fragen sind ja sogar korrekt. Man kann ja von Journalisten nicht erwarten, dass sie das unnütze Wissen aus der Grundschule noch besitzen, sie haben so viel wichtigere Dinge zu tun.

Edit: Bitte meinen Nachtrag beachten.


Namensänderung des Blogs / WTF ist ein Bühl?

Mon, 07 Jul 2008 01:18:39 +0000

Hallo.

Nachdem ich vor einigen Tagen nichts besseres zu tun hatte (bzw. nichts besseres tun wollte), als mir darüber Gedanken zu machen, warum es so viele Ortsnamen mit dem Suffix -bühl gibt, z.B. Lindenbühl, Birkenbühl, Buchenbühl, Bühl, Dinkelsbühl, schaute ich in einem (sehr) alten Duden nach, ob er das Wort “Bühl” kennt. Nun, er kannte es nicht.

Dafür kannte er ein interessantes anderes Wort. Ein Wort, von dem ich nie gedacht hätte, dass es ein deutsches Wort sein kann. Das Wort “Bülbül, laut meinem Duden eine persische Nachtigall, dem gibt Wikipedia anscheinend recht. Dementsprechend ist der Satz “Frei wie ein Bülbül flieg ich durch die Lüfte” ein korrekter deutscher Satz, mit korrekten deutschen Wörtern.

Nunja, das war aber freilich nicht das, was ich gesucht habe. Und so befragte ich meine Mutter und Wikipedia, beide meinten, es handle sich um eine alte Bezeichnug für “Erhöhung”, “Hügel”, etc. – und tatsächlich, ein Bühl scheint eine Erhöhung zu sein, die meist mit irgendeiner bestimmten Pflanze bewachsen ist, vorzugsweise mit Bäumen. Daher die vielen Namen wie Birkenbühl, Buchenbühl, Lindenbühl.

Dieses Konzept muss ich freilich fortsetzen, insbesondere, nachdem ich bemerkt habe, dass der bisherige Name “Ein Schmierblog” doch ein wenig weniger unverbreitet ist, als ich gedacht habe, und Individualität sehr wichtig ist, und je specieller ein Name, desto einprägsamer ist er – doch für welchen Baum soll ich mich entscheiden?

Nunja, “Apfelbaumbühl” oder kürzer “Apfelbühl” klingt nicht so optimal, “Kirschbühl” klingt irgendwie nach einem Erfrischungsgetränk meiner Meinung nach, und das wäre es bestimmt auch, wenn wir noch Mittelhochteutsch reden würden, denn dieser Name ist kurz und einprägsam, das hätte der Kommerz wohl längst entdeckt. Allgemein wachsen meine lieblingsfrüchte eigentlich eher an Büschen, ok, Dinkelsbühl folgt dem Konzept anscheinend auch nicht, und bezieht sich vermutlich auf das Getreide, aber ich muss es ja nicht unbedingt brechen. In meinem Garten steht ein “Holunderbaum”, ein ziemlich entarteter Busch, der eher Baumform hat – auch etwas, was man nicht alle Tage sieht, schon ewig alt, und man könnte ihn wirklich für einen Baum halten, wenn man nicht wüsste, dass es sich um einen Busch handelt (wo genau da der botanische Unterschied ist, weiß ich allerdings nicht, für mich ist der Unterschied einfach, dass ein Busch selten einen sichtbaren Stamm hat, dieser Holunderbusch hat jedoch eine Form, die einen Stamm – wenn auch nicht im botanischen Sinne – erkennen lässt, eine wirklich schöne Pflanze, wäre es jetzt nicht Nacht, ich würde sie wohl gleich fotografieren und das Foto hier posten, naja, vielleicht ein anderes Mal), diese erstaunliche Pflanze könnte ich also freilich mit dem Namen “Holunderbühl” ehren, aber das würde dann wohl falsche Erwartungen an meinen Blog erzeugen, da ich thematisch zwar auch auf Gartenthemen zu sprechen komme, aber nicht unbedingt hauptsächlich.

Nein, etwas anderes muss her. Bäume gibt es ja genug, auch außerhalb der Natur hat man sich einer relativ schönen Eigenschaft, der die meisten Bäume genügen, bedient, und Objekte mit dieser Eigenschaft ebenfalls gleich selbst als Bäume bezeichnet – ich rede von Zyklenfreien, zusammenhängenden Graphen, und solche kommen in der Mathematik und in der Informatik häufig vor.

Der erste Baum, den ich ausgewählt hatte, war der Collatz-Baum. Dementsprechend war Collatzbühl meine erste Inspiration. Ich wurde allerdings auf die typographische Ähnlichkeit von “Collatz” und “Kotz” aufmerksam gemacht, dementsprechend – um die Unkundigen zu schonen – habe ich das gelassen. Einige weitere Bäume, die mir nicht so recht gefielen, fand ich noch, bis ich zum Dijkstra-Baum kam. Der Dijkstra-Baum ist der Baum, der aus allen kürzesten Wegen eines Knotens bis zu jedem anderen in einem Graphen besteht.

Und so kam es zu dem Namen “Dijkstrabühl” – eben eine Erhebung, auf der ein Dijkstra-Baum wächst. Eine nette kleine Grafik auf der Blog-Seite, die eine solche Erhebung darstellen soll, auf der ein Dijkstra-Baum wächst, habe ich auch mit dem lieblichen GNU Image Manipulation Program gemacht (ein richtig gutes Programm, ganz anders als Firefox).

Der Inhalt des Blogs wird sich deswegen aber wohl nicht ändern. Lediglich der Name ist eindeutiger.


Was so alles in meinem Garten wächst – 3

Sun, 06 Jul 2008 22:55:24 +0000

Nunja, sowas sieht man auch nicht alle Tage: Ein blühender Kaktus. In unseren Gefilden doch eher eine Seltenheit. Allgemein blühen in Letzter Zeit hier viele Sukkulenten, liegt vielleicht am Klima, keine Ahnung. Jedenfalls ist die Blüte heute aufgegangen. Ich habe Bilder gemacht:

Blühender Kaktus von oben.

und

Blühender Kaktus, Seitenansicht.

Sehr schön. Ich kenne mich nicht weiter aus, aber es scheint sich, dem Bild nach zu urteilen, um eine Opuntia fragilis zu handeln. Gut zu wissen, was das für Pflanzen sind, die man so hat. Naja, ich gestehe, ich selber kenne mich nicht so mit Pflanzen aus, aber ist doch trotzdem schön. Sukkulenten finde ich eh irgendwie faszinierend. Kommen mit einem Minimum an Pflege aus, wohl einfach, weil sie in extremen Bedingungen leben, zumindest normalerweise. Da haben es die einheimischen Pflanzenarten schon leichter. Die sind dafür auch erheblich weniger Robust.

Verglichen mit höheren Lebewesen wie uns sind die Pflanzen aber trotzdem allgemein irgendwie erheblich Robuster. Wenn ich sehe, dass man mit relativ wenig Aufwand aus relativ kleinen Pflanzenteilen neue Pflanzen züchten kann. Und manche Pflanzen sich sogar autonom aus Teilen einer alten Pflanze entwickeln. Leben ist unverwüstlich – naja, zumindest unter vielen Bedingungen, wohl dann doch nicht unter allen. Aber trotzdem erstaunlich.


Follow

Bekomme jeden neuen Artikel in deinen Posteingang.