Category Archives: User Experience

Joel Spolsky keynote at EclipseCon 2006

Joel Spolsky is rambling along (it seems) about Blue chip products. Really he is a good presenter and likes to throw his audience (us EclipseCon geeks) off track to wake us up. BTW, Joel is the author of Joel on Software and The Best Software Writing I.

What are blue chip products? Apple’s iPod. Brad Pitt. Herman Miller Aeron.

What’s not? Creative NOMAD Jukebox Zen Extra. Ian Somerhalder. Random office chairs.

I think I’ve heard this before, but its nice to hear it live and in person.

The Formula for Blue Chip products:

  • Make people Happy.
  • He wrote a simulation of logging onto Windows which is hilarious. Gotta love nerd humor.

    Learned Helplessness – loss of control (through software?) causes people to give up and then further bad things in their lives.

  • Think about Emotions
  • People buy SUVs not for logic, but because they make them feel in control.

  • Obsess over Aesthetics
  • iPod has a seamless product, looks beautiful. “The NOMAD comes in ugly.”

    Joel is using old iPod photos. Showing mini – they’re discontinued. Most of what he is saying still applies to the nanos and video iPods.

    Joel recounts his early days where he did consulting to get Fogcreek off the ground and he had rescued a doomed dot-com from some big consulting firm. But when they showed it to the client, they didn’t think it was “slick enough”. So they worked with a graphic designer to make it look nicer.

    Now he compares “beautiful” vs “honest”. Architects supposedly have gone away to honest after beautiful now, but we aren’t there yet with software. I think we’re not even to the state of beautiful yet. Developers should probably work with graphic designers early.

All this points to using a Mac. Seems to me that Joel should use one. :)

Yay – Kim’s got a blog!

Kim Horne, who gave a nice presentation on “Addressing UI Scalability in Eclipse” at EclipseCon 2005, has just started an Eclipse-focused blog, titled Kim’s Eclipse Musings. I enjoyed the session quite a bit due to her sense of humor. She demoed how you can, using one perspective and the Activities API, create two versions of a rich client app on RCP, effectively implementing role-based access. The first role was the “peon” who was told to work harder and the next role was the manager, kinda like a Dilbert RCP app. BTW she stressed that doing so does not constitute real security, but it is a useful API nonetheless and an interesting demo. And no, nobody threw food at her for suggesting it. :)

Check out the session slides in PDF, which explains the API (actually 2 APIs: Activities and Contexts) and gives good examples. An interesting thing to note is that it enables progressive disclosure, which is a fancy UX (User Experience) word which means that you hide parts of the UI until the user needs them. So, for example, you can hide an entire tool (say the JDT) until the user asks to create a Java class.

Anyway, back to Kim. She’s the first Eclipse Committer that I know of that has a blog. She is on the Platform team, I think focusing on the UI. Right now, she’s blogging about Content Type Based Editor Lookup, which in plain English means how to decide which editor to open up based on what’s in a file, instead of just look at its extension, which is what the current framework gives you. I didn’t know anyone was working on this until now, so its good to hear that she is. I’ll probably use this API when it becomes available.

To top it all off, Kim is also a fellow Eclipse on Mac user. Yes! She seems to have switched just this month, with a trifecta of PowerBook, Mac Mini, and iPod Shuffle. Maybe Apple will feature her in a future Switcher Ad? :)

Speaking of Mini, I got a phone survey asking about my Mac Mini experience and it was the most enjoyable survey I’ve ever given. Hopefully my input will help Apple decide to increase the base memory in a Mini to 512MB, which I think would be better for most users. My kids are OK with 256MB, but I’m sure there will come a day when I break out a putty knife and stuff in a 1GB stick.

The night owl gets the milestone build (Eclipse 3.1M5 is here!)

Eclipse 3.1M5 is here!

I like this quote from Kim Moir, the Master of Eclipse Build Ceremonies (OK, not an official title):

“The clock has struck midnight and M5 has emerged as a beautiful new stable build.  Enjoy.”

You can download 3.1M5 here. The mirrors probably do not have it yet, so I would go ahead and go to the main Eclipse download site in Canada.

Read about the New Stuff in Eclipse 3.1 M5 here.

Before I drop off to sleep, here’s some highlights that I hope to try out this weekend:

1. Starting up SWT apps will be easy, via a Run As > SWT Application menu item. That’s great! The only downside will be the decreased demand for my #1 blog entry. But that’s one small step back for Luis, one big leap forward for Eclipse-kind.

2. New Undo/Redo API. This is also great, since this is a tricky thing for Tool Developers, but also one that needs to be right for there to be a good user experience. Looks like this is still in its early stages.

3. TableTree has been deprecated and replaced by a Tree with multiple columns. Since I also do Swing, it was always weird to see TableTree instead of JTreeTable.

4. You can finally reorder Table columns by dragging. Another thing that I missed from Swing.

5. More RCP support in terms of startup, wizard templates, and branding. 3.1 is looking to be great for RCP Apps. I only hope that it is accompanied by a greater web presence and maybe even a marketing campaign. Perhaps a prominent link in the navigation bar, promotion to a top-level project, or maybe a place on the top of the home page would be good. Everyone knows that Eclipse does plug-ins, but RCP is not as well known yet.

6. iTunes-like searching of Properties as well as Preferences.

7. Import/Export of Preferences. This is good for developing in teams when you want to have shared preferences and something I’ve been wishing for a while.

8. New Help view. This hopefully will improve the user experience with help, especially with searching. I especially like the Eclipse.org search. I’ve been meaning to post a blog entry about how Eclipse.org isn’t fully in the Google Universe and how you can get around it, but perhaps now I won’t have to.

9. Install/Update Wizard Redesigned. Hopefully the user experience will improve here too. So far, it has been nicer to install via zip files rather than this wizard and hopefully that will be reversed soon.

10. More Java 5 support.

11. Better Source folder configuration.

Wow, it looks like there’s been some good work on the user experience. Hopefully this will make the EclipseCon demo even better, but I’m even more excited about the eventual 3.1 release after seeing these improvements. Note to Erich or whomever is presenting: Please make sure the power connections are good. ;)

Technorati tags: eclipse

Why your car stereo needs a joystick

I think that user experience is important for software, but also for hardware. Think about it: the more you interact with something, either it becomes more invisible to you (and thus becomes “easy to use”) or the more its poor design either bugs you (and you eventually learn to live with it or replace it with something better.)

Shown here is the best interface I’ve seen for selecting which speakers your car stereo should play through. Stereojoystick
Continue reading