PointClear Swag on Zazzle
Saturday, December 30th, 2006 by NealGet your super-cool PointClear T-shirts and mugs here.
PointClear Solutions develops user-centered custom web and software applications for healthcare.
Get your super-cool PointClear T-shirts and mugs here.
Let me start this post by saying that I am not normally a Microsoft basher. Today, however, I am going to stand on the browser soapbox and scream.
Today, I was trying to do something I thought would be very simple. We needed to export our data as xml and allow our user to save as a file. Easy enough, right? Right? Well, hold on there partner, Internet Explorer does not play well with others in some cases, this one being one of them.
Here is the scenario. We have a .aspx web page that retrieves all the users data, formats as xml, and places it on the response to send back to the browser. Now, here is where the tricky part comes in. The browser would like to just display the xml since it knows what it is, however, we don’t want the user to have to use the browsers save function to save the file. No problem. We set the following header:
Response.AddHeader(”Content-disposition”, “attachment;filename=\”test.xml\”") and all is well, right? Well, sort of. Firefox works like a dream. Netscape is bang on. Opera is smokin. Internet Explorer is, um, close… I do get the save dialog now, however, when I click the save button, instead of trying to save test.xml, it tries to save test.aspx?id=23 and, well, it just cant seem to do it.
So, after searching for about an hour on Google, I came up with this article: http://forum.java.sun.com/thread.jspa?messageID=3901115 Oh, wait, I have Response.AddHeader(”Pragma”, “No-cache”). For some reason that I guess only Microsoft understands, if you have the Pragma, No-cache header the file name specified in the Content-disposition header is ignored. I removed the Pragma header and all is well.
Sorry if this post sounds a little sarcastic, it just gets a little frustrating at times trying to write code that works with all browsers.
Ok. I have stood on my soapbox long enough.
Peace.
Keith
UserVue is a remote usability testing tool created by TechSmith, the makers of SnagIt and Morae. UserVue is billed as a lighter, less expensive version of Morae with a lot of the same features. The program allows a usability professional to connect with a participant who is located remotely to conduct a usability test. The facilitator can see the participant’s screen and talk with the participant during the test.
The program is accessed via the web. A console lets you set up studies and sessions within studies. To run a test, you simply create a session, input the URL of the web site to be tested, and the user’s phone number. The phone number is necessary because UserVue first calls you (the facilitator) and then connects you with your participant via phone.
I have been using UserVue for two usability studies and have been pretty happy with the tool. The support staff at TechSmith were very helpful in getting me started. I don’t have a land-line phone where I work – I use VoIP instead. TechSmith granted me extra trial time so that we could test how well UserVue worked with Skype, my VoIP software. The conclusion is that it works just fine.
What I like about UserVue
Features I’d like to see added
I look forward to seeing how TechSmith expands and improves UserVue. For now, it’s a good product with a lot of value for the $149/mo. price (unlimited use).
This is the headline from a recent article in the NY Times on Birmingham. Read before you go to lunch.
Birmingham Has a Lot on Its Plates These Days
Great article, but I am left wondering, how could they come to Birmingham on a food tour and not visit the Bright Star? Blasphemy. Of course, I guess this should come as no surprise, as, for some reason, an Atlantan conducted the tour. Philistine!
My dad grew up on a farm in East Tennessee in the ‘30s and ‘40s. his parents were farmers – chicken farmers. He was an only child and living way out in the middle of nowhere, he had to entertain himself. So, he had pets. Well, actually farm animals – and they could transmogrify from a pet to an entree pretty quickly. So, he never got that attached to any of them. Except his goats, actually. He used to tell me stories about these goats that he had that had sort of a “design flaw”. He claimed that if you snuck up on his goat herd and “spooked” them, presumably by screaming and flailing your arms, that they would FAINT. Just pass out, keel over, etc. I not sure I even believed him at the time.
But, as fate would have it, I was driving from Huntsville to Birmingham a couple of weeks ago and came upon this sign. I had to stop and take a picture. Unfortunately, I did not have time to actually inspect said livestock. Maybe some other time… I’ll pack a lunch and make a day of it…
Check out the video of the little rascals here: http://www.qarxis.com/Fainting_Goats
Insects can do some truly amazing things. For example, several species of fireflies synchronize their flashes so that they develop collective group-on/group-off patterns that humbles even the most elaborate Griswold-constructed Christmas light display; ants colonies quickly find the quickest route to a food source among many possibilities, build bridges, and even arrange their dead in neat little patterns; and, many species of birds swarm while migrating creating emergent meta-organisms that seem to have lives of their own:
More below the fold…
I was talking with a friend of mine today about a project that she is trying hopelessly to manage. As she was lamenting the current pains of the project and what the application architects had decided to do this week, it occurred to me why this project is doomed to fail. In all the uproar over what technology, platform, servers, database, etc. to use, the architects failed to remember one vital component: the end user. The end user doesn’t care if this application is a web application written in asp.net or a native windows application written in C# (or Visual Basic for that matter). They don’t care if you are building a j2ee application using Websphere or a totally cool AJAX web 2.0 app in Ruby on Rails.
What they do care about is performance, stability and usability. If we build an application simply to pad our resume, or to play with the latest and greatest toys, we are doing our end users a great disservice. If we add components, simply to say we used them, we are doing ourselves and our successors a greater disservice.
There is a large Simplicity movement going on in our country today. People deciding to leave traditional corporate life behind, people trying to un-clutter their lives, trying to get off the treadmill, trying to be different. Maybe we, as software engineers, should take a few lessons and remember the KISS(Keep It Simple Stupid) method. Let’s build what the client needs, not what we want…
Peace
Keith
Way back in 2001, Joel Spolsky wrote a great essay, Big Macs vs. The Naked Chef that basically explained why most consulting companies do mediocre work. You should go back and read it but the premise is that most consulting companies grow faster than they can attract top-notch people. In order to compensate, they create “The Methodology”. The purpose of “The Methodology” is to ensure consistency by making sure that all consultants do things in the same way. Sort of a playbook, if you will. So, you get consistency – consistent mediocrity for the reasons Joel so eloquently points out in his essay.
In thinking about how our own company, PointClear Solutions, can and should grow, I thought it interesting to explore alternatives to the “Methodology Driven” approach. Before PointClear, I worked at a consulting company that faced these exact challenges. We went through the development of “The Methodology”. A lot of good folks put in a lot of time on this – problem was, nobody used it. The really great developers didn’t need it. The not-so-great and inexperienced developers didn’t understand it.
But, even without “The Methodology” projects were still being completed and delivered. Some were more successful than others, and, without fail, the successful projects were always led by the same consultants. So, who are these consultants? What are their characteristics? Below are some of them, there are many more, of course…
So, it seems obvious. You simply build a company that is made up exclusively of these types of folks. You certainly have an incredible delivery capability. But, it seems you’ve traded one set of problems for another. How do you find, attract and retain these folks? How do you grow and “scale” this type of company? At PointClear, we are addressing this thorough a combination of things such as a fairly unconventional compensation model based upon hours billed as well as a VERY flexible work schedule. There are others. Some will work and some will not, I’m sure. In many ways this is an experiment and we are learning as we go. I’ll be posting more on each of these in the days to come.
-Blaine
I heard the quote “Know thy users, for they are not you” at a Human Factors International class I took last year, and it quickly became one of my favorites. They even gave me a button emblazoned with this saying. I sometimes wear it as one of my fifteen pieces of flair.
The point of the saying is that there are definite pitfalls when an interface or a web site are designed by someone who doesn’t have input from the user base. A designer or developer can’t know for certain what users want or what gives them trouble unless we ask.
I heard an excellent talk the other day by Shannon Brooks-Hamilton, from DAXKO. She was introducing usability to a local Internet professional group. Shannon brought up this same saying, and made a point that I have also noticed in the past. Every time I do user interviews or user research, I’m always surprised by what users say. Sometimes the things I think would be difficult, they have no problems with. And something things I never considered would be hard, are.
I was reminded of this today while doing some Christmas shopping for my in-laws. They do a lot of rails-to-trails cycling, and so we thought we might get them some new bikes. At the bike shop, we looked at a couple of hybrid models. I was immediately drawn to the one that was more like a road bike, with a rigid fork and flat handlebars. My husband was much more interested in one with a front shock, upright positioning, and handlebars that curved up. “My Mom would much rather sit up than be leaned over,” he said. I realized that I was projecting my preferences for a bike on my in-laws rather than looking at things from their perspective. I ride a bike made to be aerodynamic in a race situation; they ride for recreation and want to be comfortable. Had I been alone, I probably would have bought the wrong thing. Without user input, I would have been designing in error, so to speak.
Shannon made another good point that I’ll reiterate here. Some user testing, even it’s with your friends or co-workers outside the project rather than “real” users, is better than none at all. We as designers are often too close to the design to see it from a user’s eyes.
I just put together my new Herman Miller Aeron chair, and I was so inspired that I had to blog about it right away. It came in two pieces: base/seat and back. Putting it together consisted of 4 screws to connect the back to the base/set. It was so simple there was no need for directions to be included. Ah-ha! A hallmark of a truly usable product.
I love it when furniture that has to be put together comes with the tool you need to do it. My chair came with an Allen wrench - no need to go out to the garage and root around for the right screwdriver. My Ikea desk was the same way. Frankly I find the Ikea experience maddening, but I do think they got it right by making the screwheads Allen-compatible and including each wrench you need.
Thanks, Herman (and Blaine)!