Presentation on Accessibility and Design on Jan 20, come!

For those of you in Kitchener-Waterloo who are into web accessibility and product design, myself and Ali Ghassemi are doing an hour-long talk at the next uxWaterloo event on January 20, 2011 at 5:30pm.  We’re super excited!

The focus will be practical advice for designers and developers about building accessible web applications. Ali and I will have lots of examples of specific things that need to be considered in the design, development, and testing stages, as well as make a case for building with open standards. In general, the hope will be to provide attendees with a rich overview of the challenges, make A11Y less scary by sharing specific anecdotes.  It’ll be a design oriented presentation, but both Ali and I are versed pretty well in the technology if you care to Q&A!

We won’t be focusing a lot on the legal responsibilities surrounding accessibility. I find too many introductory discussions focus on the legal issues first, thereby mentally cheapening the problem to one of WCAG compliance. Accessibility is one of the most interesting user experience problems the web has to offer, so I feel it deserves a more nuanced design discussion.

So yeah, please register on the uxWaterloo site if you’re interested.

There’s also a Facebook event, if you want to share the news.  My lovely employer Desire2Learn will be hosting the event (it won’t be at the Accelerator Centre).  Looking forward to seeing you there!

How Farmville caused Firefox 3.6.6

So I noticed that Firefox updated itself again today, only a few days after it did last time.  Why the short time-lapse between Firefox 3.6.4 and 3.6.6? Just one bug: 574905.

The Farmville Bug

No joke, Firefox pushed an update on a single bug. Last release they introduced this great feature that times out Flash applications if they take longer than 10 seconds to start up, thinking that anything that takes longer than that is probably crashing. Reasonable!

But Farmville often takes longer than 10 seconds to start up. Oh shoot. Flash developers that do run-time debugging destroy the 10 second limit. Double shoot!

Use Real Data!

It’s a cut-and-dry example of why you should use real data to make calls on design decisions. It’s a variation of the Lorem Ipsum Sucks argument. The “10 second” decision seems arbitrary, and kudos to Mozilla for doing the right thing and releasing a fix right away. It’s probably not the correct fix, as adding a friendly user prompt would be preferable to a low, fixed timeout. But hey, baby steps.

Mozilla’s Mike Beltzner on the chaos and rewards of open source

On March 4th TorCHI hosted Mike Beltzner (blog) who is the Director of Development at Mozilla, though he prefers to call himself the “phenomenologist.”  His talk focused on how Mozilla has harnessed the power of the open source community to build Firefox: managing the chaos of open source and have good ideas rise to the top.

I’d like to share some of the notes from his talk, as I have a feeling I’ll be going back to them in a few years when I’m an open source superstar.

Listening to People

When you have an open source project, your developers aren’t your work friends and users aren’t people you can call.  Thus there have to be very well defined and implemented listening channels.  Examples of which are (from lowest fidelity to highest):  crash reports, form-based feedback, bug-trackers, wiki’s, forums, IRC. All are important.

Ideas on voting:  in open source projects, voting (“+1!”) works as a great pacifier. It can be used to measure impact, severity, and interest, but should not steer what is of primary importance (or really used to make any important decisions on things).

Designing by/for People

Despite the fears and chaos, design-by-community has rarely steered Mozilla wrong.  Though it may be chaotic, the community has very strong and hierarchical leadership. Through effective leadership, good design ideas rise to the top.  More on that later.

Design-by-community is very different from, say, what Apple does.  Apple has one persona: Steve Jobs.  That’s great as long as Steve doesn’t miss any ideas (which he will), and if he doesn’t love things that aren’t all that super-great (Cover Flow).  Apple doesn’t have a succession plan for Steve.

Gave great example of the development of the UI features involving closing tabs in Firefox. Ultimately he admitted that Google Chrome got it right, Mozilla got 80% of the way there, as per normal :-)

Organising the Chaos

Expect chaos in open source.  Managing chaos begins with managing the design, rather than the code itself.   In any design decisions, opposite camps form very quickly – especially spurred on by half-finished designs being released as Alpha products.

To manage this chaos, you have to infuse some order.  First point of order is having a public and well defined road-map or a cheat-sheet of where the product is going.  Then build the product in layers, and introduce every major change as an Add-On first.  Educate contributors about “why” things are happening.

Discussions should be supported by research and data (possible cross-over with academia here, especially for people looking for small M.Sc. projects).

Disagreements ultimately end in negotiation, but never forget BATNA .. what’s the worst that will happen (typically “Screw you guys, I’m going to Opera”).  No you won’t.  And if you really disagree with the design change, write an add-on to correct it (yey!).

Leadership and Playtime

You need to identify and elevate in importance people who are “good” contributors – reward them with ownership of small modules in their expertise domain. Form small teams with well defined scopes of responsibility.  The leadership of these teams can be concentrated around these good contributors.

The modules of code are led and owned in a heirarchical manner. Ultimately, someone is the sole owner of the whole thing.  In the case of Mozilla, it’s Mike Connor (youtube) from Toronto, who is kinda hilarious.

Give your contributors complete and absolute freedom to explore the system.  They will reward you with neat things like add-ons to inject random stanzas of poetry into web pages, and localised versions of your product.

Localisation as more than Translation

This came out of the discussion portion, but he spent a great deal of time discussion on the localisation challenges involved with marketing Firefox in China.  He wrote extensively about it on his blog.

The bottom line is that localisation has to be more than translation: it involves studying the interaction of the people with the product, and changing the design of the browser.  Not the technical core of the browser – you should be able to adjust all necessary behaviours and design via add-ons. Discussed how Maxthon benefitted by being included on a very popular pirate build of Windows.

Lesson here is that customisation via add-on’s is ultimately key to solving many design problems.

Proudly powered by WordPress
Theme: Esquire by Matthew Buchanan.

Switch to our mobile site