Friday, August 17, 2007

End of (My IBM) Days

Bye, Bye, Bye

Last week, I sent out the following announcement to my colleagues at IBM:

"After 7 years and 6 solid Eclipse releases, the time has come for me to leave IBM to pursue other opportunities.

My last day at the Toronto Lab is Friday August 17.


I leave IBM happy for the time I spent here, grateful for all the opportunities I have been given, and proud to be associated with such talented friends and colleagues.

Thank you for being part of it all.

Wassim Melhem."

PDE All Grown Up

I have been working on PDE since the Eclipse 2.0 release, and became the component lead at the beginning of the RCP movement, early in the Eclipse 3.0 cycle.

Year after year, the PDE New and Noteworthy feature list has been long and distinguished (3.0 - link to the N&N list no longer found on, 3.1, 3.2, 3.3), and PDE has come a long way in term of stability and performance.

PDE gets a lot of positive press and we are always thankful and flattered when that happens. To me, the most memorable one came in a blog entry entiled "PDE All Grown Up" a couple of years ago. It is my favorite because it is not over the top, it uses a great metaphor comparing PDE's growth to that of a rambunctious teenager, and it chronicles how we won over the heart and mind of a plug-in developer.

Given PDE's "No Developer Left Behind" policy, we always do all we can to accommodate and please every developer. Note that our effort should not be confused with the similarly-named, yet failed, "No Child Left Behind" program ;)

A Gang of Four

At IBM and particularly working on Eclipse, I got to work with some of the best people. For my farewell tour this week, I went to Texas for a few days to spend quality time with the Austin chapter of the Equinox and PDE teams.

With a traditional leafy backdrop, this is a picture of me with three of Eclipse's finest. From left to right: Thomas J. Watson (not to be confused with the other Thomas J. Watson), Chris Aniszczyk, unshaven/overdressed man, new father Brian Bauman.

Chapter Two

On Monday, I start my new job working as a program manager at an Eclipse add-in provider member company, where I will be leading a new commercial Eclipse-based product.

I plan to continue blogging, but with some emphasis on the challenges that I will be facing in my new role. If that gets boring, I could always go back to questioning the authority. That's always fun :)

As for my involvement with PDE, I will remain a committer, but largely in an advisory role. Time permitting, I plan to code from time to time. I will also be attending selected conferences in the next year, with OS Summit Asia being the next likely event.

Onward and Upward

Thank you for choosing PDE. Your productivity is our top priority.

Tuesday, August 14, 2007

PDE Does Cairo

A Right-to-Left Crisis

Every year around May, when we think we are almost done with development, multi-language testing starts and we get bombarded with Bidi bugs. Bidi bugs are inherently difficult to address, mainly because very few developers can read/write Arabic or Hebrew.

Do Arabic developers really use the Arabic version of Eclipse for Java/plug-in development or do they prefer the English one? Is it worth the investment to spend time and resources on translating components like PDE and JDT into other languages?

I am a native Arabic speaker. Even though I am not necessarily a poet, I can read and write the language pretty well. However, I am not convinced at all that an Arabic IDE is necessarily useful for Arabic developers. After all, the Eclipse javadoc is entirely in English and does not get translated, the plugin.dtd tells you that you should only use the US-ASCII character set for plug-in IDs, etc.

Here is circumstancial evidence that proves my claim . It is a screenshot from a bug reported on Eclipse 3.3:
On the Target Platform preference page, arguably the most popular preference page for plug-in developers, the parenthesis for each of the labels in the tree are misaligned. If the Arabic version Eclipse is used by Arabic Eclipse developers, how did this problem go unnoticed since Eclipse 1.0?

So here is my theory: "While it makes perfect sense to translate, for example, a banking Eclipse-based RCP application into other languages. I am not so sure translating an IDE is all that useful."

Because I was in a Bidi kind of mood, I thought it would be good to take a trip to Egypt -- as an Eclipse envoy to the middle East, if you may. So I went.

A Nile view

While in Cairo, I stayed in the lap of luxury in a high-rise condo with a Nile view to the East. The picture is taken early in the morning from my balcony. The bridge shown is the University Bridge.

To the Pyramids, To the Pyramids
My second day there, we went on a two-hour camel ride to the pyramids. To my surprise, there were nine pyramids, the three big ones I knew about and six much smaller, less photographed ones.

Cairo in June is very humid and the humidity was not very kind to my hair or my nephew's.

Riding a camel is substantially more difficult than riding an elephant, particularly as the camel stands up and sits down. But it is so much fun once you get the hang of it. The camel also goes into a nice jogging pace, which was exhilirating.

Finally, this is the gentleman whose job was to make sure the camel does not kill me ;) The camels love the camera...

Back to Reality

Cairo was the last stop in the PDE tour. I flew home on Lufthansa (in support of Peter's employer). It was good to be back in my house. Next day, I had to mow the lawn which had grown to 5 feet after a two-week absence.