First lesson of human-computer interaction, what do we learn? The things we should definitely not be doing.
The subject’s going to be all about how humans interact with computers (obviously), and how to make that interaction as smooth and painless as possible. Sounds simple, but it’s actually quite the challenge! You have to consider the broad scale of users that’ll be dealing with your software, and how they all differ in their viewpoint on it. Those differences can stem from experience, culture, age. And it’s important you get things “right enough” the first time, because your users won’t like change!
An important part of good design is not turning it into bad design. You’ll have to avoid “anti-patterns”, design staples that, unlike their plain ol’ “patterns” counterparts, worsen the user’s experience. These can be things like spontaneously breaking up the user’s flow (“hey, rate my app!”), presenting them with too many choices, or just poorly displaying too large a load of information.
One of the in-class exercises was to take an app and make it worse by applying some of the discusses anti-patterns to it. We had a lot of fun parodying the shit users sometimes have to put up with. “On a scale of 3 to 8 stars, how sure are you that you want to quit this application?”
The reading material we were given is pretty interesting too, more in the games area than just generic software.