contact ME

Use this form to reach out to me.

Ask me about the software development consulting and vocal services that I can provide for your project.

Westboro
Ottawa, ON
Canada

I am an independent software development consultant, specializing in model-driven development with Eclipse technology, which has been a passion for the last ten years.  I am widely recognized for my high-quality output, timely delivery, and friendly and engaging manner.

I also happen to be a capable singer, performing sacred and secular works for choir and tenor solo from the renaissance to today.  If you are presenting vocal music in Ottawa, eastern Ontario, or west Québec, I can be your tenor.

IMG_1359.JPG

Blog

An ad hoc record of Christian W. Damus's professional and personal activity.

Old-Fashioned Prognostication

Christian W. Damus

No, I'm not making predictions for the success of Eclipse or any technology in 2009.

Another new year has arrived, and to usher it in I once again engaged in the timeless German tradition of Bleigießen:  the divination of one's future (for the coming year) in the pouring of molten lead.

The idea is simple:  you cut a length of lead solder and heat it, in a steel spoon, over a candle or other tabletop flame, thus:

Once the lead is completely molten and flows freely, you pour it quickly into a bowl of cold water to chill it instantly.  In the resulting sculpture, you see a shape, figure, or other graphic indication of what the year holds in store for you (rather like cloud gazing):

As you can see, my first attempt didn't show much and was actually spoilt by pouring too rapidly.  Am I having puppies?  Or are these tears?  As this attempt failed due to a bad pour, I tried again, with a smoother and steadier hand:

That's more like it.  I can read something into this!  I see ... on the right-hand side ... a frog? Yeah, a frog.  It's sitting on a stick, readying to jump into the water.  The stick is jutting out of the water from right to left, like in so many creek-paddle scenes from my canoe tripping.

Looks like Mother Nature has another great canoeing season in store for me!

  

Directions to Keyboard Heck

Christian W. Damus

Have you ever wondered where Keyboard Heck is to be found?

I think I just took the short-cut.  So to speak.

I use the two-handed Dvorak keyboard layout because I like it:

I also use a MacBook Pro because I like it.

This week-end, I upgraded my OS X to version 10.5.6, because Apple told me it was a good idea.

Well, now text editing in the Eclipse workbench has gone all to pieces.

What has happened is that the following Mac-standard keystrokes still work as expected:

  • Command-Q to quit
  • Command-, for preferences
  • Command-W to close window (which closes the internal editor in Eclipse)
  • Command-S to save

but most others require combining the Command key with the letter key where it would appear on a Qwerty keyboard:

  • Command-; to undo (Dv ; is where Qw Z is)
  • Command-R for an outline (Dv R == Qw O)
  • Command-Shift-U to format (Dv U == Qw F)
  • Command-J to copy (Dv J == Qw C)
  • Command-K to paste (Dv K == Qw V)

The most frustrating point is that to cut (Command-X) I actually would have to hit Command-Q because the Dvorak Q is where the Qwerty X is, but Command-Q "works" in the Dvorak layout and closes my workbench!  I have to do Command-J to copy, then delete, then Command-K somewhere else to paste.

I mustn't be as smart as Pavlov's dog, because I still find myself closing my workbench occasionally despite that it isn't the natural keystroke on this keyboard!

My next step was, when last I posted this message, to try this out on the Cocoa port of SWT.  Well, it turns out that the Cocoa port does not have this problem.  Keys all work like the rest of my Cocoa apps.  The new problem is that Eclipse doesn't run, yet, with the Cocoa SWT.  It crashed the first time I tried to save a Java editor and now it crashes before I can begin working with any editor, on every launch.  That's no better than hitting Command-Q to cut  ;-)

  

Target Definition to the Rescue!

Christian W. Damus

Congratulations to the PDE team for saving my day!

I just switched my day-job development from Windows to Linux.  I use IBM Rational® Software Modeler™ every day for its various advanced features, and among other things the software that I develop extends some of its features.  Therefore, I self-host my PDE.

As it happens, my software project also depends on other Eclipse-based components that are not included in RSM.  So, I install them into my RSM workbench.  On Windows, this works fine because I am an administrator of the system and p2 installs the stuff into the shared bundle pool.

However, on Linux, the picture turns out to be a very different one.  I installed RSM as root but I run it as a regular user.  It seems that some kind of funky extension to Equinox causes p2 to install my extra features into my home directory, and the launcher finds its configuration there instead of in the main product installation location.  Very cool!  Great for a multi-user environment.

However, not so great for my PDE target.  PDE only recognizes the plug-in locations installed in the product, not this extra location in my home directory.  Enter the PDE Target Definition.

drum roll ...

I use the New Target Definition wizard to create a new PDE target, and it creates one that includes my current Eclipse configuration by default.  Then, I add another location in which it will find plug-ins.  I could even, if I wanted to, add plug-ins from my workspace, although this seems odd because the workspace generally is implicitly in the target, anyhow.

PDE Target Definition Editor

PDE Target Definition Editor

With one click in the top right corner of the editor, this target is installed in my PDE environment and it now finds every plug-in that I need.  It's too easy!

PDE Target Preference Page

PDE Target Preference Page