Main

user experience Archives

July 15, 2008

Apps I've downloaded onto my iPhone so far

twitterific.pngTwitterific would like to use your current location!

Shazam didn’t recognize John Cage last night.

Facebook is slick.

OmniFocus is my new Obama.

Google app is weak (brings up a tiny serp?) but at least it exists.

Pandora would be perfect if faster and also not crashy.

You had me at NYTimes.

Loopt does what now?

April 23, 2008

Ignite was fun


My Ignite talk, Grasping Social Patterns
Originally uploaded by duncandavidson.
Here are my slides.



Audio when it’s available (video too).

UPDATE: and here’s some YouTube video shot from the audience (the very beginning of my talk is cut off):


April 22, 2008

Three talks for the price of, well, none

At the IA Summit a week ago in Miami, I co-taught two full-day workshops (on patterns with Erin Malone and Lucas Pettinati, and social design with Christina Wodtke and Joshua Porter), moderated a panel (on presence and other aspects of social web architecture with Gene Smith, Wodtke, Andrew Hinton, and Andrew Crow), and gave a presentation with Austin Govella from Comcast on designing with patterns. (Phew.)

I finally got my slides posted to slideshare today from the panel and the presentation. (Eventually, if and when audio becomes available, I’ll sync them up.) You’ll notice if you look at my recent talks that I am remixing a lot of the same points. I am trying to learn to be more shameless about this, since the material is usually fresh for each new audience until it’s fully distributed.

In that same vein, if you’re in SF you can find me at Ignite SF tonight doing a five minute talk (yes, covering some of the same ground as my BayCHI talk in this case) on the topic “Grasping Social Patterns.” I’m nervous as hell, not least because the lineup of other speakers is so incredible. So even if I bomb, you’ll get some pretty inspiration stuff from the likes of Kathy Sierra, Annalee Newitz, Lane Becker, and others.

For now, here are my summit talks:

and

April 17, 2008

Social design patterns slides from BayCHI last week

Here are my slides from my talk at Xerox Parc (the BayCHI monthly program meeting) on April 8th:

When I get the audio, I plan to put together a slidecast to synch the slides to the talk, which should be more valuable.

Oh, and consider viewing the slides in full-screen mode. They should be a lot more legible that way. I did my best to optimize the source files.

April 7, 2008

Talk back to presenters with Ted Nadeau's patented* Reaction Deck 1.0

At South by Southwest, Ted Nadeau and I led a “core conversation” on the topic of reputation, identity, and presence. Ted is great at questioning basic assumptions and had this idea of handing out placards an audience of participants could use to signal their reactions to what was being said to them.

We imagine double-sided signs on sticks to hold up, sort of like the Roadrunner does, but we settled for handing out cut paper. We’re still working on the mechanics of this, *and the whole thing is Creative Commons licensed, derivs-allowed, attrib-required, I think (it’s in the fine print), but even now at version 1.0 of this Reaction Deck, I think Ted’s really onto something:

April 5, 2008

These are your most powerful and trusted friends

A leaderboard, viral, breaks email (one-way only), reputation game pattern from the Circle of Trust app on Facebook.

April 4, 2008

Great, now I have to keep up with Bucky


This made my day
Originally uploaded by xian.

When I saw someone was using twitter to send out quotations from Buckminister Fuller I was all over that. Getting this email message was just kind of an unexpected side treat.

Now, if Bucky Fuller really was following me on twitter I might feel a little more pressure to be brilliant and cosmic. Like a dweeby Merlin Mann.

April 3, 2008

Social design patterns talk at BayCHI next week

Next Tuesday (April 8, 2008) I’ll be speaking at BayCHI on the topic of social patterns in a talk called Social Design and the Yahoo! Pattern Library:

Social networking sites are proliferating. New social media aggregrators appear every day. Venerable old sites are adding social features or trying to activate the social profiles of their users and members. A number of the interaction patterns that drive social relationships online are becoming clear (as well as a number of nasty “antipatterns”). Christian will talk about social patterns, previewing some that are in the works for the Yahoo! Design Pattern Library as well as others that he has noted “in the wild.” The newly redesigned Yahoo! Developer Network site is the host of Yahoo’s open design pattern library. Over the next few months, Yahoo! will be rolling out a series of open and social APIs and the pattern library will be gathering and sharing best practices for social web design.

I’m still trying to figure out what I can share and what I can’t, so I may focus on social design patterns observed “in the wild,” as well as my current favorite topics of presence, identity, and attention.

BayCHI talks typically have two speakers back to back, and I’m really looking forward to hearing Amy Jo Kim from Shufflebrain, who is speaking before me on the topic “Putting the Fun in Functional: Applying Game Mechanics to Social Software”:

Over the past few years, we’ve seen an explosion of interactive services that harness the collective efforts of users. On the web, services like MySpace, YouTube, FaceBook, Flickr, and Digg are providing hours of entertainment to millions of people. These game-like services are changing the face of networked entertainment, and rapidly displacing television as a leisure-time activity. They share three key elements: user-generated content, community infrastructure, and game mechanics. In this talk, I’ll review the psychology and system thinking behind game design, and explore how to use game mechanics to create interactive experiences that are fun, compelling and addictive.

I don’t want this blog to turn into just a litany of upcoming speaking appearances, but then again it would be foolish not to post these announcements, right?

March 8, 2008

If I have to appear in Valleywag this is the way to go

team' return of the cobra kai' poses for its photo opp at Kick '08 at SxSW

Started off Saturday morning with Kick ‘08.

Namedropping: Talked to George Kelly, Erin Malone, Anil Dash, Jessamyn West (yay!), Simon Willison, Owen Thomas, Hugh Forrest, Micah Alpern (briefly, passing on the escalator), Janna Hicks DeVylder so far….

February 21, 2008

Talking patterns and social design at the IA Summit

If you’re interested in interaction design patterns or in the elements of social web design, then come on down to Miami in April for the IA Summit and either sign up for one of the two pre-conference workshops I’m helping teach or see my presentation or panel in the main program.

Here are the basic facts about the two workshops (more details in the title links):

  • Design patterns: from interaction to design to build is a full-day workshop I’m teaching with Erin Malone and Lucas Pettinati, colleagues of mine from the user experience design team of the Yahoo! Developer Network. Erin founded the pattern library and has captained it throughout its entire existence (going on four years) with the help of three curators, me being the third. Lucas is the lead designer on the YDN redesign project and works directly with the Yahoo! User Interface library team, so he’s intimately familiar with the development challenges and issues involved with implementing design patterns in the real world.

  • Design and architecture of social web experiences is a full-day workshop I’m teaching with Christina Wodtke and Joshua Porter. Christina is a director of product management at LinkedIn, a co-founder of the IA Institute, founder of Boxes and Arrows (the leading online user experience design magazine), and founder of Cucina Media, the makers of PublicSquare, the publishing/community software B+A now runs on. Joshua Porter is a former associate of Jared Spool’s UIE and writes the popular Bokardo blog on social web design.

And here are the basic details about the presentation and the panel:

  • Designing with Patterns in the Real World is a presentation I am giving with Austin Govella, a senior information architect at Comcast Media. We both have plenty of hands-on experience with the trials, tribulations, and occasional triumphs that stem from applying design patterns to real world interaction, information, and interface design problems and we plan to let it all hang out.

  • Presence, Identity, and Attention in Social Web Architecture is a panel I’m moderating featuring a “murderer’s row” of some of the leading thinkers in user experience and social web design: Christina Wodtke of LinkedIn, Andrew Hinton of Vanguard, Gene Smith of nForm, and Brian Oberkirch of Small Good Thing. I’ve been talking to all of these folks for some time about my latest hobbyhorse (presence) and the rest of the “human OS” stack that social web applications are built on. I plan to run a tight ship and am expecting a great multi-perspective dialogue to ensue.

I’ll devote a whole blog post to each of these items as the Summit gets closer, but wanted to mention it now while there’s still time to sign up for the conference at early-bird prices.

See you in Miami?

February 14, 2008

I'm speaking on presence and reputation with Ted Nadeau at SxSW

meet_me_at_125x125.gifIf you’re interested in social web design, how to model identity, presence, and reputation, and how to create and align incentives with the behaviors you wish to encourage in your online community, then join Ted Nadeau and me for a Core Conversation on the topic of “Online Identity: And I do give a damn about my bad reputation” at South by Southwest interactive this March, in Austin, Texas (of course).

UPDATE: Alex Lee in the comments asked me when my talk is scheduled for. It’s on Tuesday, and I think it’s in the morning but not sure about. Will update with exact info when I have it.

UPDATE II: It seems that we will be doing our core conversation in a late slot (5pm) on the last day (Tuesday, March 11) of the interactive portion of the conference. I say if the conversation is good, let’s continue it into the evening over food and libations. Maybe we’ll even launch a startup over beer and barbecue.

January 29, 2008

Notchup invites a cock-up?

I’m having second thoughts about Notchup. The other day I checked my mail in the morning, as is my wont, and found an invitation to Notchup from a friend who left Yahoo a while back to work with venture capitalists. I wondered if this was something he had had a hand in, but I didn’t ask. I went and signed up because it sounded interesting.

A few years ago I had some interviews at LinkedIn for a position that didn’t work out (didn’t work out for me, at least) and they asked me at the time for suggestions and ideas about additional businesses or products they could build on top of their existing platform. I was gung ho at the time about the idea of a reverse-auction style site for hiring. Just as Priceline reversed the polarity on hotel and plane bookings by having customers bid what they are willing to pay and having vendors match that, I figured that job searches could also work in reverse.

Instead of applying for a job, you could advertise the sort of work you are willing and qualified to take on and prospective employers could apply to you and try to make the case that you should “hire” them to be your new boss. The LinkedIn guys suggested that that’s what they were already doing but I thought there was still something missing from that model.

So Notchup seems to be somewhat in that same ballpark, which was why I thought I’d check it out.

Next, I saw that they had a way to import your personal info (effectively, your resume) from your LinkedIn account, if you have one. That sounded a lot better than entering all the data myself, again, so even though I had qualms about this violating LinkedIn’s terms of service, and even though it’s generally not a good idea to give your login credentials for one site to another site (even if “all it’s going to do” is scrape some data from the screeen), I went ahead and did that.

So then Notchup offered to enable me to invite my LinkedIn connections into their beta, saving those people the trouble of applying. I started that sequence and went through my list of contacts, which is long so this was tedious, unchecking the folks I figured are either definitely not looking for a job, or whom I don’t actually know that well, or whom I believed would have no interest in the latest social network thingamabob.

I assumed I would have the chance to write a personal note, something along the lines of

Hi! I’m checking out this new site called Notchup. I don’t know much about it and I don’t necessarily endorse it, but I thought you might be interest in checking it out too.

Unfortunately, before I was given an opportunity to write a note or even review the boilerplate they were going to sign my name to, I was notified that the invitations had been sent. This is not as bad as what Tagged.com and some other sites have done, tricking people into virally inviting their entire address books, but it still rubbed me the wrong way.

All that morning and the next day I got email notifications of friends joining Notchup, and a few personal notes from people asking me if this was for real - because we’ve all gotten spammy invitations in the past. When people asked I told them the gist of what I would have written in the invitation, but many people just joined, apparently trusting me. By now I wasn’t sure what the person who had invited me was thinking.

Then, the other day I saw a message from Russell Unger on the IA Institute members mailing list establishing that he had done more (that is, some) due diligence and actually read Notchup’s terms of service, and that he had uncovered some troubling clauses in the user agreement:

9. NotchUp reserves the right to offer third party services and products to You based on the preferences that You identify in your registration and at any time thereafter; such offers may be made by NotchUp or by third parties.

10. Without limiting any of the other disclaimers of warranty set forth in these Terms, NotchUp does not provide or make any representation as to the quality or nature of any of the third party products or services purchased through NotchUp.com or any other NotchUp Site, or any other representation, warranty or guaranty. Any such undertaking, representation, warranty or guaranty would be furnished solely by the provider of such third party products or services, under the terms agreed to by the provider.

As Russell pointed out, this sounds a lot like signing up for Notchup means agreeing to receive spam.

He also pointed out another pair of clauses:

18. You understand and acknowledge that you have no ownership rights in your NotchUp account (“NotchUp Account”), and that if you cancel your NotchUp Account, all your account information from NotchUp, including resumes, profiles, cover letters, network contacts, saved jobs, questionnaires and email mailing lists, will be marked as deleted in NotchUp’s databases and will be removed from any public area of the NotchUp Sites. Information may continue to be available for some period of time because of delays in propagating such deletion through NotchUp’s web servers. In addition, third parties may retain cached copies of your Information.

19. Your email and other data that you submit as part of the resume will be made available to our recruiters and employers. NotchUp.com doesn’t have any control over how that data would be used. If you don’t want any such data to be displayed your only remedy is not to post any resume.

So now I’m really concerned, particularly about seeming to vouch for a site and luring a bunch of best contacts into it. I’ll keep an eye on Notchup but so far I don’t like what I’m seeing, and to those I invited in before researching the subject further, I apologize.

January 9, 2008

Help me write my book about presence

most recent tweet

I’m going to write my book, Presence of Mind (working title), on a wiki with as much input from others as possible. I’m also starting a mailing list to discuss online presence and related topics (extending from closely related matters such as identity, reputation, attention, privacy and so on, out to the full array of social web design patterns).

If you’re interested in joining this conversation, let me know and I’ll invite you when the list is set up.

December 7, 2007

As promised, my pattern library talk

As the third curator of Yahoo!’s Design Pattern Library I often receive a lot of thanks and praise from website designers and developers for the way we at Yahoo! have offered this resource to the world. I usually try to explain that much of the goodness happened before I came on board and that I can’t really take credit for it, but when my ego needs a boost I just smile and nod.

When Erin Malone and Matt Leacock and others first launched the internal pattern library, they presented a talk at the IA Summit, called Implementing a Pattern Library in the Real World: A Case Study (and subsequently the linked article on the same topic at Boxes and Arrows). Then Erin and Bill Scott took the library to the public on the Yahoo! Developer Network website and Bill enriched the library with tons of Ajax-y goodness, closely tied to the YUI Library.

Since that time, I came on board and I’ve worked on reorganizing the library, updating the patterns, and shepherding a new generation of patterns through our internal refinement and review process, with an eye toward identifying useful social and openness patterns that we can share with the whole Web. So when people come up to me at conferences or find me on mailing lists for information architects and interaction designers frequently the are curious about how the library has evolved in the years since it was founded, what our internal process looks like these days for writing, reviewing, approving, and rating patterns, and how we decide which ones to publish in the open library.

Recently, I gave a talk at Yahoo! as part of our UED Brown bag series, called The Pattern Library Wants YOU!, intended to update oldtimers on changes and improvements to our process and infrastructure and to orient new designers about the library, and of course to encourage people to get involved. Ricky Montalvo, our ace videographer for YUI Theater and YDN Theater, recorded my talk and edited it together with my slides, and we just spent a week or so removing any too-sensitive information and getting our friendly legal folks to sign off on releasing the talk to the public.

So, without further ado, here is the public version of my talk, which should answer a lot of those questions I’m hearing these days.

(This post was adapted from the YUI blog by sticking it on a block of wood and banging a nail into it.)

November 14, 2007

For public consumption

patternlibrary-brownbag.jpgA few people have asked me about when they might be able to see the recording of my brown bag on the Yahoo Pattern Library and so I wanted to post a little update.

This got delayed because of a cold that laid me up for all of last week, but I’ve just completed a thorough review of the footage to identify anything I may have discussed that wouldn’t be appropriate for public consumption. (It was an internal brown bag, so the primary audience was other designers at Yahoo.)

That’s now done. I need a sign off from legal (they’ve been very helpful), and then I need to sit down with the videographer to get a couple of snippets removed and to take out a few slides, and then we should be good to go. It will run as part of YUI Theater (on the YUI blog), and I’ll post a reminder and a link to it here as soon as it goes live.

November 6, 2007

Some possible best practices for social design

bokardo.jpgJoshua Porter, who specializes in Social Web Design and with whom I’ve debated in the past around the perennially boring topic of “Information Architecture vs. Interaction Design, Which is the Best Discipline EVAR!?!?,” has culled an interesting list of social design best practices from Google’s documentation of its new “OpenSocial” API collection.

The interesting (to me) recommended practices are the following (re-paraphrased, somewhat, from how the practices are labeled in Google’s document, using some of Joshua’s verbiage where I found it clearer):

  • Enable self expression via personalization
  • Show what friends are doing
  • Let people explore friends and friends of friends
  • Provide commenting features
  • Expose multiple areas of similarity
  • Solve real world problems through social connections

(The other recommendations were interesting too but they seemed to be more about good widget design and good web experience design in general and not particularly about social, let alone open and social.)

The last item, of course, was the theme of The Power of Many.

The browsing-friends-of-friends one is questionable, too. At LinkedIn, that’s an option. I guess it goes to openness, but it also cuts against privacy. I don’t necessarily want everyone viewing my address book or using me as a step-ladder to meet someone else. To me that’s not social - it’s antisocial. More importantly, I believe in leaving those decisions in the hands of the user as much as possible.

Porter sees some other important issues here:

[W]e’re clearly seeing a set of practices emerge across all social software that centers around getting people started quickly, allowing for self-expression, engaged in real-life tasks, yet also allowing for flexible discovery and play…. [S]ocial networks have changed the way we look at software in just a couple years.

[O]nly two or three of the best practices are necessarily part of “social networking” software. They could be used in any kind of social software, be it productivity software for groups or even e-commerce sites that help people find the right product.

That, to me, is the essence of social design. It isn’t relegated to social networking, even though the rise of social networking is what helped to clarify and refine the ideas. It’s about building software that takes advantage of social connections to provide enhanced value.

Good food for thought.

November 2, 2007

What can I say about OpenSocial?

opensocial.jpgThe blog world, along with my slice of the twitter world, is abuzz with attempts to understand, analyze, deconstruct, laud, and excoriate Google’s new OpenSocial initiative.

One key question seems to be: is this true openness or simply using the (increasingly at risk of dilution) “open” mean as a handy cudgel to ward off Google’s current nemesis, Facebook, with it’s extremely popular but closed application development platform, active and growing userbase, and impending social ad network play?

Another key question I’m hearing people ask is whether this is a hand-off attempt by Google to hew to its roots of faciliating access to information and monetizing the traffic and data that passes through its metaphorical ands or is it an attempt to do judo and place itself at the hub of the social web as it matures?

My meta question might be to ask whether each pair of possibilities is truly mutually exclusive.

But I don’t feel like I really can comment on this right now.

If I were still an independent writer or even just a user experience consultant at an agency with a blog, I’d be much more comfortable jumping into the geek-punditry fray, but I’m not.

I work for a company that view Google and Facebook as competition, a company full of people who use both Google and Facebook, a company in the midst of announcing and operationalizing its new strategy, a company that has just made a commitment to openness and has its own ideas about what that mean, and it’s really just too hard to figure out what has been announced and what hasn’t and I really don’t want to talk out of school, so I’ll just adopt a wait and see attitude and for the time being keep my opinions to myself.

October 31, 2007

Matt Leacock's Pandemic game poised to infect the world

[Not final image of the Pandemic board]

I have always loved games, though I find I have less time for them as I get older. When I was younger it was board games and card games. Later role playing games and video games. I used to change five dollars into quarters and squander it all on Major Havoc and Robotron and Pole Position.

In my work and in my attention to online and offline experiences I find that qualities of play can make all the difference between drudgery and delight. I’ve often theorized that Flickr is so successful because it feels more like a game than an asset-management system (and of course Ludicorp made Game Never Ending and built the first rev of Flickr on the GNE engine). Think about it. Given the choice, would you rather “work” or “play”?

At the retreat from which I just returned I had the opportunity to meet and talk to several game designers (Nicole Lazzaro, Bill Dunn, and Jon Blossom), which was enlightening in numerous ways. My old buddy Jeff Green is still editor in chief of Games for Windows (possibly the best job EVAR in that he and his staff are required to play games on the clock). And my colleague Matt Leacock, principal interaction designer for Yahoo’s community platform, has a new boardgame, Pandemic, coming out in November. Is the world trying to tell me something?

I think I need to pay attention to this. Game interfaces (or “PX” as Nicole calls it, to encompass the whole idea of the play experience) are light years ahead of productivity application interfaces and I think those of us working in the more staid spaces would do well to learn from the innovations coming from games. I’ve been mouthing an idea along these lines for years (along with other commonplaces, such as “learn from the children”) but so far I’ve failed to really dig in.

I asked Matt a few questions about his upcoming game:

wake up!: How long have you been designing board games?

Matt Leacock: I’ve been designing board games since I was a kid. When I was nine or ten I designed the first game I can recall named “The Sensation of Boxation.” It was a simple roll-and-move affair where the players were represented by corrugated boxes in an assembly line trying to make their way to a shopping cart. Many of my early games were drawn on the back of other board games that I found lacking. I recall playing games with my uncle and saying, “Is that all there is to this game? I’m sure we could do better.”

Do you design other kinds of games as well?

I focus on board and card games for two reasons: I’m able to handle all of the production tasks and I enjoy the social interaction that results in a good board game. As I experiment with cooperative designs though, I’ve been tempted to work on some computer-moderated designs to lighten up the bookkeeping that players need to do.

What are some of your favorite games?

My favorite game is Tigris and Euphrates by Reiner Knizia because it offers so many interesting tactical and strategic decisions with a fairly straightforward set of rules.

Your influences?

As for influences, I played Tactics, Acquire, and Civilization with my dad and uncle as a kid, roleplaying games in high school, then watched a new world of games open up to me as Mayfair and Rio Grande started importing German board games like Settlers of Catan. I favor games that play in 45-75 minutes, have a lot of player interaction, offer the ability to play intuitively, and provide the means for players to catch up from behind. Many of the “Euro” games offer this mix.

Where did you get the idea for Pandemic?

Hard to say. I wanted to try my hand at a cooperative game and was also interested in a game where chain reactions could occur—where things could rapidly get out of hand. The central mechanism came to me more or less by accident as I was experimenting with a set of cards while working on the first prototype.

How long did it take to design the game?

I started working on Pandemic in January of 2004 and signed off on the final rules in October 2007. I put together a quick-and-dirty paper prototype in about 30 minutes with a couple of sharpies, a standard deck of cards, some wooden cubes, and a few pawns. Unlike many games I’ve worked on, Pandemic showed promise right from the start - I could feel tension in it right away.

What was the process like?

For this design, I wrote down my objectives early which helped keep me focused. The process I used relied on many iterations. In each trial, I’d jot down a rule set and either try it out myself or present it to a group of playtestsers. After playing a game, I’d keep rules that helped make the game more engaging and do what I could to remove any rules that sounded interesting—at the time—but didn’t match up to the core objectives. I also sat out a lot of games and closely observed players to note what behaviors they exhibited during each game. Where did they get confused? Ask questions? Check the rules? I did my best to file off all the sharp, confusing edges by redesigning the game to fit players’ mental models wherever I could.

The two biggest hurdles are finding a novel mechanism that is fun and fine tuning the design for balance and learn-ability. For this game, the mechanism came right away and the bulk of the work was tuning. I’ve been trying to get more methodical about the second part of the process (tuning a balanced, learnable design) because I can get much better results in fewer trials if I’m actively listening and taking notes. I still haven’t found a process for repeatedly discovering fun and novel games, however. I suspect it has a lot to do with loads of fearless experimentation.

Have you got some other game ideas in the works?

I’m currently working on an cooperative game that could be used for training or team building in corporations.

You can pre-order Pandemic now at Funagain Games. Just $23.95! Fun for the whole family!

October 23, 2007

Enumerating social media patterns: a work in progress

thumbnail section of social media patterns graph

At BarCamp Block earlier this year I led a discussion of social media design patterns. The slides I posted were really more just about patterns and how we deal with them at Yahoo! But the group exercise was to brainstorm a huge list of social media and social networking activities that could be described and documented as patterns.

These are not the patterns themselves, but at least one pattern could probably be written around each of these gestures. We found it easiest in the brainstorm to just rattle off a list of gerunds (“adding, blocking, friending,” etc.).

The list we came up is also not exhaustive or definitive. It’s one group’s idea of the various patterns that a social system could support. The initial list was posted at the BarCamp Block wiki. Then Kent Bye, one of the participants, took a stab at re-sorting it a bit and created a visualization. He also then hand-copied it into an outline format and sent me his “version two” of the list.

Since then I’ve made a few more tweaks and have produced a version 3 outline. I’ve been working on visualizing it myself, so I turned the OPML into an OmniOutliner file and then imported that into OmniGraffle. The map is so tangled that Graffle had a hard time displaying it without crossing lines, so I spent some more time dragging the various nodes and clusters around until they were each separate. The end result is that it’s huge of course, and still by no means final or exhaustive or authoritative.

In fact, it’s decidedly not the taxonomy of social media patterns we’re working on internally at Yahoo! Think of it as an open source, collaborative work in progress. The thumbnail image above links to a full-sized PDF you should feel free to grab to get a better look at the current state of play of this idea, and if you’d like the OPML file or any other format, just drop me a note and I’ll send it to you.

When I get a moment, I’ll drop by the BarCamp Block wiki and upload the file there in several formats too, at least until someone provides a better place for hosting this project.

October 16, 2007

Do pattern libraries really work?

pattern-library-thumb.jpgI wish I could have been at the recent Chicago IxDA Pattern Library conversation, a participatory discussion about using pattern libraries in practice.

I appreciate the shout-out for the open Yahoo! pattern library and I welcome the questions about how our non-public-facing library actually works. In fact, I am currently putting together a brown bag talk I’ll be giving in Sunnyvale tomorrow to catch up and fill in our own user experience designers on what’s new in the pattern library, what have we changed, what have we learned, what’s been working, what hasn’t been working, and how they can contribute and get the most out of it.

While this is an internal-facing talk, I believe the camera guys from the Yahoo! Developer Network will be filming it so as long as I don’t slip and give away our secret plan to equip everyone on the planet with a jetpack (oops!) there might be an opportunity for the interested general public to see the talk.

In Chicago, it sounds like they raised all the right sorts of questions:

Are we confusing pattern with component, pattern library with style guides?

Is a lightbox a pattern or a solution, or is that one and the same?

How do we have a group of people come to a consensus on what should constitute a pattern?

How do we justify the time spent in creating the resource?

Does this need to be tied back to code to be efficient?

How do we institutionalize its use? Here you create this thing… does it die the minute you look the other way?

Should an agency have one? How would that work across clients? Could it be high-level enough to be useful?

I think the answers to many of these questions are situational. There’s an interesting tension between pattern-language purity and practical usefulness. In my experience a working pattern library has to straddle that line between enshrining time-worn principles and providing handy reusable components.

I think a pattern library can be considered a sort of style guide, although the discipline of expressing patterns as solutions to problems in context takes it away from the more changeable, spec-oriented, visual-centric style guides most of us are familiar with.

The granularity question (lightbox? slider? carousel? etc.) needs to be answered in context. I’d say whatever works for the people who have to actually use the library is what you should do. Don’t get too hung up on semantics and purity.

Building consensus is probably the most interesting challenge, although of course it depends on the size and structure of the organization in question. This is something I plan to address at several conferences over the next year (organizers willing).

Justifying the time spent on the resource has to be based on time saved and efficiencies realized in the future. If you can’t get that “return on investment” it’s frankly not worthwhile to put together such a resource. However, do carefully look at what time and efforts are being wasted if a large team keeps designing the same interactions over and over.

Wherever possible, I think patterns should be tied back to code. I don’t consider the code samples to be part of the pattern language proper, but I think the best patterns are augmented by many visual examples (including animations), interaction and visual specs, code samples, reference implementations, prototypes, and templates and stencils for rapid reuse. You won’t always have all these elements available but the more the better.

I’ll leave the agency question for the community to discuss. I suspect it would have to be fairly high level to work at all. But then again what agency doesn’t reuse some tried-and-true wireframes or other conceptual documents and diagrams?

Janna Hicks DeVylder wrote on the ixda list, “It’s clear that people are interested in this, but it feels like we want to see its utility proven out past just the creation of the library. I would love to hear about the successes and challenges Yahoo has faced with their non-public facing library. Sounds like a great conference topic to me!”

I agree! I have a panel on this topic (Pattern Libraries: The Devil’s In the Details) under consideration for South by Southwest. The panelists include Austin Govella and Jenifer Tidwell. I’m also about to propose a slightly different talk with Austin for the IA Summit, this one focused a bit more on the information architecture and social organization of pattern libraries (for effective use). In both cases I will be drawing on the lessons we’ve learned at Yahoo: what’s worked and what hasn’t and how we’ve changed course and refined our ideas to continue building consensus around a core library.

I’ve also got a lightning-session proposal submitted for Interaction08 where I will talk about a new wave of social media patterns (and toolkits - a concept I’d love to explain further) we’re currently incubating in our internal-facing library.

I blogged just recently here on the “bastardization” as Janna put it, of the pattern term. I understand why it’s happening (and in general I am more of a descriptivist than a prescriptivist when it comes to language use), but I will probably continue to speak up for the idea that to be called a design pattern something must at the very least be described in terms of context, problem, and solution.

Lastly, I want to note that I think the consensus from Chicago is dead-on when addressing the role of patterns in innovation. Patterns are inherently not about innovation. They are about tried-and-true dependable solutions. What they do is free the designer up to create and innovate on the leading edge of the design problem, without having to dedicate as much energy to “reinventing the wheel.” Inevitably, we will all end up retracing each other’s steps frequently as we learn to design, but whenever we can learn from the successes of the past, I think it behooves us to do so.

October 15, 2007

Selling Amazon shorts

reluctant-editors.jpgIf Apple can sell electronic downloads of songs with no packaging for 99c a pop why can’t Amazon sell short little chapbooks electronically, download only, for 49c? The answer is they can, of course.

A writer on a mailing list I’m on recently alerted me to this feature (no idea how long Amazon has been at it), mentioning his eleven-page piece called Letters from Resistant Editors. In his own words, “Like almost all writers, I’m well acquainted with rejection and I learned long ago to keep faring forward when I get a rejection slip or letter. But one such letter started my mind tinkering with letters that some editors might write. Here is the result: letters of rejection that might have been written to some well-known authors. If you are a writer of children’s stories, or a reader of them, how would you like to get letters like these?

“It looks interesting and for less than half a buck, why not take a look? Amazon describes its Shorts this way:

About Amazon Shorts:

  • Amazon Shorts are available exclusively at Amazon.com; you will not find them anywhere else.
  • Amazon Shorts are delivered electronically; there are no printed editions.
  • Amazon Shorts are yours forever – after purchase, you can read them anytime at Amazon.com. (They’ll be stored forever in Your Media Library in PDF, HTML, and text e-mail formats.)
  • You are free to print Amazon Shorts to read in hard copy form at your convenience.

For me, this is déjà vu all over again. Back around 1988 I was packaging short “e-books” for a startup called Mightywords that had spun off from Fatbrain. They had detected this exact market: items shorter than a book but still worth publishing. Something like free-floating magazine articles. They were pricing them too high (typically $5 or more) and they were targetting technical subjects, and mainly they were burning through a bunch of VC cash (which I did my best to spread around to the various starving writers I knew). It was too early, the business model was wrong, and so on, but that idea really wasn’t a bad one.

I’ll be watching this Amazon experiment to see how it pans out.

October 13, 2007

Ambient info edu revolution

Michael Wesch, who created the virally popular internet video called Web 2.0: The Machine is Us/ing Us (its success drew on a sort of meta-application of the very concepts it discussed), was the keynote speaker at IDEA 2007 last week. As part of his keynote, he previewed two videos he has now released to the web.

The first, Information R/evolution, examines the challenges we all face in this age of information glut and shortening attention spans:

The second, made collaboratively by one of his classes (Wesch is a professor of anthropology at Kansas State University, where he is launching a Digital Ethnography working group to “examine the impacts of digital technology on human interaction”), looks carefully at how we are teaching today and how out of sync it has become with the lives of contemporary students:

In some ways, for me, the highlight of the conference was Wesch’s story about how he frightened himself one night in the communal sleeping quarters in New Guineau when he thought his own arm, which had fallen asleep, was a snake lying across his body. This story became the kernel of Wesch’s reputation with the people he was studying and living among, and helped him realize that telling stories is a big part of how we gain identities and fit ourselves (and others) into society.

October 12, 2007

When is a pattern not a pattern?

factoryjoe's design patterns collection on flickr

When it’s an antipattern? No, that’s a different blog post.

Actually, what I’m thinking about this morning is the drift in meaning of the word pattern, as used in the sense of a design pattern.

Going back to Christopher Alexander, the “pattern language” concept started off with a fairly strict, well defined structure. Alexander’s patterns all have a sensitizing example, a context (when to use or apply the pattern), a problem (expressed in terms of conflicting forces), and a solution (a way to balance or reconcile those forces). Application of the pattern produces a new context (and hence a way to “chain” patterns together).

The pattern language, then, is a vocabularly of patterns that relate to each other. In Alexander’s work, there was a hierarchical, or scale, dimension. His A Pattern Language book starts at the level of nation-states across the world and works its way down to things like doorknobs.

When the extreme programming folks involved with Ward’s wiki and the “Gang of Four” adapted the pattern metaphor to software engineering, they did not really preserve the pattern language concept. They also debated among themselves between what they called descriptive and prescriptive patterns (actually, I’d better check if those were the real terms they used). They were aware of the Alexander precedent and conscious at least about which parts they were applying to the computer software context. (Alexander himself foresaw and promoted this application, btw, in the 1980s.)

Later, the design pattern idea was adopted by HCI folks (and thus user-interface designers and so information architects and interaction designers). Pattern repositories began to be referred to as pattern libraries, but still the example, context, problem, solution model survives to a large extent. There’s a mailing list where user-interface pattern authors discuss these things, partly as a way of maintaining some commonality among our various libraries and while there are many more possible elements in a pattern, there’s a fairly strong consensus around those core “fields.”

The pattern “meme” if you will is strong. The metaphor is easy to understand and its spread somewhat outstrips the more formal concept. So this has lead, in the web-design world, to a slightly more loose sense of the word pattern. The meaning is similar: it refers to emerging solutions to common problems. What gets lost in translation is the formal structure for documenting and defining the patterns.

This may not be a bad thing, but it is a thing, so I am noting it. Over at the microformats wiki, they will speak of design patterns and then write up a sort of plain-English colloquial description of it. Nothing wrong with that, right? I agree, but part of me wonders if that’s really a design pattern or is it more like notes toward a design pattern or an unfinished or unwritten design pattern. Or maybe we need a different name. A design pattern sketch, or a design habit?

Likewise, factoryjoe has been compiling a fascinating and useful collection of interface images, recently noted in Metafilter. When I write (or help develop) patterns for the Yahoo Pattern Library, I am nearly always asked for more visual aids. More examples, more diagrams, more animations, and so on. Thus, I applaud any effort to audit what’s out there and thereby document patterns, emerging and well established, good and bad (the latter being those aforementioned antipatterns).

To me, these pattern galleries, as I like to call them, are a perfect complement to the formal written patterns. They take the concept of the sensitizing example and extend it. This is only a good thing. I just question whether the collections of images are themselves patterns. Aren’t they really, if anything, illustrations of patterns?

Of course it’s possible, in Flickr and elsewhere, to annotate the images, or comment on them (and people do). There’s nothing stopping an intrepid pattern-illustration capturer from writing up a context/problem/solution triplet for each set. But without that, I’m going to lean a bit old school here and say they aren’t really patterns.

This is probably a lot of inside baseball for most folks. If it weren’t my job to curate a design pattern library I probably wouldn’t worry about things like this myself.

September 30, 2007

RE: Join my network on LinkedIn

'LinkedIn: Invitations Received' screen snap

This is a quandary for me. I try to keep my LinkedIn network literally to people I know and have worked with or with whose work I am familiar. From what I can see, you seem like an excellent person to know, I’m flattered that you enjoy my posts on that list, and I appreciate your providing that context since so many invitations I get have robogreetings on them.

I couldn’t bring myself to click the “I don’t know Jack…” button, but since I take LinkedIn literally (I want to be able to recommend people from my own direct experience) I also don’t feel right accepting your invitation.

I hope you understand.

September 27, 2007

Skin-deep semantics

Somewhere along the way web developers learned that bold and italics tags (don’t even mention underline) were verboten, careless mingling presentation with semantics and structure, but that emphasis and strong emphasis were cool. Heck, even Dreamweaver and related products now automatically insert em and strong tags in wysiswyg mode when the user clicks buttons labeled I and B.

There’s a problem with this, though. In some ways it’s the equivalent of the CSS-styled span tags Word now inserts to apply font (typeface) choices just exactly the way it used to littler HTML output iwith font tags. So, what’s the problem?

The problem is, for example, that italics does not always mean emphasis. The semantics behind the typesetter’s choice to use italics can mean a number of things. Yes, it can signify emphasis. It can also mean the title of a book or record. It can mean that the word in question comes from another language.

Mindlessly applying em to a French word is semantically as useless as applying an i tag. In fact, I’d say it’s worse. At least italics are traditionally associated with foreign words. Emphasis is not. It’s more like a homonym - it looks the same but it means something entirely different.

So what’s a standards-conscious, POSH, separation-of-semantics-and-presentation web developer to do? It seems that the workaround would be to (as usual) choose the best tag (I like cite for titles, which happens to render in italics in most browsers) and then define classes for the semantic meanings involved.

By all means, continue to use em and strong when dealing with emphasis, but come up with some for word-from-another-language, and then apply it.

Creators of wysiwyg tools might want to trap clicks of those I and B buttons (note I used the i and b tags here because I am literally talking about italics and bold, not emphasis and strong emphasis!), and ask the author which of the several meanings traditionally associated with italics or bold they have in mind. Then create or apply the appropriate markup.

Problem solved.

UPDATE: Noticed that Zeldman praises the new Apple Store’s standards-adherence and encourages his readers to view the source. I couldn’t help noticing the site’s use of strong to produce bold inline headings. I guess a case to be made (tortured) to say that an inline heading is a phrase you wish to emphasize, but isn’t it really a heading that just happens to be bold? Strong is the new bold.

September 26, 2007

Graphing the social graph graph

social graph logo

Just noticed there’s a conference coming up in a few weeks here in the valley that seems extremely narrowcast to me: Graphing Social Patterns: The Business & Technology of Facebook.

A lot of the usual suspects of social network bloviating are speaking (I count two women out of 20 named speakers), including representatives from Facebook, LinkedIn, O’Reilly (Tim himself), Forrester Research, TechCrunch, and of course Scoble, and others.

The conference describes itself as

for developers and marketers on how to build and distribute apps for the Facebook Platform. This event is for both business executives & technical developers who want to learn more about the Facebook environment, and how to reach online communities using social networking platforms and applications.The conference will be held in San Jose, CA from October 7th-9th. Main conference sessions are Monday 10/8 and Tuesday 10/9; an optional pre-conference workshop is Sunday, 10/7.

If you’re interested, you can register at EventBrite.

They’ve certainly populated the conference title well with buzzwords. The term social graph, popularized by facebookistas (and annoying to those who consider it an obscure jargon synonym for social network - oh, and don’t get jonas luster started on how social network software is not the same thing as a social network) seems to be everywhere these days, and of course people love to talk about recognizing and capturing (or detecting, heh) patterns.

For a counter view of the importance of Facebook’s social graph as a platform for application development, check out the truth about facebook apps: most people ignore them:

Once installed, most widgets are ignored.

Slide’s “Top Friends” boasts the most active users: 2.7 million people, or 20% of its user base, use it every day. The app with the highest engagement percentage: “WarBook,” a medieval fantasy game, is played by 18,000 people a day, or 42% of its install base. The “iLike” app, oft-cited as a Facebook success story, may be less popular than we thought: 646,000 people, or 9% of its install base, use it daily.

(via cwodtke’s tweets, who recently noted that she and I seem to be on some sort of convergence path)