Reflections on Tech-Ed 2007 - Part 2

There was obviously more to Tech-Ed than the excellent keynote mentioned in the previous post. As I stated earlier, the sessions made up bulk of the conference, and there were some definite highlights among the sessions I attended.

Here are the highlights, ordered from the high-level to the technical:

These sessions will be discussed in the remaining posts within this series, starting with ARC306 below. The presentation slides can be downloaded from the Tech-Ed website, with the exception of DEV309 – which can be downloaded from Lukas Svoboda’s blog.

ARC306 – Interface Design Patterns

Following on from the theme of the keynote, this session provided numerous points to consider when designing and building applications. The central focus covered the cloud of related concepts such as interaction design, usability, human factors, HCI and UI engineering. The presenter, Darryl Chantry, delivered an engaging and entertaining presentation on these topics, punctuated with interesting videos of these concepts in action.

Here are some key points:

Just as interfaces in C# or Java provide a contract between a caller and a class that implements the interface, the user interface provides a contract between the software and the user. When using the software, the UI declares, “Under these circumstances, this is what I’ll do,” to the user, who interacts based on the contract. If clicking a certain button causes some extra things to happen that are behind the user’s back (let alone unexpected), or leaves out another action, then that contract is broken and so is the user’s trust.