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.

Continue reading

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.

Continue reading

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).

Continue reading

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.

Continue reading

HCI 430: Prototyping & Implementation

I just finished HCI 430 Prototyping and Implementation. This class involved designing interfaces for windows applications and writing the code to make them work. I was a little nervous about taking this class because although I can write code, most of it is procedural scripting; PHP, VBscript, JavaScript and all of that is focused on web applications. Despite that, I wasn’€™t sure how I would handle this… it turned out to be trivial. I have never written a formal windows application in any great detail (I’ve done “hello world” and temp converter tutorials, but that’s it), yet this turned out to be only slightly more complicated than developing web applications. Especially when using the Visual Studio IDE.

Continue reading

Why, Oh Why, IE

[Edit: Life is getting much better these days with IE 9 beginning to support standards and be consistent as Firefox and Safari (and now Chrome and there is always someone on Opera)]

Usually, I start out creating my designs for this site by testing them in Safari (yes, I am a Mac user… so consider this my first contribution to the holy war of mac vs pc). I also test Mozilla on the Mac/Windows and feel that if it looks good in those two I am generally on track. Eventually, I get around to checking in IE on Windows and then IE on the Mac (although, I don’t know why anyone would still use IE on a Mac). Here, I typically find some fatal flaw that IE just craps on. If it were not for the fact that Windows forces users to use IE (software update with Moz, I don’t think so), most everybody would have chucked it a long time ago. Now, only due to the security lapses in IE, has Firefox (Mozilla’s light and fast version) begun to claim some users back from IE… but you still have to use IE. And most users still do…

Continue reading