« September 2007 | Main | November 2007 »

October 30, 2007

Know Your Users

A few days ago, I took my wife to a store which she has grown very fond of called Archiver's. The store sells scrapbooking materials, which I am not really too interested in. At one point, I had to go make a quick stop at the store restrooms. I went to look for the men's restroom, but to my surprise, there wasn't any! There was a women's bathroom and a unisex bathroom. This definitely isn't the standard. Stores usually have men's and women's restrooms or just one unisex bathroom. So why this combination? Because Archiver's knows who they are selling to. They know that the majority (and by a big margin) of their customers are women. This way they can better meet the needs of their real customers.

The same concept applies to user interface design. One major focus in the User Interface Design class I'm taking this semester is users. You do not build an application just to show off all the features that you think are cool. When you build an application, you do it with your users in mind. You may need to scrape off some features that you think should be there, but which are not what your users really need, just like the men's bathroom at Archiver's. Know your users and make sure you build your applications with them in mind. No matter how cool your application is, if nobody wants it, nobody will use it.

October 27, 2007

Ethics in Online Research

Today I went to a very interesting seminar about ethics of research in online communities. I have heard about ethics often before, but never in this context. And it really brings up a lot of very interesting questions. Due to the nature of the internet, it is very hard to get written consent from everyone whose information or conversations you use for research. So, when is it right to use this data? Which data can be considered as public and which as private? For example, is it ethical to join an internet community using a fake profile, interacting with that community, and even recording conversations with members of that community?

I can remember at least three of the guidelines they talked about which I found interesting. One of them was that if you are not interacting with the human subject and only using information that is already publicly available, you shouldn't need their consent to use it. If you can find it using a search engine like Google, chances are it's safe to use. Another thing you have to consider is if there is a chance of harming the other person, either physically or psychologically, by using their data. Finally, one interesting topic they talked about was the reasonable expectations of privacy that a user has when using a site. When users post information to the web, they have an expectation of how private their information will remain. Usually, you expect information posted on sites that require logins and passwords to be less public. But if you leave a comment in a blog, you will expect that information to be more public.

There are many more questions that can be asked about ethics in online research. As in every other subject where ethics are involved, there is always a gray area between what is right and what is wrong. There is a lot of information on this topic on the internet that can help, but in the end it is each of us that must evaluate his or her work and decide whether it is ethical or not. Remember that research is simply about finding ways to help humanity and ethics is about not destroying it in the process.

October 23, 2007

Vending Machines and User Interfaces

For my User Interface Design class we had to get together in groups of two and prepare a presentation where we compared different interfaces that solved the same problem. The presentations were called Hall of Fame/Shame due to the fact that we were supposed to find both examples of bad and good interfaces. My partner and I decided to do ours on vending machines. Very simple machines with a very simple model, but given a bad interface, it is still possible to make mistakes while using them. One thing that I have learned in this class is that often we blame ourselves for making mistakes when using everyday objects, when in fact it is the interface's fault.

The idea for talking about vending machines arose from one such mistake that my wife made. She went to a vending machine and looked up the code for the candy she wanted. It was D10. She then started to press the buttons. She pressed "D". Then "1". Before she could look for "0", another item started dropping. This item was D1. The vending machine actually had a button for "10". This unusual button was the source of my wife's confusion. Needless to say, this machine was our Hall of Shame example.

IMG_5104.JPG IMG_5106.JPG

We then presented a vending machine that fixed the last one's problem. This one has a much more familiar interface for entering numbers. It is very similar to phones and ATMs and there is no button for "10". We classified this machine as Hall of Less Shame:

IMG_5108.JPG IMG_5114.JPG

We then presented our third and final vending machine. This one eliminates basically all possibilities of making mistakes. It is not required to enter any code at all. It is extremely easy to use. This was our Hall of Fame vending machine:

IMG_5117.JPG

It is amazing how user interfaces for even the simplest of machines can impact user experience so much. Just think of how many times you have tried to push a door which you were supposed to pull. As a programmer, I hope I am able to make things as simple and easy to use as possible. Let's see how that is reflected in the class project!

October 21, 2007

A.I. Comic Strip - Poker

Here it is. Finally! A fourth comic strip! Once again I end up drawing three characters per panel, which is really time-consuming. I have also been experimenting a little with the proportions. It's kind of hard to get them right. This time, my inspiration came from all the attempts to use computers to beat humans at games such as poker. So far, even with their perfect poker faces, computers still find it hard to beat the top human players. Maybe the taunting could actually help...

superficialintelligence4.jpg

October 17, 2007

Google Optimized for Search

I found this very funny "interactive tour" while reading Google Blogoscoped. It takes you through the imaginary process of how Google would optimize its home page for search. It's sad to know that many websites actually do this to their home pages.

October 15, 2007

Game AI Development

Recently, I have been reading this excellent blog at aigamedev.com. I have always been interested in Artificial Intelligence and Game Development. How enjoyable it is for me to find a site that focuses on both! The site is very well organized and has many great articles on different AI topics and how they apply to games. I recommend it to anyone interested in game development. Go ahead and take a look, even if you're not a programmer!

October 12, 2007

Quiz Kong Paper Prototype

Last week, my User Interface Design class team was temporarily split into two subgroups. Each subgroup had to create a paper prototype for the image quiz maker we intend to create. Then on Monday we would present our two prototypes in class. These paper prototypes are supposed to let us represent the interaction of our program without getting too distracted by superficial design issues. It was a really fun experience. Making an interactive web site on paper requires a lot of creativity. I felt like I was doing interface scrapbooking, cutting all the pieces of paper and putting them together to form the page. In the end, both our groups came up with different ways to solve the problem. Now the challenge is to somehow merge our two prototypes. Here is what our original homepage looked like:

IMG_5278.JPG

I especially liked the monkey drawing at the top and the buttons on the right. I wonder how it will look after the merger.

October 09, 2007

Never Eat More Than One Fortune Cookie

Maybe fortune cookies just don't work for the greedy. My wife and I went to a Chinese restaurant and, as is common in this type of restaurant, received fortune cookies. Probably by mistake, we were given three cookies instead of two. My wife, who likes to eat them more than I do, grabbed two of them. She opened the first one and read her fortune:

"Develop some flexibility in your point of view."

Ok, simple enough. Then, she read her second fortune:

"You know your own mind, and you look at life from a broad standpoint."

Now wait a minute, first you tell her that her point of view is not flexible enough and then you tell her that she looks at life from a broad standpoint? I think I have lost my faith in fortune cookies. I will never eat them the same way again.

October 07, 2007

Real Life X-Wing

It is part of every geek's dream, myself included, to see an X-Wing Fighter from Star Wars fly in real life. And just this weekend, it may have happened. A team of rocketeers in California was supposed to have launched into flight the first X-Wing yesterday. I still don't know whether the launch was a success or not, but I am almost desperate to know. I am sure a video of the launch will show up in Youtube soon after the news get out. Meanwhile, you can read this article from Gizmodo talking about the project.

October 05, 2007

A.I. Comic Strip - Memory

Here is my third attempt at a comic strip. I found out by drawing this one that it can be very tiresome to draw three characters per panel. I am still trying to narrow down a theme or focus for the comic strip. I am starting out with only A.I. and computer themes for now. I have enough ideas for a while right now. I just wonder how long that will last. Anyway, here is the comic strip (click to enlarge):

superficialintelligence3.jpg

October 02, 2007

My Experience as an Intern at IBM

Before starting graduate school, I had the chance to work for IBM as an intern a total of four times. That would give me practically one whole year of IBM intern experience. I know being an intern is not the most glorified position and can never truly show 100% what the company is like, but you do get a feeling for what it is like to work in a “real world� setting.

Big Blue had its ups and downs for me. These are some of the impressions I got from working at IBM in three different locations. They may be limited to the knowledge of a short-term intern, but it is probably the impression many others get too (especially other interns). First, the not-so-good things:

Too big – Being such a big company, it is easy to go about your work never knowing what it is for and who it affects. The company tries to encourage networking and to get people to understand what the rest are doing, but with such a big company, it becomes almost impossible.

Too little application programming – OK, this is more of a personal thing. I am more of a software guy (that explains why I am aiming for a PhD in Computer Science and not Engineering) and IBM is focused more on hardware and middleware. There is software development going on in IBM, but it is not everywhere. And it is especially hard for an intern to get on it. Many of the software development that does go on involves many of IBM’s own operating systems and so requires you to learn a new set of skills just to be able to program. Of course, some interns (like my sister) get lucky and find an internship that consists of building GUIs.

Being bored – This happens mostly to interns. You sometimes have nothing to do. Not just because of not having enough work, as is the case with some internships, but because getting all the required permissions to work on your tasks can take so much time. During my last internship, I had very interesting tasks, but was sometimes stuck for days waiting for permissions to be set and tools to be installed so I could work on a Linux machine.

I think that is all for the not-so-good parts. Now for the things I enjoyed at IBM:

The culture – IBM is a place where you can feel comfortable working. When I was there, I felt like I was working for the good guys. IBM seemed to me like a company that really pursues values and integrity. They promote diversity and do their best to let you know it. I actually got to IBM through a hiring event aimed at minorities. Also, I may just be very lucky, but all four bosses I had seemed like the nicest bosses on Earth. They were excellent at managing and making sure I felt welcome. I never had any problem at all with any of them.

Too big – I mentioned this as one of the not-so-good aspects of IBM, but it is also one of its virtues. Being such a well-established and varied company, there is plenty of opportunity for growth within the company and to work in a variety of projects and locations.

Speed Teams – One of my favorite internship experiences was being part of a Speed Team. This consisted of working on a project with a team of only interns. You get to work on a fun project and actually tackle it with people of similar skill levels. The networking I got from that experience was invaluable.

Foosball – During my third internship, when I was part of the Speed Team, I learned one of the best team-building exercises ever. It comes in the form of a game called foosball. It was my first time playing, but by the end of the summer I felt like a pro (only a feeling of course, I could still get beaten by a 10-year old). My team took a break every day during the afternoon to play foosball for a little while. I sure missed it during my last internship.

I really enjoyed all four of my internships at IBM. I felt comfortable and proud to be a part of the company. I also feel like I grew up a little in every internship. Still, I don’t see myself in the future doing what I was doing or what my teammates were doing for a living. I need something more exciting and that can maybe impact the rest of the world a little more directly, not through a piece of code that goes in a program that is part of an operating system that is used by a company that develops tools that finally impact the world. I guess that is why I decided to go to graduate school. I want to build a better set of skills so I can decide what I want to do for the world. IBM was part of my training grounds for whatever I will be able to accomplish in the future. So, if you are considering a job at IBM, give it a shot. You may not decide to stay there forever, but you will surely gain something valuable from the experience.

The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by the University of Minnesota.