DevSummit07:Building in Usability
Facilitated by Eugene Eric Kim, Blue Oxen Associates
As the nonprofit software landscape fills out, many tools and platforms remain hard to use. This sessions will lay out both key considerations and usability concepts, and will also introduce techniques and processes for improving software usability. Developers will learn methodologies for letting users tell them how to improve their tools.
Eugene is a passionate advocate for enhanced usability in Free/Libre/Open Source Software (FLOSS) projects, and has partnered with Aspiration in organizing the FLOSS Usability Sprint event series.
Eugene will facilitate a discussion on practices and methodologies he advocates for helping FLOSS projects address and improve tool usability challenges. Developers are strongly encouraged to bring their questions, experiences and usability insights to the table.
Introductions. What are you interested on getting from this session?
- Looking of usability from the point of view of understanding your users
- Quick pitch, why my clients need to budget for usability. Why they want it.
- Tools for other non profits, the user base diverse as non profits are
- Wide user base, how does that translate in the tech decisions that I make
- How do we develop the approach to useful and useful websites
- Approach on making websites with low level entry
- Encourage users to see 50 to 100 projecs in a clean way and take a project
- All usability problems relate
- Workflow aspect of usability, different environments
The reason I got interested in usability is by he way of collaboration. Interoperability and usability, improve those 2 things instead of making new tools. A step on that direction was organize the FLOSS usability sprints. 3 days to make concrete progress in several projects. Build a shared understanding between people in suability and software development. In that space you pick up a lot of stuff. Understanding your users.
What do you think the most frequently used feature in Ms Word. Copy and Paste? Bold Italics? Open Document? The answer is Paste.
That information is not necessarily intuitive. When you actually do the users sometimes you're suprised by the results. Watch your users! There's all sorts of methodology to do that even light ways to do it. Sit down and watch your users, resist the temptation to intervene. What would you do with this information?
Paste key on the keyboard. Big button. Doing it fast. Something in relation to paste, since this is already figured it out. There's an interesting dynamic between facilitating what users do and what you want them to do.
It really makes a difference for who the users are. The vocabulary of the users should be as simple as possible for the user that we're talking about. Who is your user? At some point the users have to take the initiative to learn the tool. Learnability is not just about the software, build holistically.
Microsoft has been used for a long time, it affects the way people use software. Are we approaching the users so they learn new things? There's gotta be limits to that too. At some point letting users do what they always do is not so usable. For example, using Word for everything.
Software originated as client base. Now we're moving into server base. When you're talking about putting a software on a machine is completely different than talking about putting it on a web server. How do you explain that something was design to put test and print it out, and web apps are design for the text to be published and collaborated with.
WE ask more and more of the user every time without getting information from them. We're asking them to do a lot, to create a blog, to upload video, etc. Encourage our user base to do 1 or 2 things really well instead of doing 20 things.
Some of the books and articles focus on whther you should have text to support an image, instead of focusing on the reach of tools and what the necessity is for those tools (i.e. versus doing door to door campaingnin). Sometimes is about backing up and figuring out what is it that you want to acomplish.
Workflow. The process of nature of usability. You string together actions. Durpal is cool that way cause is self-revealing. But how do you overcome users resistance to that? How do you get people to pay attention?
Find out what my client wanted, talk to them and backwards engeneer to what their needs are and then go forward into what their solution is. They say they want a blog, but maybe they need a static page.
The innovation of Basecam is precisely wrokflow, you start on a logical place. How much monety did they spent on UI? They put out what you have, and then your users are your focus group. You also can use it as your internal system, that is an intereesting model.
Another myth is that usability is subjective. Design is subjective. If you are going to make a design decision i.e. on making links not blue, you should have a solution for that very well figured out.
Orient the user towards goals. Not listing the functionalities, but asking what they want to accomplish.
Techniques for understanding users:
- A couple of months before the sprint we ran a survey. Another person did about 10 interviews with open ended questions. We used the responses to make the actual survey. REcycling the language that you got from interview. Questions on what you use more, what you find easy, etc.
- Continuous feedback. Improve all aspects of the software. Surveys and others. How you go about a survey that will actually give you results that I can actually use to improve the software.
- Recording people screen sessions. Looking for some kind of click stream modelling from the logs. I know some high end tools can do some of that but I don't know if therre's anything like what I want.
- Recording what the users do. Testing.
- Not only observing, but getting them to explain where I was going and why.
- Agile development, put the content and apps out there and get feedback.
- Focus group, specific questions and more conversational approach, show us your goal and ask for the users feedback. As a user it was very useful to actually get ideas on how to use the software.
- A problem I've seen many times is you ask users what they want, they want everything. It is important to prioritize. You're making the user be the desingner.
- Present something and ask what doesn't work, what don't you like.
- Ask for 2 or 3 sites people like and how does that work for them.
- Card sorting. Information architecture technique. What's the optimal order? Write down every option in a card, make groups, sort them out.
- For small communities and very specific audiences.
Do you feel you are part of an organization that does usability well?
- 2.0 sites potentially customized. Customer has the hability to say what they want out of an app.
Proposal: Take another session and put together a checklist. Domain specific checklist? More specific checklist for the client, what to think about? Balance that with their budget. People who are doing tech for non profits should be more connected to usability.