Showing posts with label UI. Show all posts
Showing posts with label UI. Show all posts

Wednesday, November 2, 2011

Streetiview vs Streetside from a users point of view

So there has been a lot of blog posts on the internets comparing Bing's Streetside with Google's Streetview.  Mostly these cover technical and privacy points:


Streetview: Much larger coverage (certainly in the UK), Full 360 degree view




Streetside:  Avoided some of the privacy controversy by targetting 'super public' areas such as city centres rather than residential areas.  Viewing is more limited to a row view of buildings that slides by.

No one has covered the usability issues in detail so I thought I'd make some observations, to do this I need to go off on a bit of a tangent into 3D virtual environments:

Less Control = Easier to Use:  I've just finished a draft of a paper in which I reviewed Google Earth Tours.  One thing I discovered in the literature is that in 3D environments (Google Earth, Second Life) the 6 degrees of freedom* that a user needs to control can cause problems of usability:
  • Walls aren't solid: Users can crash through model walls which is disorienting
  • Desert Fog: Users end up very close to a plane surface like the ground, they can't see any features to orient themselves or guess scale - they are said to be experiencing desert fog.  
  • Peripheral Vision:  Because of the limited computer window into the environment they miss visual clues from their peripheral vision that they pick up in the real world (better in a CAVE setup or similar of course) 
Limiting their degrees of freedom of movement can help users avoid these issues.   An example is a tower in Second life - if a user can be 'locked' into moving around it so they can only fly a fixed distance from the tower and their vision is locked directly towards the tower they would avoid some of the problems listed above.  Their degrees of freedom have been reduced from 6 down to 2 (they can only fly up/down outside the tower, orbit it left/right) but they can still explore it.  Even more radical in a Google Earth tour users only have VCR play/pause/rewind controls effectively reducing their freedoms of movement down to 1.  

Streetside Constrained Freedom:  Streetside has taken the same 'constrained view' approach.  They allow a user to only look directly at the side of the road, this is sensible as in a cityscape as this is the most useful view.  To switch view to the other side of the street you simply click a little 180 degrees view button which zooms you around.  Streetside:
  • Mutiple Controls: Avoids problems of having to operate multiple controls (in Streetview they may expect double clicking to zoom them into a photo view, in fact it moves their position)
  • Look Sideways: Allows users to move along a street whilst looking at buildings.  In Streetview users have to face foreward to move foreward, to look at the buildings on the side of a road they need to stop and turn.
UPDATE 3rd Nov:  Actually that's not strictly true.   Streetside offers 'slippy slides' of the street going past which is better than Streetview's click-refresh operation.  However, you can arrange Streetview so you're looking side on to the street and then click the arrows so you move along.  Its quite clever actually.   
  • Fast: Allows users to whisk along a street in a zoomed out view faster than moving through Streetview (in a little informal test I did myself, see the zoomed out view that allows this in the above screenshot )
However, this comes at a cost.  Streetview has the advantages:
  • Less Disorientation: I think its easier to become disorientated by moving down a street only looking at one side.  Certainly for testing out a cycle route across a town, Streetview is more natural and would be the better tool.
  • Photo stitching is better in Streetiview, in Streetside I noticed whole streets warped out of view.  This may be a technology issue that is solved soon but at the moment it's a real issue.
  • 3D Buildings: While looking at Streetview, Google Maps also supplies 3D building models (earlier post on this topic see screenshot above) which further helps with orientation. 
Conclusion:
I think the Streetside approach is very sensible and may well be better than Streetview in cities.  However, outside of urban areas you would need to use Streetview as the side of a road becomes far less interesting.  IMHO the best product would offer both these approaches.  


*Avatar: up/down, forwards/backwards, left/right
  Camera orientation: yaw, pitch, roll

Friday, September 30, 2011

Weasley Clock as Tube Map?

This post is about how we can improve on a normal map to show the members of a work team where everyone is in real time.

Introduction: One of the most fun of the magical items in the Harry Potter world is the Weasley clock .


It shows the general location of all family members with a hand for each family member  (the photo above shows a mock up with not enough hands).  Various hackers have had fun building real non-magical versions.

Whereabouts Clock: Back in 2006 the basic idea was taken by Microsoft and developed to an actual device which showed location of workers in their team to each other.  It proved popular with the team who liked being able to see where people were at a glance and found it useful to see who was in the building.  Key characterstics:
  • It was an actual physical device and was always on
  • It used a weasley clock analogy with people's icons moving between 'home', 'in the building' and 'out'
  • Worked off SMS checkins
  • Only available for the work group, e.g. could not be shared with family groupings.
Google+ and Latitude:  This post from the 'about Foursquare' blog notes that the Google+ circles idea and Google latitude checkins is a powerful way to share 'where am I' information without running into privacy issues.  E.g. it allows me to checkin to a supermarket so that my girlfriend knows I'm doing some shopping whilst not telling my boss because it's during work hours.

The Whereabouts Clock appears to have never been developed beyond the original concept.  Recent developments in Google+, Latitude and mobile devices leads me to think it's a concept that is worth revisiting.  In the rest of this post I'll look at the problem purely from the visualisation and usability angles and produce a mock up of the main interface for a smart phone app.  There would be a lot of work necessary on the technical side to make my ideas work but having a workable visualisation system is the core problem IMHO.



Work Journey Tube map:  My solution is to suggest a single train or tube line map analogy for displaying the information.  I've actually taken the background of the screenshot from a train journey planner app I have on my iPhone.  This design comes from the idea that for a work team the key information is knowing where a person is on the usual home to work route*.  In the UI sketch above, what were the train stations have been replaced with specific locations (Home desk, Office desk) but also with general areas (on campus, in transit.  Strictly 'in transit' isn't an area but it is really:  The space I move through to get from home to University Campus).

Description: Team members are represented by colored blobs, their smart phones are tracking their position and converting that into general information for the visualisation, the arrows represent direction of movement of each team member.  Jim is at his desk and his smart phone (or login from desk computer) predicts he is not moving at the moment.  Dave is on campus and has just reached the Shackleton building and is coming in.  Meanwhile I (Rich) have just got off the bus and am on campus heading to the Shackleton building.  Sam is somewhere else than his work route in the UK.

By clicking 'Rich' the screen displays my estimated time of arrival at various locations (blue text), shows my annotation saying what I am doing (yellow box left) and grays out the stations I've come through

Key Information and Outward links: The visualisation offers key information on one screen, users would have no interest in where I am in Hampshire on my normal train journey, they just want to know I'm on the train headed to work.   However, they are interested in fine grained data such as am I at my desk or elsewhere in the Shackleton building.  Other information such as where I am on campus if not in the Shackleton building can be accessed by clicking on the map button bottom left which will link to a standard latitude map visualisation.  The calendar icon (bottom) links to the team calendar since the ability to schedule a meeting will often be wanted if a team member is not immediately available.

But is it a Map?  I would argue that it is because it is showing locational information.  It just happens to do it in a highly stylised manner. Like the tube map it warps real space as a way to improve clarity in terms of line length, however, it goes one step further as it takes polygons of a large variety of sizes and represents them as one 'station'.  On the tube map this would be the equivalent of grouping together  a number of stations and representing them as one.

Provisos:  I think the idea will appear in some form or the other in the future but there are a number of conditions that need to be met some of which I discuss below:

  • Mobile Devices:  Obviously the system needs data input from smart devices so the whole team will need them.  The data input could be from check ins or from passive tracking.  I think there is every reason to expect the vast majority of people to have smart phones in the next few years.
  • Can I track you?:  As with many social network technologies, this one requires a critical mass of people to be using it for it to really take off.  To start using it people would have to be happy with people tracking them.  At the moment I think most people would have reservations but just as 'I don't want to be contactable all the time' was a common moan about mobile (cell) phones when they became common in the 90's I suspect over time people will come to accept broadcasting their location provided they have control over the data.  Google+ circles provides just the sort of system.
  • Model: If the system incorrectly predicted my movements you can imagine that users would soon abandon it, the model that predicts my movements needs to be smarter than just calculating that I am travelling towards my work desk therefore I am likely to end up to it as I may just happen to be walking from meeting to meeting and heading in a general deskward direction.  The model therefore needs a certain sophistication and it could be a complex problem to solve.  It could be mostly solved by tracking people for a month and using a combination of calendars and previous journey data to predict movements.
And Finally: One aspect of the Weasley clock was not a location at all, it was  'mortal peril'.  I doubt that could be incorporated on my map anytime soon.  

*This assumes that as in my work place, people work from home a lot.

Thursday, September 22, 2011

Point Clustering Usability Example


Intro: A number of times before (1, 2) I’ve discussed point clustering maps. I thought it would be useful to present an actual case study of a mobile app* that makes use of clustering to explain why I think the technique has problems from a usability point of view.  

Herd of Sheep Problem: Clustering maps have appeared as a solution to an old cartographic problem: If you have too many points on screen they overlap each other producing a map that looks like a herd of sheep has wandered over it (particularly if you use white markers as below).

Barclay's bike hire Stations map in Zoomed out view   

The Technique: The clustering solution involves sorting points into groups, each group then gets a maker (usually a circle) which is labelled with the number of points in the group.  This reduces the total number of markers rendered on screen.  As the user zooms in on an area big groups break up into smaller groups.  At a low altitude  the point icons themselves separate out from the groups.  

Boris Bike Example: My case study is the London Cycle App for the iPhone which shows in real time where Boris Bikes (aka 'Barclays Bikes') can be hired from.  Bikes can be picked up from a large number of docking stations and the app is very useful as bike stations often become empty as a typical day progresses.  The app needs to deal with the herd of sheep problem, the screenshot above is actually the bike stations it needs to visualise, it does this using group clustering.  We'll discuss the map's symbolization at high and medium zoom levels and compare that to the needs of an imaginary user who's using the app to find a bike to hire for a trip into town.

High Alitude Zoom:  At this viewpoint we see two cluster circles which show how many bikes are available for hire in two groups (repeated 3 times below).


High Altitude View with different possible group catchments.


The major usability issue here is that the catchment areas that the groups have been created from are not visible.  Any of the dotted catchment areas I've added in the three screenshots above are possible.  This is an issue for our user for two reasons:
  • Where are the bikes?  It isn't possible for our user to know precisely where the 230 and 178 bikes are so how can she know where to head to?
  • Density:  Knowing the total number of bikes in a group isn't as useful to her as knowing the density of bikes per square km.  For example, if the centre map catchments applied she'd be sensible to head for the 230 group SW of Islington but if the right hand map catchments apply the 178 group may well be a better bet as it has less bikes but in a much smaller area.
Overlap?  Not knowing the catchments of the cluster groups isn't a complete fail, its just unnecessarily vague. However, what is clearly a serious problem is the group circles overlapping.  That's plainly confusing for our imaginary user, it has no meaningful interpretation that I can think of.

Alternatives:  I think that both heat maps and grid density maps (below) are better solutions to the herd of sheep problem in this context as they communicate the data as density of bikes rather than total count.


Alternatives: heat map of house prices (bottom) Grid map of mobile web coverage (top) from this BBC site).  Boundary is of the whole bike scheme.

 (Note that I didn't have the time to create actual maps of the data we're discussing, these are maps of different data sets over London but they illustrate the techniques).  


High Zoom Best Alternative: No Data  My solution to the head of sheep problem is not heat or grid maps and is shown below:

its slightly counter intuitive but I've come to it by thinking about what the user actually needs.  She's probably getting into London by public transport and therefore knows the rough area that she wants to pick up a bike from.  My reasoning is that at this zoom level, the data is actually a visual distraction, what she really wants is to see landmarks so she can zoom in on her chosen area.  The bike availability is best kept off screen until she has zoomed in   You can see I've used three landmark layers above:
  • Boundary: A polygon showing the boundary of the area covered by the Boris bike scheme 
  • Big Train Stations: The location of a number of mainline train stations.  Not only are these well known landmarks in London but a large number of people wanting to pick up bikes will be arriving here (red pins).
  • Bike Stations: The location of the bike stations themselves (blue circles)*
Medium Zoom: As the user zooms in from the High Altitude Zoom view, the two big clusters resolve into smaller groups (below left).

Medium zoom screenshot (left) and suggested alternative (right) created by screen capture from excellent oobr's bike share map

With each further progression down the zoom levels the number of clusters, their size and their location changes.  This change of symbolization proved highly confusing to users.  My PhD student Craig did some user tests on a similar visualization, his observations show that users expected that the circles would persist across zoom levels - some even said they wanted to use them as landmarks and were very put out when they disappeared from the screen!  

Medium Zoom, Improved View (above, right):  At this zoom level, by reducing circle size, its actually possible to present circles representing all the bike stations with color coding showing where bikes are available (red = lots available, blue = few, circle size = number of docking points at each bike station).  Our user can probably locate a station to head for without having to zoom in further, a good usability gain plus she avoids the problems of changing symbolization outlined above.  The alternative map isn't optimized for an iPhone screen but I think you can see my point.

Conclusion:  My suggestions for improvements to the bike app screen shots at high and medium zoom levels involve not using a clustering technique at all. They could be combined as an complete alternative to the app; at high zoom levels the user sees just landmarks, when she zooms on her chosen area the map view switches to the medium zoom visualization illustrating bike availability. This alternative app would;

  • Avoid multiple confusing changes of symbolization with zoom (the most important advantage)
  • Avoid cluster circle overlaps
  • Avoid obscuring the view of the map by big cluster circles at high altitude zoom levels 
  • Show landmarks to aid effective zooming in
  • Show the user bike location data precisely - the user only sees bike availability at each station, there is no ambiguity created by grouping stations.  
  • Present the user with bike availability at the highest zoom level meaning she doesn't need to zoom in unnecessarily.  

I don't think this technique of avoiding point clustering completely would work in all situations but in the case of the Boris Bike app, I think it's the best solution.

Further Testing:  My PhD student Craig is going to be comparing the usability of alternatives such as the heat and grid map to the cluster circles in the future.  So far preliminary results show there are serious issues with point clusters but also that there are issues with the alternatives as well.


*I've got the boundary of the Boris Bike scheme and the station points wrong in some screenshots but I haven't corrected it because I'm short on time at the moment and it doesn't impact the discussion.

Thursday, September 15, 2011

Nerd Day Trip Map Review

Ben Goldacre has kept me amused over the years, he's just published an interactive map project (with a team) 'nerdy day trips' and asked for comments, so I thought I'd repay him with some ideas and publish it as a blog rather than just put it in an email.

Look and Layout: I liked the look: Professional look with a quirky feel.  Maybe save some map space by thinning out the header or by incorporating the graphic in the top left of the screen into the header?  Users generally like having more map, less graphics.

A minor point is that most users will look top left for the zoom bar in any Google Map.  You might like to move it up there for them if you don't feel it jinxes your look too much.

User Interface:  Nothing major wrong here either.  Minor point, I didn't know the post code of the Elan Valley trip I added in Shropshire, I imagine other users won't know postcodes of sites either so it shouldn't be compulsory to add one.  Do you really need the user to enter this data at all?  You have the latitude/longitude from their point and can generate post codes using this data.

Users will be expecting the info bubble to be graphically linked to the point that was clicked to create it.  By not using this you clear more space for your information and therefore less scrolling necessary which is good.  However, you might like to think about animating the info screen so that it grows out of the point that created it in some way.

Symbols:  A more important point - The paddles you currently have are bigger than necessary.  Reduce their size and avoid 'herd of sheep' visual clutter (where paddles obscure other paddles) in more areas.  You may like to consider using small circles as this would help even more (you can see this effect by doing a search on Google Maps for "cafes" over London).  The problem with this is that you really want to make them an intense red so they are visible and that doesn't fit with your color scheme.

Future features: I'd endorse your feature idea of categories but don't go overboard with very many - a great charm of this map is that it is so simple, don't spoil that by letting it get overly complex.

If I had one suggestion of my own it would be that you work on the day trip creation user interface. I would have it so that a user creates a day trip by dragging a symbol to the right place.  When I created my day trip by a simple click I wasn't zoomed in enough on the map to locate it accurately.  Dragging and dropping a symbol is not only intuitive, it gets over this issue, people will only do it when they're ready.

Tuesday, September 6, 2011

London Transport Maps: Google, Bus Mapper and TFL

Google recently released a Public Transport Directions in London mapping tool as part of Google Maps.  I thought it would be good to compare it to other London transport services (Transport for London and Busmapper) and discuss the usability in terms of UI, symbology, data and mobile use.

Transport for London: up to now the only transport directions tool covering multiple transport types (that I've come across anyhow) has been transport for London (TFL). Although it produces a zoomable map in the results you can't input your start and end points by creating points on a map.  Also, the output map is small on the screen surrounded by adverts and other chart junk elements I don't want to see (see screen grab below):



not that user friendly - I want to be able to expand the map easily and enter points directly onto it.

Google Maps:  The new Public Maps transport directions answers both of my criticisms of TFLs website; you can click to define points, type in post codes (UK zip codes) or type in other place identifiers to define your start and end points directly.  You can also expand the map easily and it already covers most of the page with no ads.  Neat!

User Interface - Adding Start/End isn't Easy: Whilst the expand screen arrow (actually termed 'hide panel') is pretty self explanatory it's not obvious how to add points to the map.  Expected behavior: two pins icons to be available in the control panel with some micro text saying 'drag to define trip'.  What you actually have to do is right click on the map and choose 'start journey' or 'end journey'.  Bus Mapper does it much better with some simple 'click twice' text advice.  See me do it in the clip below



(note that the orange circles denote a click but were added by my screen recorder).



Symbology:  Moving on from the UI to symbology, there is some good work in this service but also some aspects I hope Google sort out soon.  Discussion refers to the above screen shot or you can open the original map.  To reproduce the view above, turn on the transit layer and create pins as outlined above.
  • I like the angled labels (e.g. the label behind the green 'A' pin).  These enable a point to be labelled without overlying a nearby marker/label, unfortunately it seems the service isn't programmed to deliver this functionality.  For example, in the bottom right - the start (A) label could be separated from the 295 bus label if the angle went towards the bottom left rather than the top right.  
  • Label Lines not Points: While we're still talking about the labels it's counter intuitive that they point to bus stops rather than lines.   For example, in the screen shot the 295 bus route is shown as a blue line but its not labelled 295, the label points to the bus stop at the end.  
  • Colors for travel modes: Its useful that walking and transport are different colors (black and translucent blue respectively).  It would be nice to see different symbols for the lines for different travel modes, the tube line colours are known by most Londoners but I think this would get confusing because the suggested route would get mixed up with tube lines and other on screen elements.
Data - Missing Overland Train Info: The major problem I have with the transit map is that it misses out overland trains, on the map these appear as orange lines.  As an example, for the trip in the screen shot its actually much better to walk to Clapham Junction (covered by 295 label), then go by overland train to Kensington Olympia (East of Kensington) and then walk the last section.  Google not only doesn't include that mode of transport - it doesn't even tell you its not using it.   Not a fail but pretty serious problem for a journey planner - you could easily double your journey time as a result of not knowing about the overland route (buses can be very slow in London).

Mobile:  Comparing the Google map on my Mac to that on the iPhone there are a couple of things that stand out:
  • Consistency:  Why is the transport line blue on the Mac but purple on the iPhone?  It's not a huge issue but I can't see any reason not to get the colors spot on.

  • Step Through: When you have the route calculated Google Maps has a really nice feature that allows you to step through the directions.  A purple circle (see above) shows the transfer point and clicking the arrow (top right) steps you through the complete route animating the circle from transfer to transfer and automatically moving the screen.  Very slick and easy to use.
  • You Are Here:  Where the Google mobile map thrashes transport for London mobile enabled website is the blue 'you are here' indicator.  It's very useful for travelling, you don't necessarily know where you are when you start a trip so typing in a name or post code is difficult, much better to use the blue marker and drop a pin on the map.  Not having a decent map interface leaves transport for London dead in the water IMHO. 
Conclusion:  I haven't reviewed other transport apps for the iPhone in researching this review so there maybe services better than Google Maps transport for London out there.  Up to now I've been using transport for London and Google Maps is a huge improvement on that especially on the iPhone.  That being said, Google have work to do, I'd suggest adding the overland train routes is a priority.