Inside SWT

Tuesday, February 03, 2015

Back to IBM!

Interesting news:  I'm working for IBM again.

It's no secret that there is a big change going on at IBM right now.  There is a push toward the Cloud and the IBM Palladium lab is in the thick of it.  This is a great opportunity for me to work with new people and some old friends again.  I'm looking forward to going into an office once more and proudly wearing my bathrobe.


Tuesday, March 18, 2014

At EclipseCon 2014

Hi all,

It's been a while since I have posted and the title of this blog doesn't quite match the content these days but no matter.

I'm at EclipseCon 2014 and having a good time meeting old friends and finding out how things have been going lately.  Of course, I'm an Eclipse user and over the past few months, I was getting worried.  I was working on OpenJFX and using a really old version of Eclipse with lambda and default method support.  It compiled the code, but limped.

Recently, I thought I'd update.  OpenJFX is being lambda-ized and I thought I'd check out the latest tooling.  To my horror, I found enough problems that were "new and improved" (i.e. broken) that I became worried.  JavaFX ships as part of JDK8 and uses the new features of that release.  Eclipse has to work with JDK8 in order to develop OpenJFX.

I use all the IDE's but I have a soft spot for Eclipse.  Would I have to abandon it?

Fortunately, we have Bugzilla and there is a good ecosystem around JDT.  While on vacation and time shifted, I began quietly filing bug reports, isolating test cases and trying not to disturb the sleeping family.  I was very happy to find that the JDT committers where eager to help.  In particular Srikanth Adayapalam and Stephan Herrmann took my issues to heart.

I practice what I preach: A bug report needs a simple set of steps and a repeatable case.  Only then is it easily actionable.  Further, everyone is overworked and understaffed.  Every bug is not critical.  You can't 'cry wolf' and must interact carefully and honestly with the committers.  That way, when there is a wolf, people believe you.

I'm happy to report that Eclipse is now compiling and running OpenJFX without any problems.  I got a chance to meet Stephan and Srikanth and thank them personally.  It's not only important to me, but important to everyone in the Java universe that Eclipse works well now and in the future.  It seems obvious, but sometimes we forget the obvious.


Friday, June 15, 2012

ACM Award

Hi all,

Many of you have heard that I am winning an ACM award this year for my work on Eclipse.  I'd like everyone to know that I am under no illusions about how much others have helped me to achieve this honour.  Obviously, the SWT committers, past and present come to mind but the community, the PMC and many others from IBM and the old OTI organization showed me the way.  Thanks everyone.

From now on, I'd like to be referred to as "Doctor, Sir Herr count von Northover, Esquire the 3rd",


Tuesday, October 04, 2011

Flogging my FrankenMac

I'm running a FrankenMac. It's a MacBook Pro with Windows 7 and Linux as guest operating systems.

For my talk yesterday, I was showing Fx running as an Eclipse plugin on Windows and Mac. I grabbed a few standard Fx examples, modified them slightly and dropped them in. Here is the ColorfulCircle example running in Eclipse:

For the demo, I had a total 4 Eclipses (two Windows, two Mac) and 6 Fx embeddings, each doing some sort of animation on my machine. The source Eclipses were full development environments with the source of Fx loaded into them. For extra fear, the Mac Eclipses were running JDK7. There were a few browsers running too on both operating systems and the slide software.

You might think that it would lurch, but it didn't. Incredible.


Saturday, October 01, 2011


I'm speaking at JavaOne this year with Artem Ananiev. The title of the talk is "Using JavaFX 2.0 UIs with Swing and SWT". I've worked with Artem in the past but never actually met him. That's always cool.

Most of the hassles around interop with Swing and SWT were around threading. It was possible to embed one toolkit in the other, but programmers needed to be very careful to avoid deadlock. The rule of thumb was, "never wait" and use asyncExec() and invokeLater() to communicate between the two.

I'm happy to say that FX and SWT have no such hassles. Both are apartment threaded and share the same apartment.


Monday, May 09, 2011

Joining Oracle

I guess I've always been a UI guy and my attempts to deny it have failed! Don't get me wrong, I've been doing UI for the past couple of years but it's been on the application side. That was a great experience but it was time for a change.

Why join Oracle? Oracle isn't kidding. They are taking Java forward, removing roadblocks and doing whatever it takes. We've seen a few examples of this already. Oracle and IBM are working together. Oracle and Apple are working together and the Mac JVM is going to be better than ever. The old suspicions are gone and everyone is open for business.

At this point it's not quite clear exactly where I fit in but I'm an Eclipse fan and Oracle is an Eclipse supporter, so it makes sense to post here.

Now I'm off to fix some Swing bugs ...


Thursday, June 11, 2009

After the break up ...

"A lot of people knew I left. I was a fool not to do what Paul did, which was use it to sell a record." John Lennon (1970)