Andrew Skalet
1. I choose UNIX, just to be different
1.1 Having been a UNIX system administrator, I would guess I know 50% of the functionality. I consider this a large amount for this particular HFA (and probably a large percentage for other HFAs as well). This level of knowledge, though much less than 100%, makes a user a near expert.
1.2 Lately, I learn new functionality by searching around on the web with words describing the task I would like to perform. If I happen to have the name of a program, I can use the "man" program to find out how to use it, and if that program is suitable for my needs. Another way I discover new functionality is by talking to friends skilled with UNIX about tasks I would like to perform. They often have an approach that I have not thought of. As a note, a HFA like UNIX is not as condusive to learning new functionality as a GUI based HFA, since the user can't really "poke around" without already knowing names of commands and programs.
1.3 n/a
2. I have learned lots of things on demand in my life. Most of my knowledge about using computers and their programs has been learned on-demand, as well as of software systems I have worked on. I will provide a couple of examples. When I worke as a UNIX system administrator, I learned essentially all of what I know about UNIX on demand. There would be a problem with a computer system, or a task that needed to be performed, and I would learn how to fix it, by using reference material or by talking with co-workers. Another example is that when learning a new programming language or extension to a programming language. Lately, I have been using the Java Swing UI toolkit. I have no desire to learn every dark corner of the Swing API, so I have learned much of it by searching through excellent reference material for the type of interface I want to create, and trying it out. A third example is working as a software developer on a large software system. As a developer, if you work on a new part of the system (to you), you must learn how it works to be able to improve/modify it. This learning is also purely on demand.
3. People have to know how to ask questions, or search through reference material, in print, on the web, or in other media. They also have to have the capability to confront new possibilites and choose whether they have found a solution or not. In essence, they must be able to search for a solution and assess solution candidates for applicability.
4. There are many domains in which learning the whole system ahead of time is impossible or very difficult. In the past many people might not have dealt with these systems, but Microsoft Word is a HFA that many people have to deal with today. If they want to be able to expand their capabilities (they might need to complete a document formatting task they have never faced before), they must be able to learn on demand.
5.1 Mozilla browser has a user modeling component, where you can customize displays and views to match your liking. The Eclipse Development platform (mostly used for Java develompent) is also highly cusomizable to a user's needs. These are both Adaptable systems, so they don't really model the user, but they allow the user to manipulate the program for his or her needs. Microsoft Word is the application I have the most experience with that attempts to model the user and make decisions based on that model, and I also find it the most annoying application that I use regularly. Amazon.com is another computer system that has a user modeling component, for a marketing purpose. I notice that Amazon makes suggestions for me based on what I have previously bought (Amazon's model of me as a purchaser), but I have not yet purchased any of the recommended items.
5.2 Any software system that provides contextual help supports learning on demand. For example, most web sites that offer help customize it based on what page you navigate to the help from. Similarly, most Microsoft applications allow you to right click and choose help, or a similar mechanism, and the contextual help will attempt to teach the user how to address a particular item. The UNIX "man" functionality that I mentioned above is an old learning on demand system, which allows users to learn about how to use a particular command that they have just discovered or would like to use differently.
|