Archive for September, 2007

You are currently browsing the Martin en Neukoelln archives for September, 2007.


Abschied heisst doch auch weitergehn, Tränen hat die Trauer, aber auch das Glück

Das ist eine Zeile aus einem Lied von Renft und der Anlass ist mein Abscheid aus Heidelberg. Nun sind die 6 Monate um von denen ich 5 in Heidelberg verbracht habe und ich bin froh wieder nach Berlin zu gehen. Nicht weil mir die Arbeit nicht gefällt, denn sonst hätte ich meinen Vertrag nicht verlängert, sondern weil ich hier nicht heimisch geworden bin und ich mich wieder auf meine Wohnung, Freunde und natürlich auf meine Liebste freue.

Was werde ich vermissen an Heidelberg? Ich glaube, der nur 15 minütige Fahrtweg zur Arbeit, die großen Kaffeemaschinen hier und vielleicht auch das Mittagessen. Ansonsten habe ich nicht immer so viel von Heidelberg gesehen, natürlich ist die Altstadt schön und es gibt einige gute Lokale, doch irgendwie ist mir das alles ein wenig zu klein hier und ich freue mich schon wieder auf den Trubel in Berlin.

Und nun geht es auf zum Jan um mich dort mit dem Jan und dem anderen Jan zu treffen und ein wenig zu…. naja ihr wisst schon, Spass haben und quatschen.

Morgen Abend schlage ich dann wieder in Berlin auf und in nicht ganz einer Woche wird mich die Hektik der Großstadt wohl wieder eingefangen haben.

Ich möchte mich noch einmal ganz herzlich bei den vielen Kollegen hier bedanken, denn auch wenn Großunternehmen nicht immer einfach sind, funktioniert ohne ein kollegiales Verhältnis nichts.

Vielen Dank für die schöne Zeit.

Wie lange sind wir schon ein Paar, dass WWW und ich?

Nachdem ich den Beitrag bei Ghost Dog gelesen habe, musste ich kurz ueberlegen, wie lange ich eigentlich schon in den Untiefen des World Wide Web unterwegs bin und es ist eigentlich schon verdammt lange. Meinen esten eigenen Computer habe ich damals mit 14 Jahren bekommen und dazu gab es dann bei uns in der Familie auch den ersten T-Online Zugang. Wenn ich mich nicht verrechnet habe, dann ist das so ungefaehr 10 oder 11 Jahre her.

Nun gibt es zwei Moeglichkeiten zur Schlussfolgerung, entweder bin ich alt oder das System ;)

Euruko 2007 – European Ruby Conference in Vienna

This years european ruby conference EURUKO will take place in Vienna November 10th and 11th. By today I booked the flight and the hotel and I am really looking forward to see the people and of course will be glad if I can hold my talk about building domain specific languages in Ruby.

Antlr3 C# Target and Exception during Syntax parsing

This was a really hard day. It took me almost half a day to figure out, why syntax errors in my statement are not reported as exceptions back to the user. The base situation is the following: Imagine you wrote your own small domain specific language grammar using the nice tool AntlrWork. Now you wrote a small interpreter for this language and you want to test it. But unfortunately you recognize, that syntax errors are not reported back to the user as exceptions and this is weird.

The reason for this is, that Antlr3 does not want to report the errors but more tries to recover from these errors. The error message itself is written back to the error stream but nowhere else it is reported. The best way now to overcome this issues is to override the reportError method in your Parser with a simple line of code that throws the exception back to the user instead of writing it to the error stream. The C# code for this looks like the following

This was easy, ey?

RailsConf Europe – Fazit und Folien

Nun ist die RailsConf Europe schon ein paar Tage vorbei, doch nun wird es Zeit für ein kleines Fazit dieser Veranstaltung. Insgesamt hat mir die Konferenz gefallen, auch wenn es mir hier und da nicht technisch genug war und ich mir an einigen Stellen mehr Tiefe gewünscht habe. Gerade bei den Tutorials hätte ich mir eine Klassifizierung gewünscht, die es mir erlaubt zu sehen, für welches Niveau dieses Tutorial gedacht ist. Die Vorträge schwankten zwischen spannend und manchmal etwas träge, waren aber alles in allem sehr interessant. Gerade die Professionalität, die ein Unternehmen wie Sun zu dieser Konferenz beigesteuert hat war bemerkenswert. Es ist nun doch noch ein Unterschied, wie lange man schon in Geschäft ist.

Zusätzlich war es noch sehr faszinierend, wie jung das gesamte Publikum war, im Schnitt würde ich sagen höchstens 30 und zusätzlich gab es definitiv mehr Apple Computer in den Sälen als Windows oder Linux PCs zusammen.

Ob ich nächstes Jahr wieder zur RailsConf Europe gehe? Ich weiß es noch nicht, ich denke aber, dass ich definitiv ein Beitrag einreichen werde und dann schaue, wer die Kosten dafür übernimmt. Doch nun steht im November erstmal die EuRuKo in Wien an.

Und nun zum Schluss noch den Link auf die Folien der ganzen Präsentationen.

RCov, Autotest und RSpec

Update: Der unten gezeigt Code kann nun auch Standard Rails Test verarbeiten. Je nachdem ob man RSpec benutzt oder nicht ist einfach die Konstante RSPEC auf true oder false zu setzen.

Nachdem mich der Talk zum Thema Refactoring von Trotter noch ein wenig beschaeftigt hat, habe ich überlegt, wie man die Verbindung von Autotest und Growl noch ein wenig erweitern kann. Bisher ist es ja so, dass Autotest im Hintergrund alle modifizierten Tests ausfuehrt und mittels Growl auf dem Desktop sichtbar gemacht werden kann. Da beim gesamten Test-Driven-Development auch die Testcoverage interessant ist, habe ich Autotest einfach noch um ein wenig Code erweitert um auch die Coverage (C0) fuer den aktuellen Testlauf anzuzeigen.

Dazu einfach die Dateien .autotest im Heimatverzeichnis anlegen und den folgenden Code hineinkopieren:

Die verwendeten Bilder finden sich in dem Blogeintrag der mich dabei inspiriert hat. Wichtig ist es dabei noch anzumerken, dass der Code hier für die Verwendung von RSpec und RSpec on Rails optimiert ist, kann aber ganz einfach und schnell für normale Tests erweitert werden. Link zu den Bildern

RailsConf Europe – Meta Magic in Rails by Dr Nic Williams

Diese Session habe ich wirklich mit Spannung erwartet, da mich auf der einen Seite das Thema Meta-Programming interessiert und auch Dr Nic in der Szene anscheinend nicht ganz unbekannt ist und so war dann auch die Session bis auf den letzten Platz gefüllt und immer mehr Leute standen dann am Rand, hinter und neben den Sitzenden.

Der Vortrag war durchweg sehr humorvoll und wirklich gut gehalten. Primär ging es um eine kurze Vorstellung was Meta-Programming eigentlich ist, sprich Introspection und Reflection. Dabei zog er immer wieder gute Vergleiche zu Java heran. Die genannten Beispiele drehten sich vor allem um:

  • method_missing
  • const_missing
  • class_eval
  • instance_eval

Zu oben genannten Meta-Magic Themen sei vor allem das Projekt Dr Nics Magic Models vorgestellt. Anstatt die Models für Rails wirklich per Hand in eine Datei zu schreiben, wird die Methode const_missing überschrieben und abhängig davon ob eine entsprechende Tabelle vorhanden ist, die entsprechende Klasse dynamisch zur Laufzeit erstellt. Ist das sinnvoll kann man sich fragen? Nein, wahrscheinlich nicht, aber auf der anderen Seite ein sehr schönes Beispiel für Reflection in Ruby.