I did at talk at STPCon this year on Testing Web 2.0 Applications, and the monthly column Chris and I wrote for the January issue
is on the same theme.
Now when I say "Web 2.0", I actually mean something
. Put simply, a web 2.0 app is an application designed for end-user ("people" or "human beings"), generally free, generally with a low switching cost, where the value
is created by the users themselves.
In other words, if you sign up for Twitter, Myspace, Facebook and LinkedIn and have no friends and nothing to say, you aren't going to be on the site very long - and most of these sites make money by selling advertising. They live
to be "sticky"; they want users coming back again and again, modifying what they are doing -- which makes the sites more interesting for their friends and colleagues.
Just a few of the challenges of testing web 2.0 apps:
- How do you simulate tens of thousands of simultaneous users?
- How do you predict their behavior patterns? Maybe tag a user falls apart when fifteen people do it simultaneously - but is it something people do frequently? Does /anybody/ use the feature with the performance problem?
- Scalability. When you do simulate the users, and your app falls over, what then?
- Security. These accounts have personal information - name, address, birthday. A hacked account gives a hacker lots of insight into you, your friends, and, possibly, your credit history.
- Privacy. Who gets to see what, when, and how? If you don't think this is an issue, just google "Facebook privacy" and see what you find.
In addition to 'pure' web 2.0 plays (Amazon's comments, blogs, web-based email), I also see companies trying to engage in a dialogue with their customers, creating 'sticky' websites with content created by customers. Why, I'm even in an on-line community for Saturn drivers and enthusiasts. No, really
Now I work for a startup company taking some of these tools into businesses, so we deal with these problems, plus issues with the corporate firewall and transparency, etc. Our January column has a top-ten list of techniques to aid with testing web 2.0 apps, but i'm curious - are any Testing at The Edge of Chaos
readers testing web 2.0 applications right now? And what are the tricks you use to overcome these challenges?