Dig Deep Fitness And Unique Application Usability Testing

Posted March 3, 2008 at 3:06 PM

Tags: ColdFusion

Over the last couple of days, I have taken Dig Deep Fitness, my iPhone fitness software application, and actually tried using it during real workouts. This was a very interesting experience - it's probably the first time that I have ever truly field-tested an application. In the past, I have tried to mimic what I thought an "end user" would do and I have given demos of software and web applications and I have tried to create highly usable web interfaces. But the truth is, unless you try and use a product as a real consumer, you can never really get a good feeling as to how it will be used. There are just too many contextual issues that can only be felt and experienced by a true user in a true using environment.

For a contextual example, using the Dig Deep Fitness iPhone fitness software in the gym is not just about "using" the application. In fact, a lot about the context has absolutely nothing to do with the application at all - it's about what clothing I'm wearing, it's about how fast I am going through my sets, it's about how sweaty I get, it's about what kind of machines I am using (and do they have shelf-like areas), it's about the level of conversation that I need to keep up, it's about how many smokin hot girls are in the gym (making it hard to concentrate), it's about what exercises I am performing (and is my phone in danger of being damaged), it's about how winded I get (and how much I need to catch my breath between sets).

In short, 50% of the application's usability has nothing at all to do with the application. Never before, as a web developer, have I ever even thought about approaching usability from this standpoint. And, I am not saying that it is even always an option; right now, I just happen to be in the highly unique situation where I am both the developer and the target audience. I'd say this is extremely rare and therefore is not something that can be achieved elsewhere. Sure, you can do usability testing with real test subjects, but even that is in a test environment that maybe nothing like a user's real environment.

That interesting perspective aside, there are a few things about the actual iPhone fitness application that do actually involve the web application itself. The biggest points of friction that I encountered are:

  1. The keyboard. Typing on it is a pain in the butt! Most of the time, I need the numeric keyboard and it defaults to the alpha keyboard. This requires an additional key press every time I want to enter weight or rep data. And, with every set containing both weight and rep values, this is a lot of extra typing on a keyboard interface that already suffers from usability issues.
  2. The select box. When selecting your next exercise to perform, you have the option to select an existing exercise from a drop down box. This box is very small, is not usable for long lists, and make reading long-named exercises very hard (if not impossible).

I see that I have to replace that drop down box with a list of exercise links that can allow for full screen "flicking". This will take care of that point of friction (I believe). The keyboard issue is a bit more complex. After some Googling, I am not seeing any way to default to different flavors of the keyboard. I might end up having to change the way weights and reps are being entered - maybe some sort of HTML keyboard or convenience links (ex. +5 lbs, +10 lbs).

This was definitely an eye-opening experience; it makes me wonder about what other things that I've built that I thought were good but, unbeknownst to me, ended up causing much more friction that I could have imagined. It just goes to show me how hugely inadequate we, as developers, are as "test subjects" for the software that we build.

Post Comment  |  Ask Ben  |  Print Page




Learning ColdFusion 9 - ColdFusion 9 tutorials, samples, examples, demos

Reader Comments

There are no comments posted for this web log entry.


Post Comment  |  Ask Ben

Recent Blog Comments
Mar 18, 2010 at 4:04 PM
jQuery's Event Triggering, Order Of Default Behavior, And triggerHandler()
Tks! You saved-me today. it can be chained into one statement: $("#x).attr("checked","checked").triggerHandler('click'); ... read »
Mar 18, 2010 at 1:18 PM
Finally Finished Ayn Rand's Atlas Shrugged Audio Book
@joaopft, Not disputing what you say - but... If I understand you correctly, you are saying that Positivism is based on sense experience (what I experience is what is), but Quantum theory states tha ... read »
Mar 18, 2010 at 11:48 AM
Duplicate() Much Faster Than ColdFusion Query-of-Queries
I am working on a massive xml parsing, qofq app to create 2 seperate xml files. I just don't understand the concept/purpose of duplicate function, are you duplicating the data or the row, into a new ... read »
Mar 18, 2010 at 11:22 AM
Exploring ColdFusion Component Runtime Class Properties And Serialization
@Zarko, Ha ha, you know ColdFusion is my first love ;) ... read »
Mar 18, 2010 at 11:15 AM
Exploring ColdFusion Component Runtime Class Properties And Serialization
Hi Ben, nice to have you back! I already gave up on you, thinking you'll write about jQuery and iPhone for the rest our our lives! :) ... read »
Mar 18, 2010 at 10:36 AM
Ask Ben: Javascript Replace And Multiple Lines / Line Breaks
@Ben Nadel, Hey Ben, thanks for you're response. It works!! However.. if you could please kindly look at http://edeals.zzl.org/divchange2.php where I am trying it out you will see that with the " ... read »
Mar 18, 2010 at 9:56 AM
SQL COUNT( NULLIF( .. ) ) Is Totally Awesome
This works too. I learned this trick a long time ago and it's really powerful for flags. SELECT g.hair , COUNT(*) AS girl_count , sum(did_date) AS did_date_count , sum(abs(did_date - 1)) AS did_ ... read »
Mar 18, 2010 at 9:16 AM
Using A SQL JOIN In A SQL DELETE Statement (Thanks Pinal Dave!)
Forget the last part of that. Wasn't thinking straight and hadn't done it exactly that way myself. It'll work if you're doing an 'In' but if you're doing a 'Not In' as above it'll do each check acr ... read »