Tuesday, January 23, 2007

UIE Web App Summit

I'm getting some notes together from the UIE web app summit in Monterey. Overall, I was struck again by how expensive and difficult conferences are compared to learning online (or on your own from other resources). I learned lots of interesting things, but I didn't learn them any better than if I had come across the same presentations online. I'm not a real networking type, and I was there with co-workers, so there wasn't that big social incentive to attend. But if nothing else, going in person ensures that you're not doing anything else, so you pay attention and learn a fair bit by default. I would much prefer the Downes vision of a learning bazaar or fair. Some of the sessions I attended that made some impact:

Product Strategy and Planning Tools by Peter Merholz and Brandon Schauer
We split up the all-day sessions and this is the one I ended up picking. The focus was more on process and methodology, specifically in developing commercial products. The business focus was mostly new to me; I haven't had to think much about what business goals a product might be addressing. The assumption has generally been that if you're addressing user needs and your business model works, the business will be sustainable, but this forced me to look a bit deeper.

One of the thorny issues in working for a company selling educational software is that the products are usually purchased by people other than the ones who will actually be using it. We might build a site for a state-level department of education that gets paid for by a state lending agency, managed by district administrators, facilitated by school-based counsellors and educators, and used by students in high schools and middle schools. Although everyone in the chain would report that the needs of the students are the purpose of the whole thing, people at each level are motivated by different values and goals. These goals are often in conflict.

The presenters pushed a model of integrating well with the web -- open APIs, building only what you can't borrow elsewhere, mashups, sharing content, user-generated content. Obviously that's a successful model, right? Judging by the questions from the participants, who were mostly from commercial software/web companies, it wasn't ringing true. Many of those companies are sustainable because they offer security, proprietary content/services, and business models that depend on closed systems, not open ones. It was fascinating to recognize that dichotomy.

I took piles of notes in this session, mostly related to project management and the process of defining not only what is being built, but why things are being built. When done right, that process can tease out needs and goals you wouldn't have otherwise come across. Sadly, the contrived "group activities" they had us doing were pretty much useless -- I would have much rather heard from participants about their experiences in initiating and managing their own large web-app projects.

Design Patterns and Principles by Bill Scott, Yahoo
I wish I had attended the full-day version of this seminar, digging into some of the most interesting design patterns (widgets, controls, interaction flows) from the Yahoo Design Pattern Library. It's an incredible toolkit of about 100 design patterns that can be combined in different ways to achieve different goals. He also went through examples from other sites doing fancier AJAX interactions, showing the tradeoffs and benefits of different approaches. Several examples illustrated how designers are overusing AJAX methods like drag 'n drop selection screens just because they can, when it is often better to use basic interactions. Excellent presentation -- very practical and geeky fun -- and his presentation notes/slides are loaded with goodness.

Web Application Structure by Hagan Rivers
The format of this short seminar seemed to provide just enough time to identify the main challenges in creating navigation and structure for web apps. I was pretty into it, because in her examples, she was running into many of the same problems I've been seeing in my recent designs. It's difficult to combine several web-app components (usually one place to do a number of data-heavy tasks) with traditional page-based navigation structures. Unfortunately we didn't really get to solve the problems in the seminar -- I wasn't happy with many of the choices she made in the example, which made it feel more like commiserating than learning.

The one thing I did find valuable was the method she uses to map out the different components in a site -- like a site map, but early in the process, the structure is more like little disconnected islands of tasks that you have to connect in a meaningful way.

Page Hierarchy by Luke Wroblewski, Yahoo!
Another fantastic presenter from Yahoo -- well-prepared, well-spoken, and cramming an incredible amount of practical, useful information into an hour. I wish I had also attended his seminar on form design, but the presentation notes (no link yet) stand fairly well on their own. On one hand, this talk on the hierarchy of information on a screen or page was a basic review of good design principles, but the examples were so sharp that they stuck with me -- lots of before-and-after redesigned screenshots that illustrated how big a difference great design can make.

Flickr: How a Bright Star Changed the World of Web Apps by Stewart Butterfield, Flickr/Yahoo!
I was probably most looking forward to hearing Stewart Butterfield talk about how he developed Flickr, but he didn't show up. Jared Spool and Peter Merholz filled in. After having used the site for a couple of years, hearing it described isn't particularly valuable, so this was a waste of time. One funny moment: Spool opened with an intro on Web 2.0 and left out any reference to user-generated content. When Merholz called him on it, he claimed that the important thing about Web 2.0 was the technology: feeds, dynamic interfaces, etc. Granted, defining these things is probably a dumb idea in the first place, but he blew that one.

Building Great UI, The Netflix Way by Sean Kane, Netflix
I've never used Netflix, so this was all new to me. The user experience looked fantastic, especially around recommendations (which I've often thought Amazon did very poorly, despite always being used as an example) and the smart use of rich interaction where it made sense to do so. Most fascinating was the presenter's description of their development process, launching something new every two weeks, and how they test new features on the site. Their user base is so huge and so active, that they can test a new feature on a 100,000 people over a day or two, then compare the results to a similar-sized control group to see the effect of the change, then decide whether to keep, revise, or trash it. I liked seeing some of he failed experiments -- usually you only get to see successful ones.

Design Strategies for Web-based Recommender Systems by Rashmi Sinha, Uzanto
This wasn't a bad presentation, but I was disappointed because this is a real area of interest of mine and my expectations were too high. It started out strong with a review of the earlier recommender systems (circa 2001) and their weaknesses. One good point was that people love to hate these systems -- if the first couple of recommendations are way off, you just mock them and stop paying attention. Then the presenter went into an analysis what she called social recommenders like Last.fm and del.ici.ous that make connections between people in the system and often use tags to connect content. She seemed pretty sold on this approach, but I couldn't help thinking about how much I dislike many of these systems for one reason alone -- they seem to recommend what's most popular with the majority of users on the site, rather than what really matches my needs. Need to ponder this some more -- are social networks yielding better recommendations?