Gummy UI improvements

I am currently working together with Jan on improving the Gummy tool (website still under construction). We have come a long way since Jan wrote the first version for his Master’s thesis. I figured it might be interesting to share a few screenshots of different phases in the development:

Here’s the first version (June 2007):

Gumme screenshot of June 2007

A version with roughly the same UI but lots of architectural improvements (November 2007):

Gummy around the end of 2007

The current version with an improved UI (March 2008):

Gummy screenshot of March 2008

I think the most significant improvement is the new toolbox. Designers can now more easily distinguish between different widgets. In previous versions, some widgets were hard to distinguish. We added labels to each widget in the toolbox, and improved the inline rendering of the widgets. Notice that these images are still not predefined icons, but real widgets rendered to a bitmap. However, in the current version we chose to render them at their optimal size and then scale the images down.

Rendering widgets to bitmaps also forced us to migrate to Windows. We started our development on GNU/Linux using Mono but had to switch due to an annoying bug in Mono’s implementation of Control.DrawToBitmap. Future versions should be able to run in Mono again when this bug is fixed though.

Update: Jan sent me a screenshot of an even older version of Gummy, dated back to December 19, 2006:

Gummy screenshot of December 19, 2006

Job interviews and the attraction of excellence

Steve Yegge (known amongst others for porting Ruby on Rails to JavaScript) has a great article on job interviews. Although these guidelines are targeted specifically towards landing a job at Google, they are probably applicable for most technology companies. Certainly an interesting read …

Steve used to work for Amazon (he is at Google now), and has blogged before about Google’s recruiting strategy. He wrote about the importance of mouth-to-mouth advertising (“you can’t fake being cool”) and how Google has turned the whole recruitment process around:

The term “recruiting” implies that you’re going out and looking for people, and trying to convince them to come work for you. Google has managed to turn the process around. Smart people now make the pilgrimage to Google, and Google spends the bulk of their time turning great people away.

There have been many stories on Google’s unique mix between the atmosphere of graduate school and a startup, although there was also a more neutral testimony from a former employee who now works at Microsoft.

In summary, it seems that one of the most important factors in being able to hire smart people is “excellence”: being able to work in a stimulating environment with smart people who are good at what they do. In my opinion this is true for research and academia as well. I guess most researchers wouldn’t turn down offers from the major labs that publish at the main conferences in their field year after year. Well, at least if it’s feasible to work there, e.g. moving to another country might be a problem :-)

As an example from the academic world, have a look at this promotional video for Microsoft Research:

You need to a flashplayer enabled browser to view this YouTube video

At about 2 minutes and 30 seconds, Bill Buxton mentions that at MSR Cambridge he got to have lunch with his “hero”, Turing-award winner Tony Hoare (the inventor of QuickSort), and goes on to say that “the history of Computer science is walking down the corridors”. The movie ends with a listing of all awards and honors MSR’s employees have received.

First experience with IE8

Although there has been quite some debate about the newly introduced X-UA-Compatible meta tag in Internet Explorer 8, I noticed it is only necessary for backwards compatibility (at least in the developer beta). If a website does not look good on IE8, designers can add a special meta tag to indicate which version of IE it will be rendered in:

<meta http-equiv="X-UA-Compatible" content="IE=7" />

In my opinion, that’s a lot less harmful than having to add a meta tag to actually get the new standards compliant behavior. Consequently, IE8 renders my homepage correctly, which is great news. I made the decision not to adjust my design to be conform with IE’s rendering a while ago. The future is looking bright as the problem will solve itself after a while.

Here’s a screenshot of IE8 beta 1 correctly rendering my homepage :-)

IE8 rendering my homepage

Most features that didn’t work before but do now are CSS related: content generation (for separating the breadcrumbs), unordered lists styled as tables, correctly positioning hovering submenu’s, etc.

Update: Apparently the IE developers changed their mind which is why standards-compliant websites now work out of the box in IE8.