2 Wochen Ruhe

Die letzten zwei Wochen war es hier auf dem Blog ziemlich still, aber keine Angst, ich lebe noch! Ich war nämlich nur im “grünen Zwangsurlaub” und habe meinen ersten WK gemacht.

Glücklicherweise bin ich im Kp-Büro gelandet und wurde nicht zum Richtstrahler umgeschult, das fand ich eigentlich recht angenehm. Auch wenn einem das ewige Liste-für-irgendwas machen, Telefonieren, Kopieren und Faxen allmählich auf die Nerven geht, so war es doch wenigstens warm und trocken.

Und einen Internetanschluss/WLAN-Accesspoint hatten wir auch, so konnte man dank Zattoo auch im Wachtlokal-Schlafraum Fernseh schauen. Dadurch bin ich leider auch weniger zum Lesen gekommen und mit dem zweiten Buch das ich mitgenommen hatte noch nicht ganz fertig. Nach einem schönen Wochenende mit meinem Schatz freue ich mich auch darauf, am Montag wieder arbeiten zu gehen.
Die Diplomarbeit zu Javascript-Refactoring die ich mitbetreue ist ja bereits abgeschlossen, und das Groovy-Refactoring-Team hat in der Zwischenzeit bestimmt auch schon einiges erreicht. Ausserdem wartet Markus Barchfeld vom Pluginbuilder-Projekt noch auf einen Patch zur Emma-Integration von mir.

Privat muss ich mich im KDE-Land orientieren und den Anschluss wieder finden, in nicht mal mehr zwei Wochen soll KDE 4.0 fertig werden! Vielleicht kann ich noch den einen oder anderen Bug beseitigen.
Etwas Arbeit steht auch hier im Blog noch an, ich möchte nämich endlich auf Wordpress 2.3 upgraden, aber mein aktuelles Theme ist glaube ich nicht “2.3-ready”. Ausserdem hab ich schon lange keine Shell-Tipps mehr gebloggt..

2 comments »

CodeGear’s 3rdRail

CodeGear (von Borland) bietet neuerdings eine eigene, kostenpflichtige, Rails-IDE namens 3rd Rail auf Basis des DLTK-Ruby Projektes an. In den Produkt-Features werden grossartige Refactoring-Möglichkeiten angekündigt, deshalb habe ich mir mal die 30-Tage Demo-Version heruntergeladen.

Improve and simplify application design with 3rdRail’s refactoring tools to reorganize application code without changing results.

Von Haus aus bietet DLTK-Ruby bereits ein paar Refactorings, und zwar das Verschieben von Code (static method, field und instance method, ich habs aber bisher nie erfolgreich anwenden können) und das Umbenennen von gewissen Elementen. Unter 3rd Rail sieht das Menu nun so aus:

3rdrail_refactoringmenu.png

Ja das ist alles.. und wies aussieht, kann man damit genau Actions umbenennen, mehr habe ich nicht hinbekommen. Ich glaube, die hätten wohl auch besser unsere Plug-ins genommen, bzw. würden uns etwas sponsoren für die Rails-spezifischen Refactorings.

Zudem wundere ich mich über folgendes Zitat auf der Produkteseite:

… 3rdRail gives me [blabla] and refactoring that make me insanely productive

Oder auch DHH’s Aussage:

This opens up a whole new world for things like advanced refactorings …

Verstehe ich nicht ganz, was genau soll jetzt 3rd Rail im Gegensatz zum normalen RDT oder DLTK krasses bieten?

No comment »

OpenExpo, Tag 1

Wie angekündigt, war ich heute Morgen an unserem Stand an der OpenExpo, und es war alles andere als langweilig :) . Der Stand war schnell aufgebaut, WLAN funktionierte auch und so ab halb 10 waren schon einige Besucher anwesend.

Ich hatte einige interessante Gespräche mit den verschiedensten Leuten: Von Schülern (potentiellen Studenten) über Gentoo-Entwicklern, Ex-Mitstudenten, IBM-Managern, C++-, Ruby-, Python-Programmierer und Postgres-interessierten Senioren war alles dabei. Lustierweise war bei uns auch viel mehr los als nebenan bei den Firmenständen, das war zumindest mein Eindruck.

Fotos (von uns) habe ich zum jetztigen Zeitpunkt leider noch keine gefunden.

Morgen bin ich dann eigentlich wieder den ganzen Tag dort, werde aber ab und zu für den einen oder andere Vortrag “abschleichen” ;-) .

5 comments »

OpenExpo 2007

Ich möchte gerne noch etwas Werbung machen :) . Und zwar findet am Mittwoch und Donnerstag die OpenExpo in Zürich statt. Ich werde dabei das Institut für Software sowie Prof. Stefan Keller’s Postgres Stand am Mittwoch Morgen sowie am Donnerstag zeitweise betreuen. Damit es mir nicht zu langweilig wird wäre ich doch sehr froh, wenn ab und zu mal jemand vorbeikommen und nach mir schauen könnte ;) Ausserdem habe ich mir sehr viel Mühe mit den Plakaten gemacht:

openexpo_postgres_plakat_klein.png

Und dann noch das für unsere anderen Projekte:

openexpo_ifs_plakat_klein.png

Ausserdem bin ich mit Massenhaft Kugelschreibern und andere Werbematerialien eingedeckt – ich hoffe, das lenkt davon ab, dass ich eigentlich nicht so der Postgres-Experte bin :) Aber dafür haben wir ja am Donnerstag Stefan Keller am Stand.

6 comments »

C++ Refactoring Plug-in for CDT: Milestone 1 released

Es ist so weit, nach einigen Monaten Entwicklungszeit haben wir heute den ersten Milestone vom C++ Refactoring-Plug-In fürs CDT erreicht und veröffentlicht. Am einfachsten ist es wohl, einfach ein Eclipse 3.3 mit CDT zu nehmen und dann über die Update Site unser Plug-In zu installieren.

Also, einfach mal ausprobieren und uns bitte Bugs melden :-) . Aber bitte gnädig sein, es ist erst Milestone 1.

Auf ausdrücklichen Wunsch von Emanuel soll ich hier noch erwähnen: Er ist der Chef!

5 comments »

webtuesday@tilllate.com

Ich weiss nicht ob es noch Leute gibt die noch nichts davon gehört haben, aber Leo und ich waren heute mit einer Präsentation zum Thema Refactoring beim Webtuesday.

Wer nicht da war oder die Folien nochmals sehen will: hier bitteschön. Ich hatte eigentlich ein recht gutes Gefühl, und es scheint auch gut angekommen zu sein. Und verstanden hat man uns offensichtlich auch :-) .

1 comment »

Implement Method für CDT

Seit bald drei Wochen arbeite ich auch am CDT Refactoring Plug-In mit und habe meinen ersten Task abgeschlossen, und zwar ‘Implement Method’. Das ist zwar kein Refactoring, aber trotzdem sehr nützlich. Es geht darum, aus einer Methodendeklaration die entsprechende Implementation zu erstellen. Man muss also nicht mehr den Methodennamen kopieren, ins .cpp File wechseln, einfügen und anpassen, sondern erledigt dies mit einem Tastendruck (ok, 3 Tasten).

Am besten einfach mal den Screencast den ich gemacht habe anschauen um alle Features zu sehen.

Der erste Release ist schon Ende nächster Woche, ab dann wird es auch einen Download für CDT 4.0 geben.

No comment »

Ich bin KDE Entwickler!

Ja genau, seit gestern bin ich ein richtiger KDE-Entwickler. Zumindest habe ich Commit-Rechte erhalten und muss nun nicht mehr Patches an die Mailingliste senden und warten bis sich jemand erbarmt und sie anwendet.

Nun was habe ich eigentlich vor? KDE 4.0 sollte noch dieses Jahr erscheinen und es gibt noch viel zu tun, also weshalb nicht einfach mithelfen? Zudem die eingerosteten C++-Kenntnisse wieder auffrischen und ausserdem noch Weltruhm erlangen.. Nein warte, den hab ich doch schon ;-) .

Ein weiterer Vorteil ist natürlich, dass ich so das CDT auch mal von der anderen Seite sehe, also wirklich als User und nicht nur als Refactoring-Plug-In Entwickler. Eat your own dog food!

Ach ja, momentan arbeite ich an Kate, der Editor-Komponente von KDE, und flicke das Syntax-Highlighting. Aber dazu ein anderes Mal mehr..

8 comments »

Eclipse 3.3 Europa

Endlich ist es so weit: Nach einem Jahr wurde soeben der neuste Eclipse Release namens Europa freigegeben. Den Download gibt es hier, vielleicht braucht es aber ein wenig Geduld, da der Ansturm bestimmt gross sein wird.

Ich arbeite seit M3 mit Eclipse 3.3, deshalb habe ich mich an die meisten neuen Features bereits gewöhnt, für diejenigen die noch bei 3.2 sind hier mal die meiner Meinung nach wichtigsten Features:

h4. Save Actions

Sehr nützlich sind die neuen Save Actions (Java -> Editor -> Save Actions), insbesondere um Organize Imports durchzuführen.

organize_imports_on_save.png

h4. plugin.xml als Participant beim Refactoring

Beim Umbenennen von Elementen (Klassen, Packages), die auch im plugin.xml oder Manifest vorkommen, werden diese nun auch mit umbenannt.

h4. Whitespaces anzeigen im Editor

Ein manchmal durchaus nützliches Feature ist die Anzeige der Whitespace-Zeichen im Editor, oder auch in der Diff-View von JUnit. Emanuel und ich fanden das sogar so nützlich, dass wir das auch für die Diff-View fürs Cute, bzw. RDT angepasst haben. Eigentlich haben wir sogar die bessere Implementierung, nicht wahr Emanuel? ;-)

h4. Quick Outline für den plugin.xml-Editor

Überschrift und Bild sagen wohl alles, aufzurufen mit Ctrl+o:

plugin_xml_quick_outline.png

h4. Code Completion für Exceptions

Die Code-Completion innerhalb eines Catchs bietet eine Liste der möglichen Exceptions an:

exception_assistant.png

h4. Drucken unter Linux

Endlich kann man auch unter Linux/GTK drucken..

h4. Step-Into mit Ctrl+Alt

Beim Debuggen muss man nicht mehr die Methode markieren und Ctrl+F5 drücken um direkt in einen Aufruf zu steppen sondern kann stattdessen Ctrl+Alt benutzen, was einiges komfortabler ist.

h4. Content Assistant für plugin.xml

Ok, nur interessant wenn man selber Plug-Ins schreibt, dafür aber sehr nützlich ist der neue Content Assistant fürs schreiben von Extensions. Funktioniert auch in den Manifest-Dateien.

plugin_xml_assistant.png

h4. Inline Rename Refactoring

Das Rename Refactoring funktioniert nun standardmässig inline, also wie das Rename In File, ohne dass ein Dialog aufpoppt.

inline_rename.png

h4. Quick Access für Views

Mit Ctrl+3 bekommt man den neuen “Quick-Access für Views, Commands und so weiter Dialog” zu sehen:

quick_access.png

Schade, da muss ich den coolen Alt+Shift+Q Q Shortcut wieder verlernen ;-)

h4. Introduce Parameter Object Refactoring

JDT bietet nun auch das Introduce Parameter Object refactoring an.

h4. Nerviges

Allerdings sind auch nervige Features hinzugekommen, wie beispielsweise den Spellchecker, den ich gleich nach wenigen Minuten wieder deaktiviert habe. Auch ziemlich verwirrt hat mich, dass defaultmässig beim klicken auf den Run-Button, oder mit (Ctrl+)F11, nicht die zuletzt ausgeführte Konfiguration ausgeführt wird, sondern diejenige die mit der aktuell geöffneten Resource zusammenhängt. Das ist aber eher nervig, da beispielsweise nicht die Unit-Tests nochmals ablaufen sondern das Plug-In gestartet wird.

h4. Fazit

Eclipse 3.3 bringt einige neue Features mit die sehr nützlich sind, aber wohl eher nur dem Poweruser (oder Power-Developer? ;-) ) auffallen werden. Infolge des ganze Europa-Release-Trains erscheinen natürlich auch viele weitere Projekte in einer neuen Version, beispielsweise das CDT.

Danke an all die Leute die mitarbeiten, dass das Entwickeln mit Java nicht ganz so schlimm ist ;-) .

No comment »

JAX Innovation Award – Leider Nein

Tja, schade, wie ich soeben bei Heise gelesen habe, haben wir leider keinen Preis gewonnen.

Der erste Preis ging wie zu erwarten war an Groovy. Interessant finde ich den fünften Platz, “JITS”, auf deren Website steht:

Warning: this page is no more updated since June 2005 and has been removed from official website.

Tja, schade. Dass wir gegen solch ein Projekt bei einem Innovationspreis verlieren hätte ich nicht gedacht ;-) .

3 comments »