Thoughts on Pattern Library categories

April 19th, 2010 by calum

Most of you probably know that one of the things we’d like to do for GNOME 3.x, alongside a refreshed HIG, is produce and maintain a GNOME UI Pattern Library. (An example of what we mean by a GNOME UI Pattern is this semi-fictional example.)

I’m thinking we’d probably want a homepage that both allows you to search by text/tag, and browse by category (something like this quick mockup.) Which would, of course, mean picking some categories.

From a quick survey of other pattern libraries (which are mostly geared to web design) and the type of stuff the current HIG covers, here’s a first stab at what that list might look like.

  • Feedback: Showing messages, notifications and progress indicators.
    Examples: Alert messages, notification messages, InfoBar usage, status bar usage, focus indication, audio feedback.
  • Input: Enabling the entry of different types of information.
    Examples: Sliders, audio input, video input.
  • Layout: Arranging information and controls in a window.
    Examples: Frames, grouping, spacing, anatomy of creation vs viewer vs browser vs utility apps.
  • Navigation: Enabling users to move around and between documents and different parts of the application.
    Examples: Tabbed windows, sidebars, location bar, zoom controls, media transport controls(?).
  • Search: Enabling users to find items or information that may not be immediately visible.
    Examples: Find dialogs, in-place searching, filtering, auto-completion, Boolean queries.
  • Selection: Allowing the choice of one or more items from many.
    Examples: Marquee selection, keyboard selection, pattern matching.
  • Social: Maintaining contact information, and interacting with other users.
    Examples: Adding information to address books and calendars, Showing online presence, Initiating chat.
  • Workflow: Relating to the process/mechanics of using an application to achieve a particular goal.
    Examples: Desktop integration, undo/redo, drag-and-drop, extending open/save/print dialogs.

Feedback welcome… any obvious ones I’ve missed, or ones that seem redundant?

FWIW, I’m not sure nailing the list now is either entirely necessary or entirely possible. There’s no reason we can’t adjust them as the library grows, and I hope we’ll have some sort of tagging capability to handle the patterns that don’t fit neatly in a single category anyway. But it’s always good to start from as solid a foundation as we can :)

All my pictures seem to fade to black and white

March 31st, 2010 by calum

Tonight we head into town for a few beers, to commemorate the untimely passing of Sun Microsystems Ireland Limited, some 17 years after Sun’s operations began in Dublin, and a little less than ten years after I joined.

Tomorrow, at 10.30am sharp, and likely with a few sore heads, we become inducted as employees of Oracle Ireland. See you on the other side.

OpenSolaris Governing Board Election Results

March 23rd, 2010 by calum

This time last year, I noted I was slightly disappointed at the low number of non-Sun folks who’d been elected to the OpenSolaris Governing Board. No fear of that this year, with just one of the seven newly-elected board members currently representing Sun^H^H^HOracle… although there are certainly a few ex-Sun faces in the mix too.

The new constitution was approved this time around as well. Here’s hoping all concerned can keep up the momentum that’s been gathering over the past few years.

It’s Paddy.

March 17th, 2010 by calum

Not Patty.

Streetview gallery

March 11th, 2010 by calum

Thanks to Google Streetview’s new 95% coverage of the UK, which went live yesterday, here’s a visual history of all the houses I ever lived in over there, until I moved to Ireland. Obviously I’m not telling you where they are, though :)

1971-1987

1971-1987

1987-1993

1987-1993

1993-1996

1993-1996

1996-1998

1996-1998

1998-2000

1998-2000

(Although the cars have been spotted out and about in Ireland, there’s no coverage here yet…)

Bothersome themes

March 10th, 2010 by calum

(Public service announcement: I’ve always hated themes and still wish they’d mostly just go away so we could all just concentrate on building and using the same sexy pixel-perfect GNOME look-and-feel. GNOME branding wins, performance wins, some people complain but don’t they always, yadda yadda. Now, with that out of the way…)

I was having a look at this OpenSolaris bug report yesterday. Basic problem: icons from the OpenSolaris Nimbus theme are showing up in some places larger than they ought to. Apparent cause is that the icon theme doesn’t provide those particular icons in a small enough size, and the larger versions aren’t being scaled down as required. The vinagre toolbar is the example given in the bug report, but I’ve seen it other places too (e.g. in the Glade toolbar editor).

Wrongly sized icon in Vinagre toolbar

Wrongly sized icon in Vinagre toolbar

Wrongly sized icons in Glade toolbar editor

Wrongly sized icons in Glade toolbar editor

Having a look at the index.theme file for Nimbus, I saw that all the icon folders were marked as “Type=Fixed”, and assumed that was the problem. However, I spent a couple of hours trying every combination of “Type=Scalable”, “Type=Threshold” and Threshold=[some-big-number]“, and “MinSize=[some-small-number]” that I could think of, and nothing changed. (I regenerated the icon cache after each change, and also tried without any icon cache at all.)

Just what should an index.theme file look like to ensure that (say) the 48×48 icons will always be scaled down to (say) 24×24 when required? Nimbus also has its own engine, could a bug there cause this problem? Or a bug in the gtk+ widgets/applications where we’re seeing the issue?

EDIT: Further to Matthias’ comment, Type=Scalable is working fine now. Not sure what I was doing wron yesterday…

GNOME Usability Hackfest

March 2nd, 2010 by calum

Back in the Dublin office today after last week’s GNOME Usability Hackfest in London, during which I didn’t blog nearly enough.

My main goal for the week was to help figure out a plan to revise the GNOME Human Interface Guidelines, which I originally helped to write almost a decade ago, but which really haven’t kept pace with the changes in either hardware or software technology over the past 5 years.

The notes from all the discussions we had aren’t all that impressive to look at, but I think the key thing is the general agreement to have less monolithic text, and switch to more of a pattern library approach. This should allow us to react much more quickly to changing trends in GNOME UI design, maintain related patterns for different types of devices such as desktop, touchscreen and stylus devices, and even allow individual distros to customize the library with their own unique, in-house patterns if they so desire. (Which hopefully won’t be too much, but it’s clear that, for example, the GNOME-based Moblin UI is a different beast from the vanilla GNOME desktop, so the Moblin team will likely want to maintain some patterns of their own.)

I’ve already started to draft up a template for what a GNOME UI pattern might look like, and hope to flesh things out a bit more over the next couple of weeks.

Of course, many other things were discussed at the hackfest as well. Nautilus and gnome-shell were hot topics, as was the old chestnut of a GNOME control centre redesign—on that front, I ended up moderating a couple of card sorting sessions during the week where we had users categorize 100 settings into groups of their choice. Charlene from Canonical presented an Empathy usability report, partly to discuss the findings, but mostly to discuss how best to present such reports to GNOME developers. And of course, Seth’s vision of a future GNOME desktop hit the headlines, making it to Ars Technica almost immediately!

On the community front, some ideas for improving the tools we use to analyse and report usability data were also discussed. And there was a strong presence from the accessibility community, to keep us all honest when coming up with anything new.

Many thanks, of course, to Google and Canonical for sponsoring the event, and particularly to the latter for hosting us in a 27th floor office so we didn’t need to waste money on the London Eye :)

They Think It’s All Over…

January 27th, 2010 by calum

“On Tuesday Sun delisted itself from the Nasdaq Stock Market, a sign that the (Oracle) takeover was nearly complete, though no formal announcement was made.”

Guess it won’t be long now…

“The Future of UI Will Be Boring”

January 22nd, 2010 by calum

In the midst of all the hype, speculation and (in many cases) nonsense being talked about whatever it is Apple are going to be unveiling next week, it was refreshing to read Scott Berkun’s reminder of why keyboards and mice definitely won’t be going away anytime soon.

(His follow-up post, about the Limits of Innovation, is worth a read too.)

USDT probes in Gnome – a prototype

December 16th, 2009 by calum

This sounds like it could be the start of some kick-ass GNOME performance work. Dtrace ftw :)