Thursday, February 7, 2002

Conflict in HCI Field: Computer Science vs. Psychology


Recently, I have become obsessed with what I feel is a huge conflict in the HCI field between the role of Computer Science and the role of Psychology. Most HCI courses, programs, or research I run into involve coming up with newer, novel, and more "effective" software strategies. Usability Tests are conducted in order to test the effectiveness of one particular strategy vs. another (Example, Browser-based interface vs. Native Windows Interface).

Although these things are important, I feel that the REAL issue at hand is largely being ignored. THE BOTTOM LINE: The purpose of technology is to make life easier. More specifically, to simplify a particular task or set of tasks.

As such, software is not very interesting. It is merely a tool for accomplishing the goal; a tool for IMPLEMENTING the goal. What's more, history has shown as that the tools we use for accomplishing our goals constantly change, and of course, they will continue to do so.

So, what is REALLY interesting, and what is REALLY important, is discovering (or should I say, "working towards") the IDEAL way to accomplish our goals. FORGET ABOUT THE IMPLEMENTATION!  It is absolutely SECONDARY!  It should be of no interest to us; what's more, we should make a conscious effort to completely block it, and it's inherent set of limitations, out of our mind.

Only later, after we have meticulously (and with solid engineering methodology) beaten the hell out of our IDEAL solution, and tested it using all known human ways and means, should we even think about adapting our IDEAL solution to the constraints of the implementation (which, in our case, is usually software).

SO, exactly HERE is where I see the conflict between Computer Science and Psychology in the field of HCI.

Computer Science focuses way, way, way too much on the implementation!

Computer Science students who take HCI courses, or even Computer Science PROFESSORS who teach HCI courses, LIVE in the world of software. Their brains are immersed in the idea of software. When they are asked to develop a program, they start off in the world of software and try to make their way into ADAPTING the WORK DOMAIN (the set of tasks they are trying to simplify or automate) INTO their world of SOFTWARE.

Psychology students and professors work precisely in the opposite direction. Their brains are immersed in the idea of understanding human behavior and thoughts. As such, they start off with a solid conceptual model of the WORK DOMAIN, and try to make their way into the world of SOFTWARE.

So, in brief:
Computer Science moves from Software --> Work Domain.
Psychology moves from Work Domain --> Software.

Clearly, the field of Psychology takes the correct and logical approach, while the field of Computer Science does not. The fact that poor requirements analysis is the primary reason why most software projects FAIL, serves to prove this point.

HCI is unfairly weighted into the realm of Computer Science.  Instead, it should be leaning more towards the world of Psychology.

Computer Science students do not know what HCI really means. Their curriculum and professors push them towards the process of "coding." The ongoing "crisis" of consistent failures in the software industry will continue until computer science professionals stop thinking, myopically, in terms of software all of the time.

What we need are Software Engineers, whose first and foremost goals and obligations are to understand the dynamics of the work domain.

Secondly (and less importantly) they must know enough about the different implementation strategies in this world in order to make good decisions.


Tuesday, February 5, 2002

Idea: Questionable Sales Tactic


Given a person's first, last, or first & last name as an input, spit out the "likelihood" of the origin of their name.

EXAMPLE:

INPUT:
Name: Ginter Trybus
OUTPUT:
German - 64%
Austrian - 28%
Russian - 5%
Swedish - 2%
Other - 1%

Could be very useful for salespeople, for which finding an intimate connection with a sales prospect could spark a meaningful conversation, which, in turn, could result in closing a sale.

It would be a good idea to research the most important or most useful "things" to know about a person (either explicit or general) in order to close a sale.

Possibly a way to learn more would be to sit and listen to a salesperson at work, and actively monitor his discussion with the prospects. What things does he say? How do the things he says affect the conversation?  Focus, specifically, on those conversations that lead to the closing of a sale.  What happened in these cases?

These other "things" could be implemented separately, so, what you would get, in the end, is a set of tools that would allow you to GUESS some DETAILED information about a person given some GENERAL information about them, such as name, age, sex, etc.

These tools could run in real time as the general information is inputted, and those results that are most relevant could be displayed, for example, as a sidebar on the screen.

SO, for example, a potential customer phones a company, say, ACME, Inc. for information about ACME's new product. The salesperson offers to send the customer marketing materials for the product. The customer accepts the offer, and the salesperson records the name and address of the customer, "Nima Bakhtiary", 1234 Anywhere St., etc.

CASUALLY, the salesperson says, "Ahh, that is an interesting name. Does it happen to be Iranian?"

Customer says, "well actually, it is."

Salesperson says "I thought so, [INSERT BULL%&*#, such as: 'a former colleague of mine was Iranian - a real great guy, he's one of the most brilliant people I worked with. .. .']

ETHICS: QUESTIONABLE
IF IT CLOSES MORE SALES: (most people would say:) WHO CARES.

ASSUMING that such a suggestion is not offensive (which may be, for example if you ask a Greek person if his name is Turkish, or, if you ask an Israeli if his name is Palestinian), then this could lead to a useful discussion (in terms of creating a relationship and closing a sale).