Tuesday, April 26, 2011

Living With Complexity

Reference
Living With Complexity
- Donald A. Norman

Summary
Norman’s general theme for this book was why complexity exists and why it plagues people so much.  Complexity must exist, because our lives are complex in nature.  Some ideas and tasks are complex, so naturally their designs must also be complex.  However, he explains that complex designs can be catered the right group of people and by doing so this avoids unnecessary complications in the design.  Poor designs in general result from the failure to properly implement a complex or even simple concept.  The first place to start in avoiding complications is with a good conceptual model of the design.  Without a deep understanding of the problem and final goal, proper inner workings of the design to streamline cannot be possible.

Even when designs are simple in nature and relatively straightforward, many different designs all geared towards the same purpose can be extremely confusing.  People grow accustomed to performing an action in a certain way.  When a slightly different way is presented, this  can really throw a person off.  If the design utilizes visual cues, this can greatly decrease the chances of this problem from being a concern.  Another way people can help themselves is to use their social signifiers.  In the case of the door knob, people can pay attention to how others react to it and then no longer have the problem of figuring it out on their own on the fly.

Discussion
Like Norman’s other books, he takes a relatively simple idea and helps you to look at it from a different perspective.  I had never really noticed so many well-designed complex systems before.  They were always there, but it took looking at a concept differently to truly pick up on these small details.  This also helps me to see the poorly designed implementations of things.  Organizing complex options and features can be a difficult task, but all it takes sometimes is coming up with a sufficient conceptual model to see a clever way of laying things out.  I hope to remain to be more aware of these things in the future and not fall prey to creating a truly terrible design myself.

Paper Reading 25 – Finding Your Way in a Multi-dimensional Semantic Space with Luminoso


Reference Information
Finding Your Way in a Multi-dimensional Semantic Space with Luminoso
 - Robert Speer, Catherine Havasi, Nichole Treadway, and Henry Lieberman
 - IUI 2010, Hong Kong, China

Summary
The authors of this paper presented a program called Luminoso.  They explained how massive amount of semantic data, such as that from a mass survey, can be very difficult to sort through and form conclusions from.  This is especially true when user free response sections are available for the user to fill in.  What they propose is forming relationships between all of this data and representing it in a multi-dimensional space.  This is exactly what they accomplished with Luminoso.

The main view of the Luminoso interface.
The described the program as appearing similarly to Google Maps in how the user can interact with it.  Each node stands for a particular topic or area, and the more elements that relate to this area, the large the node becomes.  Then related areas branch off of this, and so on.  These clusters form abstract representation in the space.  One of the key features they included was the ability for the user to drag individual nodes in order to realign the focus of the overall arrangement of data.  This allows the user to concentrate on a specific opinion type in a survey for example and see all the various elements relating to it.  The designers argue that using a system like Luminoso to visualize data will become increasingly important as semantic networks continue to grow.

Discussion
I’ll be honest and say some of the content of this paper went a little over my head.  But I do understand the general concept of it all.  One thing I learned from this is that writing anything in the free response sections of a survey is apparently pointless when the survey audience is extremely large.  This is probably obvious to most though.  If no one is going to read it, there really isn’t any point to writing anything in those sections.  However, they mentioned they could group these free response areas with the applicable clusters of data making it easier to view on a handful at a time.  I have never thought of any major needs for a system like Luminoso, but they have convinced me that it can be very useful when dealing with massive amounts of polled or collected data.

Book Reading 52 – Living With Complexity

Chapter 3 – How Simple Things Can Complicate Our Mind
Summary

Norman talks about how the numerous simple designs for the same function can easily confuse our minds.  A prominent example is the door knob or a car door lock.  Universal standards do not exist for how to design these devices, so there are many designs that exist to accomplish the task of these objects.  Each new design we encounter required us to rethink how to do the same general action with the new tool.  One way design has helped this problem is using visual cues to give hints to people on how to use the specific design.

Discussion
Door knobs seem to come up in a lot of Norman’s books.  But, it is always such a great example for so many different scenarios.  The same goes for door locks.  I am sure everyone has been confused about how to open the door from the inside of a foreign at some point in time.  Or maybe you have had to explain your own car to a friend.  It doesn’t take long to figure these things out, but it surely would help if all of these devices were a little more similar among themselves.


Chapter 4 – Social Signifiers
Summary

Social signifiers can play a large role in simplifying the world around us.  One example that was given was how salt and pepper shakers are usually fairly simple to tell apart even with all the different designs that exist.  Norman states how we all tend to was the people around us as we try to blend in.  Following what other do helps us in making more sense of the complex world we live in.

Discussion
Quite often, I will purposely choose to not go first for performing some unfamiliar task.  Instead, I will watch the others perform it first, and then emulate what they do, or sometimes improve upon their methods.  This is nothing new though since many people tend to do this very thing.  Also, if salt and pepper shakers can be easily recognizable even with all of their diverse designs, why can’t the same be said for door knobs?

Thursday, April 21, 2011

Paper Reading 24 – The Why UI: Using Goal Networks to Improve User Interfaces

The initial view of when the user enters their goal.
Comments
Patrick Frith
Steven Hennessy

Reference Information
The Why UI: Using Goal Networks to Improve User Interfaces
 - Dustin A. Smith and Henry Lieberman
 - IUI 2010, Hong Kong, China

Summary
This paper dealt with a program called ToDoGo.  The authors explained how users often have goals they want to accomplish and that software should be tailored to helps users meet these goals.  They explained an online system where users declare their goals, and then post updates as to whether or not they met their goals and how they met them.  They took this format and implanted it into the ToDoGo system.  In their demonstration for how it works, they streamlined the process a little more than recognizing trends from a website.

Suggested tasks pertaining to the goal.
In the ToDoGo system, the user specifies what their goal is and a few attributes pertaining to it.  Once it is added, the program recognizes from its database related steps required to meet this goal and notifies the user about them.  If the user selects these goals, the program will further guide them in completing these sub-goals leading up to the main goal.  The designers’ main goal was to demonstrate how this type of application approach can be helpful in improving the user experience as a whole.

ToDoGo gives directions to aid users in completing their goal.
Discussion
I think the authors brought up a great point.  When presented with a program, it can sometimes be a little complex and overwhelming at first.  There are manuals and tutorials to help with this, but sometimes you just want to complete a simple task without the need to familiarize yourself with the entire program.  If the user could type in a goal and have the program give instruction on how to complete their goal, this would be amazing.  I love this idea, but it seems fairly high level and abstract to actually implement.  The work presented in this paper, however, has me optimistic that this can become a reality someday.

Why We Make Mistakes

Reference
Why We Make Mistakes
- Joe Hallinan

Summary
Hallinan discussed thoroughly the many reasons for why humans make mistakes.  Inexperience with subject matter can cause people to miss things.  The ones who are more experienced will be more sensitive to minute changes and will therefore be able to pick up on more.  Another problem is that humans connect information to meaning.  We need to for distinct enough meanings to things otherwise we can expect to forget it at some point.  Our tendencies to make snap judgments also causes many problems for us.  We think we know the whole picture when, in fact, we usually do not at the blink of an eye.

While being familiar with something can be a great asset, we can skip over certain details because we assume they will be there.  This is a common source for foolish errors and missing seemingly obvious details.  One more important source of mistakes the lack of constraint that we put on ourselves.  He explains how constraints drastically deplete the probability for error by removing sources for common errors.  Many don’t learn from their mistakes, because they did not properly find the source of it.  Similarly, removing complexity and adding constraints can greatly improve the effectiveness of a design.

One of the main points Hallinan wanted the reader to leave with was to think small.  It is the tiniest things that can make the largest impact on a person’s behavior.  He also added that attitude has a large effect on many things, like how we view life.  We need to keep the right things in perspective if we ever expect to decrease our rate of making mistakes.

Discussion
This book was a great discussion on the numerous causes of mistakes.  I know there were quite a few that I am guilty of doing myself.  One of the main ones is overlooking obvious things because I am too tied up in thinking I know everything in a certain subject.  As soon as you make mistakes in a situation like this, you immediately wonder how something so simple could have been missed.  Now that kind of stuff makes  a little more sense than it did before.  Something I will try to keep in mind is thinking small.  I think as a whole, humans like to overcomplicate things.  When something seems nearly impossible, we’re most likely looking at it the wrong way.  By breaking things down and thinking in the simplest terms, this can certainly help in resolving this issue.

Book Reading 51 – Living With Complexity

Chapter 1 – Why Is Complexity Necessary?
Summary

Norman explains the difference between a design being complex and a design being complicated.  He states that complex things exist because our lives are very complex.  There is no getting around the complex design of a jet cockpit control panel because the complexity of the technology requires it.  Good design can help alleviate how complicated the control panel is to individuals trained to use it.  Poor design on the other hand can make simple and complex things more complicated and overwhelming than they have to be.

Discussion
As common sense as some of this sounds, there are too many examples of bad design for this to be completely trivial.  If the design is created correctly, something as complex as video encoding software can be made simple to use.  But something as simple as a door can be complicated to use when the design is poorly executed.


Chapter 2 – Simplicity is in the Mind
Summary

Norman discusses the importance of the conceptual model.  At a glance, complex things can be difficult to manage.  But with a proper conceptual design,  a deeper understanding of the complexities of the situation can help make an intuitive design that alleviates the chance of it being complicated.  Over simplification can be detrimental just as an overabundance of features can as well.  The trick is to manage complexity with good design that will then yield better usability.

Discussion
The first thing I like to do before starting a program is to think for awhile and come up with a plan for how to best arrange and tackle the problem.  This usually entails drawing sketches and diagrams too.  Many people probably go about this process in the same way, and this is because having a conceptual model for a design is so important.  In the earlier days of programming, a lot of us probably just start writing code and came up with ideas on the fly.  The downside to this the inevitable roadblocks that will occur from different parts not fitting together properly.  This wastes time and can generate unnecessary complications in order to make quick fixes for the problems.

Tuesday, April 19, 2011

Paper Reading 23 – Automatic Generation of Research Trails in Web History


Reference Information
Automatic Generation of Research Trails in Web History
 - Elin Rønby Pedersen, Karl Gyllstrom, Shengyin Gu, and Peter Jin Hong
 - IUI 2010, Hong Kong, China

Summary
Research trails are an attempt at tracking web activity more robustly than simply using bookmarks or view browsing history.  The designers noted how web research behavior is very different from more conventional means of research like in a library.  Users will start at a certain site with sometime a vague understanding of what they are exactly looking for.  Over the course of exploring pages, their path they took can be quite varied.  If they decide to take a break from this activity, there is no effective tool right now to make getting back into the research a simple task.  Users tend to forget where they were, and will waste time trying to find their place.

The research trails concept eliminates this problem by representing browsing history as a path of connected sites.  As the user is browsing, the algorithms the designers use pay attention to the content and decipher when one research path ends and when a new one begins.  Once finished exploring a research avenue, the user can reference their path and easily see where they started and specifically how and when they reached their final destination.  The authors noted in their user study the challenge of how to handle similar research trails.  A possible solution would be to merge similar trails together and open up the similarity threshold within the algorithm.
Google as a giant robot.
The designers were satisfied with the trailing methods robust ability to recognize gradual shifts and research direction and to handle those properly.  In order to make the product more ideal, they would like to add pertinent snapshots to various points along the user’s trail.  Another important feature addition would be allowing the user to tweak the trails by changing adjusting its figures and moving items around.  They noted how these features are important in the final product, but they were not necessary in order to demonstrate the research trails concept.

Discussion
This was a very fascinating and extremely useful concept they explained in this paper.  I have a feeling everyone has gone on some extreme Wikipedia tangent before.  You start by looking at one page and then you see three, four, or maybe more links you would like to investigate.  So you  open new tabs or windows for those.  And then each one of those can spawn multiple new topics to investigate, and so on.  Before you know it, you have filled up an entire afternoon of exploring.  This can be entertaining and educational, but what if you want to take a break or you have other important tasks to accomplish that day?  Bookmarking all of those windows or tabs for later use is an option, but what are the chances you will remember what in the world you were doing and where to start?

Honestly, you’ll probably give up or miss a major avenue of research.  Either that, or you will waste a great deal of time researching on where you left off in your research.  Yes, a random Wikipedia binge is often not extremely important, but it definitely could be.  This is exactly the kind of situation research trails are made for.  The program would be tracking your tendencies the entire time, so you could easily come back to exactly where you left off.  It would also make is easy to back track in case you wanted to at yet another tangent to the research.  On top of this, the algorithm is also designed to recognize subtle changes in research paths.  So, it should be able to recognize separate research tangents if they are distinct enough.  This would further the simplicity of picking up all of the various research trails if you need to set them aside for awhile.

In case it is not obvious, I am very enthusiastic about the idea of research trails.  If it is not already in use, I would imagine it is getting close to becoming available for people to try out.  Since two people from Google worked on this project, I would be willing to bet this will be yet another interesting innovation that will simply appear one day without warning just like the web snapshots within search results did.