Fallen

Beim Fallen geht es im Aikido darum, das unvermeidliche zu akzeptieren und aktiv mitzugestalten.

Wenn ich (richtig) geworfen werde, führt jeder Versuch, mich zu sperren, nur zu Schmerzen. Der Werfende ist im wahrsten Sinne des Wortes am längeren Hebel: Große Muskeln gegen kleine Muskeln, Gelenke im optimalen Funktionsbereich gegen Gelenke am Limit, stabiler Stand gegen unsicheres Gleichgewicht.

Nach unten geht es so oder so; oder vielleicht bleibe ich oben, um den Preis, dass meine Sehnen überdehnt werden. (Oder beim Aikido-Training wahrscheinlicher: Der Werfende bemerkt rechtzeitig, dass ich nicht mitgehe, und bricht die Übung ab.)

Mit einem klaren Bild davon, wie man heil nach unten kommt, bleibt man erstens unverletzt und zweitens nicht lange unten. Die Rollen im Aikido sind darauf ausgelegt, einen möglichst schnell wieder auf die Beine zu bekommen, um erneut angreifen (oder fliehen) zu können. Und auch im Aikido gibt es Gegentechniken: Wenn ich als Fallender so gut mitgegangen bin, dass ich meine Integrität (R.Keller) bzw. Souveränität (W.Sambrowski) gewahrt habe, bin ich in der Position, eine Schwäche des Werfenden zu nutzen und die Rollen umzukehren.

Fallen erfordert Mut. Die Demut, zu akzeptieren, dass man nicht aufrecht stehenbleiben kann; die Zuversicht, mit der Situation umgehen zu können; das Vertrauen in den Werfenden, dass er mich wirklich werfen will (und kann) und nicht meine Gelenke kaputtmacht (mit oder ohne Absicht); die Selbstachtung, selbst im freien Fall nicht alles aufzugeben; und die Bescheidenheit, nicht möglichst hart und spektakulär, sondern möglichst sanft zu landen.

“Da kann man mal drüber nachdenken.” (R.Kügler)

Just say No to XML

Allen Holub sagt: Just Say No to XML. XML sei klobig, und wer XML für Konfiguration etc. nutzt, ist nur zu faul, Compilerbau zu lernen.

Dazu meine ich: No.

Nein, es hat keinen Sinn, dass sich jeder seinen eigenen Scanner, Parser, syntax-bewussten Editor, Debugger, Pretty Printer etc. baut. Das ist es, was man im traditionellen Compiler-Bau lernt. Vermutlich auch in dem Buch, das Allen Holub in dem Artikel plugt (“By the way, my own…”). Insbesondere hat es wenig Wert, einen eigenen Scanner mit eigenen Regeln für Tokens und Kommentare entwerfen zu müssen, wenn man eigentlich nur eine Datenstruktur wzB einen struts-Kontrollfluss-Graphen ausdrücken möchte.

Oder auch: Yes.

XML ist viel zu klobig. Eine kompakte erweiterbare Syntax, wie sie Prolog, Lisp und Smalltalk von Anfang an geboten haben, und wie sie heutzutage Ruby bietet, macht da deutlich weniger Schmerzen. Man muss nur ein wenig aufpassen, nicht zu viel Semantik der Turing-mächtigen Wirtssprache in die domänenspezifische Sprache zu übernehmen, sonst ist sie nachher nicht mehr analysierbar, optimierbar, verstehbar, automatisch umschreibbar etc.

Aber warum überhaupt ASCII ? Warum nicht interaktiv im GUI die Datenstrukturen manipulieren, so wie wir es vom Quelltext in IDEA gewohnt sind (achte mal auf Deine Sequenz von Tastendrücken während einer Programmier-Session – mit Programmtext hat das wenig zu tun).

Links zum Thema:

Synthesizer Generator
Jetbrains’ Meta Programming System
Intentional Programming
Subtext

Flickr / WordPress

Auf der Seite Mein Geflicker sind meine bei Flickr abgeladenen Fotos (permanent Beta!) ab sofort direkt unter wuenschenswert.net zu sehen. Featuring: Freunde im Stadtpark, sowie Sonne und Brecher in St.Malo.

Zur technischen Umsetzung: Für WordPress benutze ich das Plugin, das als erstes erscheint, wenn man bei google nach “WordPress Flickr” sucht: http://tantannoodles.com/toolkit/photo-album/.

Um die Fotos aus iPhoto zu Flickr zu schaffen, habe ich FlickrExport benutzt. Sehr bequem, kostet leider ab heute in 29 Tagen Geld. Merkwürdig, dass unter MacOSX jeder Kasper, der ein GUI bauen kann, meint, damit Geld verdienen zu müssen. Aber wenigstens führt das dazu, dass die GUIs nach was aussehen.

Polfilter

Sebastian hatte diesen Polfilter übrig. Gleich mal ausprobiert, was so ein Polfilter macht:

In dem Kreis, der etwa 90 Grad zur Sonne liegt, ist das Licht des Himmels am stärksten polarisiert, und wenn man den Polfilter passend einstellt, wird dieses polarisierte Licht ausgefiltert – der Himmel wird deutlich dunkler. Dadurch kann man eine größere Blende wählen, und die anderen Objekte (im Bild: die Kirche) leuchten auf (siehe z.B. die Turmuhr!).

Weitere schöne Spielereien: TFT-Bildschirme werden dunkel, Reflektionen auf dem Wasser werden gedämpft,…

Sebastian empfahl mit ein kleines Tutorial, wobei ich das mit den circular filters nicht nachvollziehen konnte.

Safari Leo Bookmarklet

Das Original Bookmarklet von dict.leo.org funktionierte bei mir nicht – offenbar benutzt Safari einen anderen Weg, um die aktuelle Selektion zu erfragen. Nachdem das gefixt war, sah der Dialog-Text immernoch eigenartig aus: Die Escape-Sequenzen wurden nicht dekodiert. Grund dafür ist wohl, dass die numerischen Codes keine Unicode- sondern ISO-Latin-irgendwieviel-Codes sind, die Safari als nicht OK einstuft. Auch das lässt sich hinbekommen… und:

Hier das Safari Leo Bookmarklet!

(Benutzung: aufs Bookmarklet klicken, oder Text selektieren und dann aufs Bookmarklet klicken. Und natürlich: den Link als Bookmark in die Personal Toolbar ziehen, sonst ist es nur ein Javascriptlet).