Stretchy layouts are not good, yet every über techie who has a 20 inch or larger monitor wants web sites to stretch when they open their browser to the width of the monitor. Well maybe not every über techie wants stretchy layouts, but enough that comment on design related message boards that it really irks me. Why is it bad, because paragraphs that span exceedingly long widths are difficult to read. This is of course assuming they are long enough to still take several lines. A single line of text is not hard to read. And, of course, if the site is only images or video, then it is not as much an issue if at all.
Category Archives: user experience
HCI 590: Navigation Test Tool
I completed the MS in HCI at Depaul with my last class being an independent study to build a tool for testing/researching navigation and how people acquire/find information from them. Actually, I have been researching this for the last year on and off so this was in a way more of a culmination of thoughts and reading. The main outcome was the development of a web based tool that could be used to present tasks to a user and collect data as they interact with a menu navigation system. Ultimately, the project was a continuation of Dr. Craig Miller’s research into how users conceptually navigate a hierarchical menu structure. He had developed several prototypes that used java and flat text files to present the data.
As with most academic endeavors of this kind I, the student, started with a fairly broad goal and needed to narrow it down. However, my goal was not exactly the same as Dr. Miller’s as I wanted and still want a general purpose tool that could be used for a variety of research activities related to testing website navigation and usability. Where as he and another researcher are seeking to better understand the conceptual model of users as they learn a menu and find information organized in that menu. For me, my practical work experience has lead me to see the need for an easy to use tool to help better organize/prepare complex menus for websites, especially after a site has launched. So I am first assisting Dr. Miller and the other researchers in developing a tool that will work for their testing, but also I am trying to develop it in a way that I can use to do basic testing of web usability in general.
I have produced a prototype tool and released it as an open source project. It can be found at the address below. It is in alpha (or even pre-alpha) phase so any recommendations, thoughts, or contributions will be welcomed.
The project was written in PHP and uses a MySQL back-end. There is a demo and you can download the source plus the setup files from the site. If you have questions you can contact me via the project site. Essentially, the UI Nav Test tool is a very stripped down CMS with features for presenting tasks to a research participant and it also has a basic reporting page and allows the researcher to download the raw data for further analysis. While the appearance is very basic, this is intentional. As the purpose is to identify problems with labels and organization, not whether something looks pretty or not. The demo is set to use one of Dr. Miller’s content domains which is focused on understanding how people conceptualize the navigation steps they will take to find items.
HCI 594: Capstone
I just finished the capstone course. Normally the last class to be taken, but due to it only being offered one time a year, I have one remaining course to complete my masters degree in HCI. It was a tough quarter in part due to a family problem, but also the from amount of work that was needed. I had to go to Japan for a week about midway through, but I was able to finish all the work required. We had to write 3 papers reviewing published research/articles by well known HCI practitioners as well as conduct our own research project and do a write up.
The first review was of a writing by Bruce Tognizzini. Tognazinni is part of the Neilsen, Norman group and a former Apple employee. Several years ago he put out an article called “A Quiz designed to give you Fitts”. In the article he goes over questions that every HCI expert should be able to answer. Well you also have to be a Mac user and being an engineer would probably help (note having a degree in HCI does not necessarily make you an engineer). He uses the article to basically lament the passing of the old Mac OS and how superior it was to the new Mac OS X (and of course Windows). To which I have to say, he is full of carp (sic). While I love Macs and started out in System 5, Mac OS X is light-years beyond the previous OS. He is also on the record as hating the dock (but that is another article), which I also love. So while I respect him for his contributions to the GUI world, I think his emphasis on Fitts is a throw back to mechanical engineering and is not entirely applicable to the web today.
Here is the full review of Tog: Tog: Week 1 [pdf 103k]
The second review was of Chapter 3 from Jeff Raskin’s “The Humane Interface”. Raskin another Apple alum, outlines the need to for modeless interfaces and that he believes there is no such thing as an expert user. Again I can respect the man and his great contributions, but we are given utopian HCI platitudes, that haven’t gained traction despite being known for a decade or more (which is a long time in tech). I completely disagree with not differentiating users and providing different ways to do things. To me this is akin to the idea that all learners learn the same way, which has been shown untrue. While certainly nobody probably knows every feature of a program (except the developers), they can be experts in the use of specific features. Which is in my opinion enough to warrant accommodation different from beginners. Learnability is a key principle of usability and should take into account that people learn in different ways.
Here is the full review of Raskin: Raskin: Week 2 [pdf 106k]
I will wrap up in another post on my final project later….
Two good consumer experiences
I recently had a nice experience as a tech consumer, a lifetime warranty that was honored and a product that worked as advertised for something where there is a lot of debate. First the warranty was for a 1GB ram chip. When I bought my laptop almost two years ago, I bought 2GB of ram from a third party dealer. It was much cheaper than the ram offered by Apple, but of course I would have to install it myself. Which is dead simple as most laptops now make a special door to install ram (it wasn’t always like that… many laptops from the late 90s had to be taken apart to get at the ram). At any rate, late last year one of the ram chips started crapping out. First I would get a kernel panic, which I thought might be something else, but then I noticed after restarting, that the ram read at half the capacity (512 MB). I ran Apple’s hardware diagnostic and it indicated the chip was going bad. Eventually, it just quit working all together. I still had 1GB in the system, so it wasn’t a big deal, but it is nice to not have to close anything during the day as I work. So I missed having the 2GB. I thought I would have to buy a new chip, so I went to check the company I bought the chip from www.4allmemory.com and there on the page was a lifetime warranty link. I checked my original invoice and sure enough, it was covered. So I called half expecting them wanting me to explain the problem and what I did to verify it was the chip and do everything I already did to verify the chip was bad. Instead the friendly person simply said pack it up and send it in, and they will send a replacement. That’s it, no fuss, no hemming or hawing, just great service. Ok, it did take them two weeks to send the replacement, but it was great just to receive it at all.
HCI 445: Inquiry Methods and Use Analysis
I finally completed the last of the core courses for the HCI program. Now I only need to take two more electives and do the capstone. This last class was definitely one of the better courses I have taken. While it was similar to the HCI 460 course it is different in that it focused more on the the initial user observations whereas 460 was about usability testing methods and reporting. The class started out with us doing our own user observation. This involved finding a task to study a user performing. Then finding a user and arranging a time to observe them.
CSS hacks/unhacks: using IE conditional code to solve CSS problems
Working on a recent layout, I was finally confronted with the need to have an IE CSS hack. I hate hacks, because they often break with browser updates and aren’t easily remembered. So I avoid them as much as possible. However, I finally succumbed to having to use a hack… except the method I use is not a hack so much as relying on IE functionality. My designs typically can be made to work in Opera, Mozilla/Firefox and Safari browsers very easily, and then occasionally take some head pounding to get to work for IE (first windows then mac). While some might suggest designing for IE first, that is not desirable as I use a mac to develop on, although I do use a PC at work. Also, when resolving a design for IE first, it is tempting to not check the others, as IE is still the browser of the masses. Working with Safari, Mozilla first gets the less numerous browsers out of the way. The additional nightmare of IE is that you have to deal with the subversions, 5.0 does not work the same as 5.5, which is not the same as 6.x (don’t mention 4.x browsers).
AJAX: just another buzzword
[Update 2011: OK, so back in 2005 I was skeptical of AJAX. At the time you needed to truly be able to write javascript in order to deal with the browser compatibility issues. The situation with the GAP site failing was a major foobar on their part and showed how much effort it took to do AJAX appropriately with things like graceful degradation. Today of course we have one of the most awesome libraries in jQuery. Which handles all the nastiness of browser problems for the most part. Today it is possible to do things with jQuery that really lead to fantastic interaction experiences. There are many other fine JS libraries and frameworks, but jQuery has really solved the problem in a way that simplifies and yet still provides powerful control to the designer/developer.]
Original Article:
Recently, I’ve had conversations with a few of my developer friends who are all a twitter about AJAX. Saying how great it is and all the cool things Google is doing with it. Honestly, after taking a real close look at it, I find it to be hardly more than another buzzword. It simply does not offer anything of real value for web development. Yes, it can make interfacing with certain web applications smoother, and it solves some problems inherent in web applications. However, it introduces a whole set of other problems, that in my opinion, make it widely unsuitable for most work.