Design4Cs#

Anh Nguyen Class Journal

mang at nyu dot edu

Project#2Improve digital appliance functionality

/ / Feb 5, 2007

/ / Create a software prototype for operational testing

I used Amit's mouse control code and made some changes (sped up cursor speed, switched keys for right handed use, added buttons to click on, implemented TYPING and CURSOR MODES) to see what it feels like to use your keyboard for cursor movements. Although this was not my original intention, using keyboard strokes to move the cursor, I feel this software test will give a sense if the concept is worth further exploration.



This processing applet is designed for right handed people (sorry lefties), as the mouse control keys are coded for the J,K,L,I,M,U,Y,O,P,N,',','.' keys. There are two modes of operation: TYPING MODE and CURSOR MODE. (click here to download zipped processing file)
Press CAPS LOCK to enter TYPING MODE. You will see the output of your typing in the command console.
Unpress CAPS LOCK to enter CURSOR MODE. Here you will use the keyboard to mouse over the designated buttons and click on them to change background color.

This test is to evaluate if working from the keyboard alone (or for the most part) is effective/ efficient. This is NOT designed to replace the mouse or trackpad, as they have their own specialized benefits, but rather, this is an optional substitute when you don't want to switch between keyboard and mouse.



Here is a video of me running the software test.

/ / My Reactions
I actually enjoyed using the keyboard exclusively, however I want more control over speed and accuracy. It is annoying when I have to move long distances as it takes a while for the cursor to reach its spot. Surprisingly, it was easy to highlight the buttons. The only challenge was the small 10x10 pixel circle button, which sometimes required more work to get at.

/ / Improvements
- I feel the main use for this is to get at buttons which aren't accessible via keyboard, such as the send button in a web mail program. Perhaps a more efficient solution is to implement a function similar to Mac OSX's apple TAB and PC's Alt TAB, which allows you to switch between programs. Instead of Tabbing between programs, one could tab between the various buttons that can be clicked in a given application or window. This however will raise problems for applications where there are too many options to tab between.
- Another improvement is to implement snapping. When you navigate close enough to a button, the cursor automatically snaps to the button, eliminating the need to make fine adjustments.
- And of course, increased speed and accuracy is a must.

More user testing videos coming tomorrow.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@

/ / Jan 29, 2007

/ / A written description of your suggested changes and their predicted impact

To address the problem of repeated switching between keyboard and mouse, I propose to make the keyboard itself into a cursor controlling device. IBM has developed the "TrackPoint" for their laptops which performs this function. Many people who become accustomed to the TrackPoint say it is fast and more convenient to use than a mouse or trackpad. A problem however is the learning curve which requires time and practice to become proficient at. Additionally, the TrackPoint is centrally located, which forces the user to return to a fixed location on the keyboard.


Instead of using a single TrackPoint cursor located in the center of the keyboard, I propose to make the individual keys themselves capable of controlling the cursor. This will allow users to maintain their current hand position and simultaneosly have control over cursor movements. By enabling this functionality on a keyboard, we eliminate unnecessary switching between keyboard and mouse, which may potentially increase productivity. I have not yet taken into account the possible negative, physical hand/muscle damages that may be incurred from using the keyboard in this manner. Perhaps R.S.I. will become more rampant as keyboards gain inteligence and develop new abilities- such as cursor movement!



Cursor navigation can be performed via two different software solutions:

- The first is to treat each individual key as pointer, like IBM's TrackPoint. This will allow users to control the cursor via any individual key on the keyboard. A problem I predict with this method is acute muscle movement pains? I don't know the correct term, but pains associated with working for extended periods of time on small precise actions. Secondly, this method may not be cost effective. I don't believe 'TrackPoint' technology is expensive, but repeated 70+ times will add up to one expensive keyboard!



- The second option is to use the entire keybaord surface as a Trackpad. Users slide their fingers across the keyboard surface and click by pressing two, three adjacent key combinations. This interface allows increased hand maneuverability which promotes free flowing, natural hand motions as compared to demanding, miniscule, precise, energy consuming nudges.

- A mouse click is performed by simultaneously pushing any two adjacent keys- such as J+K or U+I or U+H and etc.



- Right click is performed with three adjacent keys- such as H+J+K or S+D+F or B+H+U and etc.



- Highlighting can be used in combination with a regular click and any additional key such as shift, space or etc to set starting and end markers. Similar to highlighting in Jef Raskin's ARCHY program.


Below is notation for creating an email to kidmang@yahoo.com and sending it with NYu webmail.

Notation Key:
[Lup] lift hand up / [Ldwn] put hand down
[MV] move mouse / [T] trackpad hand movement
[P] press button (keyboard or mouse) / [R] release button / [H] hold

Proposed Option (maximized keyboard usage)
[T] track to "compose" button [P] [P] press and release two keys simultaneously [R] [R]
[T] track to "To:" field [P] [P] press and release two keys simultaneously [R] [R]

// Type "kidmang@yahoo.com" (37 operations)
[P] k [R] [P] i [R] [P] d [R] [P] m [R] [P] a [R] [P] n [R] [P] g [R] [P] shift [H] [P] 2 [R] [R] [P] y [R] [P] a [R] [P] h [R] [P] o [R] [P] o [R] [P] . [R] [P] c [R] [P] o [R] [P] m [R]
[T] track to "Body" field [P] [P] press and release two keys simultaneously [R] [R]
// Type "usability test" (28 operations)
[P] u [R] [P] s [R] [P] a [R] [P] b [R] [P] i [R] [P] l [R] [P] i [R] [P] t [R] [P] y [R] [P] space [R] [P] t [R] [P] e [R] [P] s [R] [P] t [R]
[T] track to "Send" button [P] [P] press and release two keys simultaneously [R] [R]
Total = 85 operations

Despite being the same number of operations, this method allows the user to remain on the keyboard, which is the main advantage. Even with increased keystrokes, I would much prefer this over switching between keyboard and mouse, which to me is the main problem. Here is a video demonstrating what the interactivity will look like:


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@

/ / Jan 25, 2007

// Choose a digital appliance, analyze its usability and suggest improvements.
- I will be analyzing the Keyboard and Mouse and how to improve interactions between these symbiotic devices.

// Describe one task demonstrating a problem.
Using NYU webmail, compose a email to "kidmang@yahoo.com" (no subject). Type in the body "usability test" then send the email.

Notation:
[Lup] lift hand up / [Ldwn] put hand down
[MV] move mouse / [T] trackpad hand movement
[P] press button (keyboard or mouse) / [R] release button / [H] hold

Option #1 (maximized mouse usage)
[MV] to "compose" button [P] mouse click [R]
[MV] to "To:" field [P] mouse click [R]
[Lup] switch from mouse to keyboard [Ldwn] (8 operations)
// Type "kidmang@yahoo.com" (37 operations)
[P] k [R] [P] i [R] [P] d [R] [P] m [R] [P] a [R] [P] n [R] [P] g [R] [P] shift [H] [P] 2 [R] [R] [P] y [R] [P] a [R] [P] h [R] [P] o [R] [P] o [R] [P] . [R] [P] c [R] [P] o [R] [P] m [R]
[Lup] switch from keyboard to mouse [Ldwn]
[MV] to "Body" field [P] mouse click [R]
[Lup] switch from mouse to keyboard [Ldwn] (7 operations)
// Type "usability test" (28 operations)
[P] u [R] [P] s [R] [P] a [R] [P] b [R] [P] i [R] [P] l [R] [P] i [R] [P] t [R] [P] y [R] [P] space [R] [P] t [R] [P] e [R] [P] s [R] [P] t [R]
[Lup] switch from keyboard to mouse [Ldwn]
[MV] to "send" button [P] mouse click [R] (5 operations)
Total = 85 operations


Option #2 (minimized mouse usage)
[MV] to "compose" button [P] mouse click [R]
[MV] to "To:" field [P] mouse click [R]
[Lup] switch from mouse to keyboard [Ldwn] (8 operations)
// Type "kidmang@yahoo.com" (37 operations)
[P] k [R] [P] i [R] [P] d [R] [P] m [R] [P] a [R] [P] n [R] [P] g [R] [P] shift [H] [P] 2 [R] [R] [P] y [R] [P] a [R] [P] h [R] [P] o [R] [P] o [R] [P] . [R] [P] c [R] [P] o [R] [P] m [R]
// Keyboard shortcut to get into body field (8 operations)
[P] tab [R] [P] tab [R] [P] tab [R] [P] tab [R]
// Type "usability test" (28 operations)
[P] u [R] [P] s [R] [P] a [R] [P] b [R] [P] i [R] [P] l [R] [P] i [R] [P] t [R] [P] y [R] [P] space [R] [P] t [R] [P] e [R] [P] s [R] [P] t [R]
[Lup] switch from keyboard to mouse [Ldwn]
[MV] to "send" button [P] mouse click [R] (5 operations)
Total = 86 operations


Emotional analysis - The problem I noticed is the need to switch from keyboard to mouse. When I begin typing, I develop a rythm and don't want to break this flow by taking my hand off the keyboard. Unfortunately, many computer operations cannot be acheived via the keyboard alone and require you to move, reposition the cursor and click on an object. Over time, this repeated motion of going from keyboard to mouse and vice vers wastes energy, is time consuming and becomes an overall nuisance. This leaves me searching for new keyboard shortcuts, which unfortunately does not solve the problem of controlling the cursor.



Project#1blind-compliant time telling device

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@

/ / Jan 22, 2007

Version 1:
I went ahead and prototyped my first design with cardboard and sculpy.
Using the traditional, ciruclar 12-hour clock, I replaced the hour and minute hands with two curving shapes for a more egornomic feel.
The user would ideally run their finger along each circle until they found the edge, which is the end of a curved ramp-like surface.
The outer (largest) circle = minutes; the middle cirlce =hours; and the smallest circle = seconds.
After testing the design blindfolded, I found the curving shapes confusing and hard to locate.
I had difficulty distinguishing between the hour and minute hands, which made it very hard to tell time.
I also found the device too small, with too much tactile information in such a small space.
So I abondoned the curved shapes for more traditional pointers as seen in version 2 below.



Version 2:
Still using the 3 concentric circle design, I replaced the curved shapes with straightfoward pointers.
The largest circle = mintues; medium circle = hours; smallest circle = seconds. I also made this version bigger to more easily distinguish the different cirlces and pointers.
On the back I created 1 set of notches to indicate 12,3,6 & 9 o'clock and another set for the remaining in between hours.
During my blind testing, I was able to tell the time but still had difficulty correlating between the pointers and hour notches.
I am not happy with the design but feel it is an improvement on the previous Iteration.
Perhaps carving out notches on the circles themselves will improve usability.



My alternate design
is a watch with two recessed circles, one representing hours and the other mintues.
On the perimeter of each circle are extruding and recessed notchess to distinguish the 12-hour face of the standard circular clock.
The hour circle is divided into 12 equal triangles. Only one triangle is raised at any given point to indicate the appropriate hour.
The mintues circle uses a small pointer, similar to the previous designs, which should give the user a fine enough sense for the general minutes.
The reason I chose the standard circular clock design is because it is widely recognized and understood by many people. This design also allows for a fairly fine approximation of what minute it is without requiring too much space and parts. I was thus attracted by its simplicity.
Furthermore, there are two raised notches to distinguish between AM & PM. One raised notch = AM an two raised notches = PM.





/ / Jan 18, 2007

This watch tells time through visual and tactile senses.
Using a standard 12 hour circular clock format.
Replace the thin hour and minute hands with two concentric circles
for comfortable and pleasant touch.



Necklace Design - for one handed use