Archive for August, 2005

Heinrich von Pierer

Tuesday, August 30th, 2005

Wie ich gestern schon im tagesschau.de Podcast hörte und heute sowohl in der Zeitung als auch auf tagesschau.de las, ist der gute Heinrich von Pierer nun sowohl einer der Berater Schröders Regierung als auch des Schattenkabinetts (aka ,,Kompetenzteam”) von Frau Merkel.

Schon beim ersten hören musste ich schmunzeln - dachte ich doch an diese Satire auf Zyn.de. Viel Spaß damit, für alle, die sie noch nicht kennen.

Dinge, die ich an Ruby mag #1

Monday, August 29th, 2005

Closures. Closures sind in Ruby Codeblöcke, die an den Kontext gebunden bleiben, in dem sie definiert sind. Diese Blöcke geben ein Ergebnis zurück (notfalls halt nil) und können etwa an Methoden übergeben werden.

Nützliche Beispiele dafür ist etwa die Methode open der Klasse File aus Ruby’s Standardbibliothek. Übergibt man dieser Methode einen Block (zwischen do und end) so wird die Datei geöffnet, der Block ausgeführt und die Datei dann wieder geschlossen:

File.open('/tmp/foo.txt', 'w') do |file|
  file.write("baz!")
  file.write("another baz!")
end

Weitere nützliche Beispiele für diese Blöcke sind etwa Fehlerbehandlungsroutinen. Besonders elegant ist es die Blöcke mit Makros (siehe eine der nächsten DdiaRm Folgen) zu kombinieren.

Diese Codeblöcke sind in etwa das Äquivalent zu Lambdafunktionen in Sprachen, die das Lambdakalkül beherrschen. So kann man das Problem ,,erzeuge einen Akkumulator” elegant lösen. Dabei geht es darum, eine Routine zu schreiben, die einen Wert n erhält und eine Funktion zurück gibt, die einen Wert m erhält und dann die Summe n + m zurück gibt. In Ruby sieht das dann so aus (Proc Objekte sind die ,,wahre” objektorientierte Natur von Codeblöcken):

def create_accu(n)
  return Proc.new { |m| n + m}
end

my_accu = create_accu(10)
puts myaccu.call(2)  # gibt ,,12'' aus

In funktionalen Sprachen geht es ähnlich einfach (hier Haskell):

create_accu n = \m -> x + n

my_accu = create_accu 10
my_accu 2  -- ergibt auch ,,12''

Wer mir vormacht, wie sowas in C, Java, Python usw. ähnlich elegant geht (jaja, C++ kann das auch, wenn man den Funktionsaufrufsoperator überlädt, aber das ist nicht in der Liste, Jörg!), dem schicke ich per Email ein Eis!

You, Cringeley!

Sunday, August 28th, 2005

Als ich mir heute meine tägliche Dosis ,,Data Input” auf Slashdot einverleibte stolperte ich über den zweiten Verweis von /. auf die wöchentliche Kolumne ,,I, Cringeley” des selbsternannten ,,Technik-Guru” Bob Cringely. Dieser schreibt regelmäßig darüber, was er als alter IT-Szene-Checker so für die Zukunft prophezeit.

Cringeley, der sich mit seiner Schreiberei einen wirklich langen virtuellen Penis wachsen lassen hat, kennt ganz Silicon Valley, Redmond und wo auch immer sonst noch große IT-Firmen sitzen. Seine Freunde und Spitzel berichten ihm dann immer sofort von allen Gerüchten, dies in, um, über, unter, links, rechts, vor und hinter Microsoft, Google, Apple, IBM, etc. etc. pp. gibt!

Und weil von seinem virtuellen Penis ja sonst keiner was mitbekommen würde, verrät der gute Bob all diese Insider-Informationen dann der Öffentlichkeit! Juchu!

Wer die Wahrheit über die echten (!) Gründe für Apple’s Wechsel auf Intel-Prozessoren lesen will klickt hier, wen es interessiert, was Google so treibt, der klickt dort nicht. Wer ALLES wissen will, klickt auf folgenden Link: Archiv.

Fantasy Literatur im Herbst

Saturday, August 27th, 2005

Nachdem ich den aktuellen Harry Potter verschlungen habe, kann ich mich schon auf die nächste Welle von Fantasyliteratur freuen:

Der Platz für den hässlichsten Einband des Jahres geht übrigens wie gewöhnlich an das Buch von Geore R.R. Margin (für uneingeweihte: Autor der A Song Of Ice And Fire). Offen bleiben dann noch die Fragen wie lange die Veröffentlichung noch herausgeschoben wird: ,,Das glaube ich erst, wenn ich das Buch in den Händen Halte” (Felix), ob Martins Geschichte weiter so hochklassig ist wie bisher und natürlich, ob Jordan sich selbst wieder mit dem Herumheulen seiner Charaktere übertreffen kann.

Als kleines Schmankerl darf ich übrigens all diejenigen, die noch einen Band der Song and Fire von mir haben versprechen, dass ich ihnen den Storm Of Swords höchstpersönlich bereiten werde, wenn sie sich nicht schnellstmöglichst bei mir melden um mir die Bücher zurückzugeben :). Ich würde nämlich gerne die Serie vor Erscheinen von Band 4 noch einmal lesen.

Tofu… find’ ich gut!

Friday, August 26th, 2005

Und: Nein, ich bin nicht unter die Vegetarier gegangen. Ich spreche vielmehr vom Macintosh-Programm Tofu, einem Text-Anzeigeprogramm für Mac Os X.

Tofu Screenshot

Man kopiert einfach den Text, den man lesen will (etwa einen längeren Artikel einer Webseite) in Tofu hinein (Layout der Webseite nicht mitkopieren, das geht irgendwie schief) und Tofu bricht einem den Text dann in Spalten um. Abgerundet wird die Funktionalität des kostenlosen Programms durch einen Vollbildmodus und optionale Sprachsteuerung.

Ich stieß auf das Programm beim überfliegen der Seite zum Zeitungslayout von Text in CSS 3. Obwohl ich diesem Feature von der zukünftigen Reinkarnation des W3C-Standards etwas kritisch gegenüberstand (wer braucht sowas? wer implementiert sowas?), muss ich sagen, dass ich Tofu doch noch nicht gelöscht habe und gestern sogar den Artikel über Lisp damit las.