Archive for the ‘user experience’ Category.

Does “Process” Work in Software Development? – Part 2

In my post yesterday, I questioned the value of “process” in web and software development and discussed my successes and failures both with and without it. The biggest problem with process is that it deludes people into thinking they have the fundamentals in place to guarantee a successful project. Process is too often a crutch in this way.

Over the course of decade and a long list of projects, I’ve worked with variations of waterfall, agile, RUP and other methodologies, and I’ve also done my share of winging it with no formal process at all. Process or not, I’ve learned that the successful projects I’ve worked on all had certain ingredients in common. Namely…

Smart people.
This is a no-brainer, but a team of smart people is key because smarter people work faster, make fewer mistakes and are able to adapt to unforeseen changes. All it takes is a one weak link, however, to cause things to break. You can’t rely on smart people alone.

Leadership.
A film has both a producer and a director. A restaurant has a chef, a manager and a maître d’. People need freedom to lead their respective domains, but smart people inevitably disagree with each other, and smart people without a recognized leader is a recipe for scope creep in the worst possible way. Everyone wants to put their best work into the mix, and a committee approach encourages quantity of ideas. Ultimate power needs to roll up to a single, clear authority with the tools to make good decisions and resolve conflicts within the team.

Constraints.
Frank Lloyd Wright once said, “Man built most nobly when limitations were at their greatest.” Jason Fried of 37 Signals says, “Embrace constraints.” Artists recognize that constraints help focus one’s creativity. In web and software development, constraints usually come in the form of hard deadlines or agreements around scope (often a bit of both). But constraints must be balanced with “a healthy disregard for the impossible,” as Marissa Ann Mayer – VP of search products and user experience at Google – put it. Innovative ideas by nature will often push at the very edges of constraints, so there should be some flexibility. The key to balancing constraints with a “disregard for the impossible” are good filters for managing new ideas. Which brings me to…

Filters.
You don’t want to discourage innovative, unconventional ideas, but you need some way to filter them. The same goes for the more typical dynamics that lead to scope creep. Stakeholders second guess their decisions. Important customers complain about something or make specific requests. Some jackass in a meeting spouts off about some edge case, and boom… more stuff to cram into the project. Leadership (see above) is important here, and so are constraints like deadlines and scope. New ideas mean an increase in scope, which means moving the deadline. Either that, or something already in scope drops out. Each incoming idea needs to be considered, scoped and prioritized against everything else. Edge-case thinking just needs to be stopped. This is what I mean by filters – a change-management process that the team leader needs to enforce. Too often, outside ideas are subject to this process, but ideas originating within the team get a free pass. Filters need to apply to everyone equally.

Simplicity.
This is its own kind of filter. The team and the stakeholders need to understand the essence of the thing they are building. They need to look at it holistically and know what it needs to do in order to be considered complete. It’s important not to look at features in isolation, because this encourages people to explore every possible expression of every nook and cranny of every feature (edge cases again). Instead, the team needs to determine only what is essential to each feature as it relates to the whole. Finally, the team needs to understand that the product can grow and evolve after it’s launched, so “complete” doesn’t mean perfect.

An understanding of “X” factors.
I mean “X” as in multiply. There is a list of things that add risk to a project and multiply its challenges and complexity. I’ll discuss these in detail in a follow-up post, but among them are:

  • nature of client
  • size and “spread” of team
  • complexity and novelty of the thing being built
  • time between designing and building
  • depth of QA
  • distance – with regard to both time and personnel – between deployment and maintenance

Good Tools.
Smart people can survive with just email and whiteboards. That might be the bare minimum, but I’ve had good experience using wikis and simple PM-ware like Basecamp.

Padding.
Because shit happens. A good project manager knows it’s necessary to add 50% to every individual person’s estimate of time and effort, and then add another 20% or so across the board for good measure.

A good contract.
Too many contracts are essentially crafted by BD people who don’t understand what a project will really take, and who don’t have a vested interest in whether it actually succeeds. Too many contracts fail to consider the “X” factors, or encourage constraints, simplicity or leadership.

Transparency.
Otherwise known as communication. But “communication” is a cliche, and every team thinks it’s doing a good job communicating to stakeholders. The bottom line is, stakeholders need a strong consensus around the essence of the thing being built. They need to understand the change-management process (filters), and they need to see steady progress.

Even knowing all this, I’ve still worked on projects that have gone awry. But it has always been because we failed to follow something on this list. The good news is, when a new project starts to take a southward turn, I just take an inventory of the ingredients above, and when I identify what’s missing, it’s usually not too late to put the project back on track.

Does “Process” Work in Software Development?

origami

UPDATE: There’s a Part 2 now.

When I started in the web development business about a decade ago, I worked at a small agency with a few smart people, and we were basically winging it. As the dotcom bubble expanded at a frenzied pace, we grew along with it, and inevitably we had a couple of projects take sharp turns south. People suffered on both sides, and it became clear that winging it was not scalable.

We needed a process – one we could articulate to clients, propagate through the organization and of course put into action in a repeatable way.

This is what “process” is supposed to do. It exists to mitigate unpleasant surprises by telling stakeholders what they can expect from a project. It’s also supposed to save teams from continually reinventing the wheel.

I worked with my bosses at that first agency job to define such a process, and we were very proud when it was complete. Some months later I left that job for an agency on the West coast. As it happened, I arrived just as this company too was in the midst of a campaign to define a process. People from every part of the agency worked on it for weeks, and the final product was a lovely thing to behold. We made posters for the office, and glossy booklets to give to would-be clients.

My next company – a large telecom – used a version of RUP that was the most over-engineered process I’ve ever experienced. When they laid me off, I returned to the agency world. I worked for two of the biggest interactive agencies, and both had processes that were beautifully-rendered in company collateral.

It might not surprise you to learn that all of these processes looked pretty much the same on paper – characterized by big phases with catchy labels. In fact it was only in these labels where the various processes really differed – one company’s “explore” is another’s “discover.” Even the language the agencies used to sell their respective processes was the same, with a lot of emphasis on words like flexible, adaptable and proven.

Finally, it’s worth adding that all of my agency work was in the service of clients who had their own processes, so at one time or another I’ve had to use variations of waterfall, RUP, agile, spiral and triple lindy. Kidding about that last one.

They all share similarities, but the really striking thing these processes have had in common in my experience is how quickly they broke down and became meaningless when put into practice – even by solid teams of nothing but smart people.

I had been a big believer in process, but because of repeated failures I eventually came to see the whole idea of “process” as a fantasy designed to woo clients and placate bosses. I began to believe that assembling a small team of really smart people and simply allowing them to wing it is the right approach after all.

At the very least, this approach doesn’t raise false hopes. If projects are destined for chaos or collapse, isn’t better not to expect them to go smoothly in the first place?

I’m joking of course. There are many reasons projects go south, and there are many ways to help make sure they don’t. Working within the framework of a heavy duty process is not the solution, but having no process at all amounts to blind luck, because successful projects depend on the right mix of a whole range of ingredients that aren’t likely to converge if you’re just winging it.

This is starting to run a bit long, so I’m going to push the rest to a sequel. In Part 2 of this series on process, I’ll talk about the ingredients that need to converge to make sure projects go well.

My Favorite Web Services

As a user experience guy, one of the things I do for my job is try out every new web service that comes along. Most of them don’t really stick, and some I avoid simply because of god-awful naming. I’m talking about you, Frrvrr. Seriously, the Web 2.0 Company Name Generator could have done way better. Anyway, the following is the shortlist of the services I actually get value out of on an almost daily basis…

del.icio.us logo del.icio.us
There’s too much good stuff on the Internetz. I find a handful of things every day that I don’t have time to read right away. I also read a lot of good stuff that I know I’ll want to find later or refer back to. Enter del.icio.us. I must have a couple thousand URLs bookmarked in there now, but I never have trouble finding them. The social component is a nice value-add, but del.icio.us would still be essential to my Internet survival without it. My only complaint is the lack of support for multi-word tags. Commas would have been a better choice than spaces as a delineator.

Plaxo logo
I discovered Plaxo a few years back when I was trying to consolidate and clean up a few different address books. It was good then, and it’s awesome now. With hooks into Gmail, Google Calendar, Yahoo Mail and Calendar and LinkedIn, plus a sync tool for Mac OS, Plaxo is the keystone of my personal information management. Recently they added a social networking suite of features called “Pulse,” which makes sense, but I have no use for it myself. I’m not sure what it does that, say, LinkedIn doesn’t already handle for me.

Pandora logo
I used to alternate pretty much equally between Pandora and Last.fm, but eventually I found myself using Pandora more and more and Last.fm less and less. Pandora just picks better music. Last.fm is a social network, but all I’m interested in is a steady stream of good tunes. I’m sensing a pattern here, three apps with social networking components I don’t use. I’m an introverted person. Case in point I suppose. Last.fm uses collaborative filtering – the opinions of your friends and peers – to choose music it thinks you’ll like. Pandora uses a proprietary algorithm based on an editorial analysis of hundreds of attributes of each song. What’s more, Pandora learns from your own consumption of the music it plays and gets better and better.

LinkedIn logo
Maybe I’m not so anti-social after all. I started using LinkedIn as a way of keeping tabs on people I worked with in the past, especially as they moved and changed jobs. Beyond that, I used it occasionally to help friends find jobs and to recruit people to work for me. Recently, they launched an “Answers” feature, where people post questions and the community responds. I’ve asked a few questions myself and gotten useful answers, and I enjoy browsing the pool of other people’s questions.

Yelp logo
I don’t know the exact ratio of good luck to good thinking responsible for the wonderful world called Yelp, but they’ve managed to create something incredibly useful and utterly addictive. The various ways to connect and communicate with other people are especially engaging. You can rate other people’s reviews along several dimensions (useful, funny, cool) and send each other quick little compliments that are then displayed for all to see. Add talk threads, a local events calendar and a host of other useful features – all wrapped in a smart and efficient UI.

Wikipedia logoWikipedia
My route to Wikipedia usually begins with a Google search for some obscure tidbit of trivia. A few hyperlinks later and I’m hopelessly hooked, and I can kiss an hour of work goodbye.

google logo
Specifically Google Reader and Google Analytics. I used to use Bloglines to follow my feeds, but I switched to Google Reader because it’s able to keep track of exactly what posts I’ve read (and not read). Simple as that. As for Google Analytics, I get a darn good analytics app for free, and Google gets some data about my website and my visitors that it couldn’t get any other way. Win win.

WordPress logo
The engine that powers this blog. It just keeps getting better and better, and it’s free. The WP community gives you help when you need it, and they’re always cranking out new ways to extend the core software. Code is poetry indeed.

Notably absent from my favorites are a few very popular services. People tout these all the time, and some of my friends give me dumbfounded looks when they find out I’m not a fan of…

  • Twitter – I just don’t feel any need to get constant up-to-the-minute updates about anyone, and I have no interest in keeping anyone that updated about me.
  • Facebook – I hate how Facebook forces you to spam everyone. Imagine ordering a cup of coffee at Starbucks and having to order drinks for everyone else in the store in order to pick yours up. I am, however, totally addicted to Facebook’s new Boggle-like game called Prolific.
  • Flickr – I’m actually a fan of Flickr, but I’m a casual and infrequent photographer at best. Also, I can’t stand the pressure to come up with witty captions for everything.
  • Technorati – I use Google. Rubel was right. Enough said.
  • Last.fm – See Pandora, above.

Finally, there are a number of services that really intrigue me and have great possibilities. They are doing interesting things, adding value to the web and pushing it in the right directions. They just don’t fulfill a frequent or persistent need of mine, so I don’t have any compelling reason to use them on a regular basis.

  • Ning – New-ish venture from Netscape founder Marc Andreessen. An application platform that promises, “Create Your Own Social Network For Anything.” I have friends who think it’s the bomb diggity, but I’ve only scratched the surface of it myself.
  • Dapper – A web service that enables you to turn any website into an API. It’s pretty slick, and it’s tools like this that are pushing us ever closer to a truly semantic web.
  • Yahoo Pipes – This is a preview for how basic software engineering will be done in the future. Oooh the future.
  • Freebase – More semantic fun. A database of “the world’s information,” drawn from large open (structured) data sets.

I know this list might seem pretty random. I’ve failed to even mention quite a number of notable services, many of which I have used and enjoyed to some extent. They just haven’t graduated to the level of the things that benefit me every day.

Amazon Wants to be My Wingman

Today I ordered a book called Information Dashboard Design from Amazon.com – my latest in a series of work-related purchases.

Of course, whenever you buy anything from Amazon, they generously suggest other books you might be interested in…

Amazon wants me to get a life

Amazon seems to recognize that guys who habitually purchase books on information design and software engineering need all the help we can get.

It’s nice to know they have my back.

The Currency of Influence

influence1.png

The February issue of FastCompany magazine includes an article provocatively-titled, Is the Tipping Point Toast? about the work Duncan Watts has done researching influence. The article doesn’t exactly torpedo Gladwell‘s hypotheses, as the title suggests, but it does argue that influence is a much more random phenomenon than Gladwell and a string of high-profile marketing gurus – not to mention our own intuition – would have us believe:

[Watts] has written computer models of rumor spreading and found that your average slob is just as likely as a well-connected person to start a huge new trend. And last year, Watts demonstrated that even the breakout success of a hot new pop band might be nearly random. Any attempt to engineer success through Influentials, he argues, is almost certainly doomed to failure.

Strong words, and not ones that marketing folks want to hear. But let’s back up and look at the two schools of thought at odds in this debate.

The Gladwell school (previously put forward by Ed Keller and Jon Berry in their book, The Influentials) holds that a relatively small number of elite and well-connected tastemakers is responsible for igniting the first small flames of buying or behaving that eventually spread like wildfire to become mainstream trends. Marketers like this model partly because it makes sense intuitively. We can all think of people in our lives who are consistently ahead of the curve with things, or whom we depend on as consistently reliable sources of information. It’s nice to think that if you can, as a marketer, put your message or product in the hands of these elite few, then they will do the rest of the work for you.

Watts, however, isn’t buying it. His research – a variety of computer models as well as social experiments using real people – doesn’t support the existence of this special class of powerful people. As far as he can tell, a trend can start anywhere and with anyone, as long as the marketplace is primed for it. This is borne out in a well-known experiment he conducted by building two identical online music communities where users could rate unknown songs from unknown artists. In one community, the users couldn’t see anyone else’s rankings. In the other, people could see how everyone else rated each song. He wanted to see whether word of mouth would affect the rankings in this second community, and whether any of the participants would emerge as the tastemakers.

In the first community, people rated the songs fairly evenly. But in the second community, as one would expect, favorite songs did emerge, as word of mouth took hold. Even more interestingly, in eight repeats of the experiment, different songs emerged as the favorites each time. For the most part, it wasn’t even close. The #1 song in one community, for example, was ranked #40 out of 48 in another. And there was no evidence to suggest that any participant in any community was significantly more influential than anyone else.

Watts’ experiment confirmed that word of mouth is powerful but, to the chagrin of marketers, it also seemed to show that it’s completely unpredictable.

So is the Tipping Point toast, like the article says? The most likely answer of course is no, and that both arguments are correct. There certainly are people who are influential by virtue of a large audience or expertise with regard to a particular subject. On the other hand, there are certainly many trends that started with seemingly random people.

Watts’ solution is to forget about trying to identify or engage with any supposed influencers and to focus instead on the masses. To this end he has developed a form of advertising with built-in sharing (and tracking) mechanisms designed to facilitate their spread.

Perhaps he’s onto something, but I think that developing a good mechanism for sharing is much less important than developing a good message that people will want to share. The “why” is more important than the “how.”

The currency, so to speak, of influence is the meme. There is a science to what makes a good meme. For content-based memes (as opposed to behavior-based ones like fashion trends), I like the formula offered by Chip and Dan Heath in their recent book, Made to Stick, which states that a good message is:

  • Simple
  • Unexpected
  • Concrete
  • Credible
  • Emotional, and
  • a Story

If marketers follow this formula, the chances that their messages will go “viral” are much greater, whether influencers are specific and identifiable elites or just random folks on the street.

The last piece of the puzzle is the marketplace, and this is something we’re trying hard to make more predictable too. Or, if not predictable, then transparent. Understanding what makes an effective meme is key to spotting them as they develop, but it’s still very difficult without reliable visibility into the marketplace. We’re aiming to provide this with some of the tools we’re developing, because this is at least as essential to the influence problem as attempting to identify some elusive special people at the top of the chain.

sigur rós trove of beauty

The other day, I was watching – for maybe the fiftieth time – this video by sigur rós for the song “Glósóli”

It’s a stunning piece of filmmaking, for a gorgeous song, but if not for YouTube, how would one find such a thing as this? MTV doesn’t show videos anymore, and a band like sigur rós probably wouldn’t get much play even if they did, so why does sigur rós bother? Who is it for?

Well, thanks to the wonderful internetz, MTV is completely obsolete. sigur rós offers up a huge collection of videos on their website for anyone to download. And there are many more on their ftp site.

I’ll be busy with these for a while.

Guilty Pleasure

When I was a kid, my parents controlled my TV diet, and while I was hardly deprived, I was never at risk of becoming a glutton. After school each day, I was allowed to 30 minutes of TV time – enough for one show. Our TV set was a 17″ black and white with the obligatory rabbit ears. It was old and sad, even for its day. It sat in the corner of my parents’ bedroom, probably because that was the only place where it could get decent reception, and I remember sitting on the corner of my parents’ bed, joyfully, for my daily dose.

Three Stooges

There were, if I remember correctly, six channels: NBC, ABC, CBS, PBS and two UHF channels. I would rush home from school to watch Ultraman, Spider-Man, The Little Rascals or The Three Stooges (although my mom ultimately banned this last one, after I started reenacting the stooges’ antics on my younger sister).

Sometime in college I stopped watching TV. I think I just didn’t have time. I also didn’t have a TV. This abstinence phase continued after I moved to New York, then Arizona and well into my life here in the Bay Area. I won’t say I missed it, but this was probably due to not really knowing what I was missing. I will say that through those years, whenever I encountered “ambient” television – in many bars, for example – I was powerless to look away.

All this ended a few years ago when I signed up for DirecTV, with TiVo (before they switched to their own DVR). It was like going from a tricycle to a Ferrari. I had never been one to proselytize about the evils of the idiot box but still, for the first few months, I kept my conversion secret. I considered TV to be junk food for the mind, and while I never begrudged anyone their right to a tasty – if unhealthy – snack, it was also not something to be proud of.

Gradually though, I began to make exceptions for certain shows. Then more and more. Until finally I had to acknowledge that there are a whole lot of good things on TV. It’s not 57 channels and nothing on. It’s 500 channels, and trying to optimize my TV viewing to see as much of the good stuff as possible.

CD cover meme

Strangers - Even for the King

Came across this fun design exercise via the xblog today. My entry is above. Instructions below:

  1. http://en.wikipedia.org/wiki/Special:Random
    The first article title on the page is the name of your band.
  2. http://www.quotationspage.com/random.php3
    The last four words of the very last quote is the title of your album.
  3. http://www.flickr.com/explore/interesting/7days/
    The third picture, no matter what it is, will be your album cover.
  4. Tag it on flickr “CD Cover Meme”

Voila! Instant music career.

I don’t want to talk to my car

I’ve been seeing a lot of advertisements for cars that feature voice recognition technology. Like this clever one for Ford’s SYNC:

Or this one for the Ford Focus:

I enjoy these commercials, but I’m not buying what they’re selling. SYNC might be cool, and it could even save my life by automatically dialing 911 after an accident.The thing is, I could talk to my car too if I wanted to. But I don’t. I’d feel like a complete jackass talking to my car. Is that weird?

This reminds me of some focus groups I helped run about six years ago when I was working for Vodafone. We had people evaluate a variety of smart phones and PDA devices, using them to interact with various applications, send and receive text messages and just make phone calls. People appeared to love the PDAs for their big screens and QWERTY keyboards, but when all was said and done, these were their least favorite devices.

The big displays, keyboards and loads of cool features were all trumped by the fact that people felt stupid holding these big clunky gadgets up to their ears while making phone calls.

How to tell if Google is going to kill (or acquire) your business

I recently got Google Analytics wired up on this blog, and it’s a pretty nifty application. It’s perfect for a small-fry like me, but as I browse the web, I occasionally find it running on some pretty high-profile, high-volume websites, so I wonder what its impact has been on the incumbents.

I’ve had some exposure to Omniture SiteCatalyst, WebTrends and a few other analytics platforms – many of which require training and experience to really get their full benefit. Many times as a consultant, I met clients who religiously deleted the regular email reports sent by their analytics package of choice, because they didn’t understand it, or what they understood of it was not interesting. Simplicity often trumps power.

This is what Google has become astonishingly good at.

Search, maps, email, AdWords, AdSense and now analytics and OpenSocial (plus much more of course). On the surface, these are useful, reliable, elegantly-designed services. They other thing they have in common is what they give Google.

Each of these provides Google with a powerful window into what people want from the Internet. Maps, for example, tells Google a lot about what people want from local search, as well as other real-world behavioral data around travel and commerce.

Google Analytics and the OpenSocial API represent gold mines for Google with regard to the data they get access to.

Using the same philosophy, but with a slightly different goal in mind, Google admitted that a big reason for launching their free 411 service was to gather data for developing speech recognition algorithms.

With their hands on all this data – especially data that no one else can gather very well – Google effectively becomes the world’s most powerful information broker. They can use the data to improve their own products or power new ones, of course, but they can also sell it in a marketplace where there’s an almost limitless demand for it. They will surely make some of it available in the form of APIs, but probably in ways that will enable them to gather even more data.

Which brings me back to the title of this post.

If you’ve built a business that depends on a category of data that Google might covet, especially data that’s not adequately represented in Google’s portfolio, then there are two ways Google might rock your world.

In the first scenario, you are like Omniture or MapQuest. Your goal has been to provide an essential service, and you haven’t really given the data that flows through your application very much thought. Maybe you even made it a core principle of your business to keep your eyes and hands off that data, to protect what is proprietary or private to your customers. Finally, your service is not all that difficult to build. Outlook: Google replicates your business and claims a devastating (for you) slice of your market.

In the second scenario, you’ve built an application or service that is utterly about a particular kind of data. In fact, you are aware that if the application that uses it were to simply go away, or if your initial target market were to become suddenly irrelevant, you know you could build something different using the same data – or sell the data itself. Finally, the data that drives your application is unique and difficult to acquire, and you’ve spent a lot of time and effort on that core problem. Outlook: Google makes a killer offer.

What business will Google target next? Will they kill an incumbent or bless a scrappy startup?