Wednesday, March 11, 2009

Internship secured!

Since January, I'd been actively applying and interviewing for internships for the academic year of 2009-2010. Luckily, in the first week of February, I was extended an offer from IBM for a 16-month internship. At the time, I was already leaning towards accepting the offer, but I also had other interviews scheduled, to be able to confirm to myself that this really was the position I wanted, and also to leave my options open, should another more attractive offer pop up. After a series of interviews and a few offers, I was ready to accept my first offer. This job entails building live production demonstrations and user interfaces for DB2. The goal is to build a real time simulator to help people learn how to use DB2 (including SQL and XML) through an application that can monitor and manage DB2 and its usage. It will train me in web applications developing, user interface design and presentation, as well as teaching skills.

At the time, the position sounded interesting as well as fun, because this job was not only about coding, but also about user interfaces as well as interaction with people. I've had teaching jobs in the past, where I taught mostly elementary school students English, Japanese, Math, and French. I love the moment when a student just suddenly "gets" the concept; their face lightens up, as all the puzzle pieces fall into place. It makes me feel that I have done something useful, and always makes me smile.

As for user interfaces, I'm sure everybody has faced some application where they thought, why is this button here, and not there? Or why is this option so hard to get to? Or why is this application so hard to use? I was faced with my own decisions when working on a GUI based Othello game in Python last year. How do we lay things out so that it doesn't look cluttered, yet everything that is available to the user is easy to find and understand? How do we show the scoreboard? Do we want users to be able to delete scores, and how easy should it be to delete scores? We also implemented an extra feature, where at the end of the game, the loser's pieces shake and fall off the board, leaving only the winner's pieces. Our team loved it, but we also realized that some users may find this an annoying feature, and decided to leave that as a toggle-able option. The user interface decisions for an Othello game though, are quite simple. I would love to know more about what professionals consider when deciding on more complicated user interface designs.

0 comments:

Post a Comment