Pathfinder Blog
Topic Archive: Web 2.0

Google Health and the Changing Landscape of Healthcare Analytics

Google is at it again. Entire industries have sprung up around their search engine, adwords/adsense universe, and now they are set to do the same thing with healthcare data.

One of the major barriers to entry for companies offering services around processing healthcare data has been access to data. Who has the data? Typically the insurance companies. At least they have it in the kind of quantities that makes doing serious data analysis worthwhile. Managed care organizations are in second place, but from there you get to piddling amounts quickly. As you move from the heavily consolidated payer end of the industry to the heavily fragmented provider end, the comprehensive data view of the patient is balkanized to the point of uselessness.

This data problem even effects the valuation of companies. I've seen healthcare analytics companies that provide services to hospitals and clinics valued at less than $10 million, while another company that provides the exact same services to insurance firms is valued at ten times that price. Here, as in all things, follow the money.
Continue reading »

Web 2.0 Expo keynotes

The Future of the Internet and How to Stop It I spent a lot of time at Web 2.0 Expo session-hopping - and a lot more time hanging in the speaker's lounge fine-tuning my own talk. That's the curse of going on the last day. You can't fully enjoy the rest of the conference. That said, I had pretty strong reactions to some of the keynotes. The big platform announcements from Microsoft (Live Mesh) and Yahoo (SearchMonkey plus), were OK, but I was most struck by author Jonathan Zittrain and Mozilla exec Mitchell Baker.

Continue reading »

Topics:

Web 1.0 to 2.0: What Kind of Application do you Have?

Of each particular thing ask: What is it in itself, what is its nature?

-- Marcus Aurelius

Microscope

We get asked quite often to convert Web 1.0 applications into Web 2.0 applications. We do it so often that we've developed tools, written frameworks, published articles and whitepapers and given conference talks on the topic.

So far, there are and remain three different approaches:

  1. The Christmas Tree Approach - decorate an application with lots of Ajax widgets.
  2. The Reboot - reengineer your application from scratch.
  3. The Resurfacing - leverage the MVC nature of your application by turning your controllers into web services, your views from HTML into XML or JSON, and deploying a single page JavaScript client to access your new backend.

Which one to chose? That depends on what kind of application you have. Is it a Web 2.0 application masquerading as a Web 1.0 application, or is it really a rather dull Web 1.0 application that you need to tart up with a few widgets?

Continue reading »

Two Years of Agile Ajax: Web Killed Off GUI Techniques Just in Time for Ajax to Need them Again

Hourglass
I launched this blog just a little over two years ago, on March 21st, 2006. Appropriately enough, my first post was about User Experience (UXD) and Ajax. The blog has come a long way since then -- we've added another full-time blogger (Brain Dillard), published nearly 700 articles of original Ajax and Agile related content, and covered the major new innovations in Ajax and Web 2.0 -- but in many ways Ajax technology is still struggling with the same issues that I wrote about back then:

As it stands, Ajax is still in its infancy (or in its wild west phase -- pick your metaphor), and Bill's simple three part "patterns" are emblematic of this.

Continue reading »

Stop, Reload, Error Loading Page 404: Converting Web 1.0 to 2.0

404
OK, onwards in our effort to convert Web 1.0 apps to Web 2.0. Today we'll focus on some of the differences between Web 1.0 and 2.0 from the user experience perspective. When we think about our web interface, we usually think about the links, forms and controls we've put in place. But the reality is that often things go wrong with our app -- sometimes network problems, system problems or application errors -- and we get errors like 404 or 503, or a "page did not load." How does the user respond to these issues?

Usually they make use of the Stop, Reload, Back and Forward buttons. Most times application developers see the use of these browser buttons as a problem, to be mitigated ("Please don't submit this form twice..."; "Don't use the back button or your order will be submitted twice..."). If you think about it a little more carefully, you'll find that these buttons form a vital safety net for web applications, without which users would be crying in frustration at the "Unable to connect..." pages and spinning cursors that have brought your app to a halt.

Continue reading »

Some Very Modest Good News on Advertising and Ajax

Every month I check in on the state of advertising and Ajax. Nielsen has ditched the page view, but they've really shrugged their shoulders at how to measure traffic for advertising purposes on Ajax-enabled web sites. To make things worse, even Google, a pioneer in many things Ajax, is mum on Ajax and Adsense. Just search through their help forums for all of the unanswered questions on how to make Adsense work with Ajax sites. This deafening silence on Google's part (not even a "don't do it"), leads me to believe that they are either working on a solution but don't want to tip their hand, or that they are just as out to sea as everyone else.

So, the modest good news is that some people are working to solve the measurement problem. In the case of search recommendations, Baynote measures interest in the targets of search results, then reranks those results based on that interest. In other words, if someone goes to a search result, scrolls through the page, leafs through a couple of DHTML tabs, etc., then they probably found the page interesting. If, on the other hand, they only spend a second deciding that the page sucks, then go back to the search results, then they probably found the page uninteresting.

Continue reading »

Humor: Bubble Video

An amusing little video on the Web 2.0 bubble.

Technorati Tags: , , ,

Topics: ,

Writemaps: A web based site map generating tool

Came across an interesting web tool today...Writemaps: A site map generating tool that allows you to build, edit and share site maps. 

It's got limited features, but it has two big things going for it:
1 - It's web based, and you can share your files via url.  So anyone with a web connection can view and edit what you've created.
Picture_1_4

2 - It creates presentable sitemaps.  The page representations (nodes in the site map tree) have subtle gradients and drop shadows, and the tree diagram contains only right angles, giving your sitemap a polished professional touch.
Picture_2

A few other notes about this tool:
Can't print or save as image, but you can save as XML.
It's got an undo button! (how many web apps do that?)
You can zoom in/out on your map views.
It's dead easy to get started.

In summary, there's a lot of potential here, and I think I might give it a try on my next project.

Powered by ScribeFire.

Echo Chamber Report: Web 2.0 is Done, Son

When the marketing folks say a trend or bubble has lost its bloom, it must be true. But the examples they give are telling:

Talk of a second dotcom bubble has been fuelled by a flurry of web 2.0 acquisitions in the past two years, with media owners jostling for supremacy in the digital space. Most recently, Microsoft announced its $240m (£117m) acquisition of a 1.6% stake in Facebook in a deal that values the social networking site at $15bn (£7.3bn).

In October last year, Google snapped up YouTube for $1.65bn, while Rupert Murdoch’s News Corp splashed out $580m on MySpace in July 2005. “Some of these valuations bear little or no resemblance to reality,” says Andy Hobsbawm, European chairman of Agency.com.

Hmmm, Facebook, MySpace (in 2005! Feel the churn!), YouTube? With the exception of YouTube, these are all Social Networking sites. Web 2.0 is more than social networking, and a bubble is more than three corporate behemoths staking out territory at overblow valuations.

For those of you toiling in the fields of Web 2.0, RIA applications, don't even break stride. This is nonsense.

Technorati Tags: ,

Topics:

.Mac improvements: That’s it?

Amidst all the hardware news at Apple's Mac-focused media event last week, it was easy to overlook the announcement of some tweaks to the widely reviled .Mac web-services suite. Easy to overlook not because the announcement got no play, but because the improvements were so underwhelming. Even with 10 times the online storage space (10 gigs, up from 1 gig) and a slick new Ajax-backed photo service, the upgraded .Mac suite still costs $100 a year. Meanwhile, most of its individual features continue to lag behind the functionality and performance of free services from a host of other providers.

Commentators here, there and everywhere have predicted - and in many cases advocated - the death of .Mac for a long time now. I wonder if Mac newbies' continuing propensity to pony up for the service has something to do with Google's inability to parse the period in ".Mac" and return some relevant search results for such phrases as ".Mac user reviews." [Here's a hint: search for "dot-mac sucks" instead.] There's no shortage of users who find the service disappointing, and the latest tweaks aren't likely to change that.

Based on the demo I've seen of the new .Mac Web Gallery, I can see why an iPhoto junkie might be persuaded to dump Flickr and give it a whirl. But why settle for syncing Safari bookmarks when you can use a social bookmarking service or a bookmark-syncing plug-in for your browser of choice? Why settle for viewing your Address Book entries from a primitive web interface when a service like Plaxo lets you edit them online, too? Why merely view iCal entries online when you can actually edit your Google or Yahoo calendar from any browser? Why use .Mac's painfully slow, frequently buggy online backup service when you can switch to Amazon's S3? Why use the old-school .Mac webmail client when all the major free webmail vendors offer snappy Ajax interfaces? Why host your personal site with iWeb when so many other free or low-cost solutions offer more flexibility and power?

No webapp is perfect, and no single provider offers the breadth of .Mac in a single suite. But cheap or free a la carte services from best-of-breed providers work better for all but the most dedicated (or lazy) Mac users.

Leander Kahney over at Wired stayed up late the night before Apple's presentation to say a prayer that Jobs & Co. would radically overhaul the service. But the best that can be said about the "new" .Mac is that its developers finally seem to be dimly aware that there's this whole Web 2.0 thing happening out there. The future promises some upcoming, though as-yet-undefined, .Mac webmail improvements that could help modernize the service. But the suite's most compelling features are the ones that link one Mac to another, such as Leopard's forthcoming Back to My Mac application. True Apple fanboys may get a lot from such utilities, but they're useless for people in the real world - the ones who log onto Windows boxes at work every day and still want access to the data from their personal MacBook Pros.

My real problem with .Mac isn't that its webapps are sub-par. It's that Apple's overall strategy in the PC marketplace is still so focused on a single, unified desktop experience geared toward the mythical "average user." (Thanks, Walt Mossberg, for making that the most overused phrase in technology writing.) It's such a Microsoftian strategy: continually cramming all the the things a typical customer might need into a suite of pretty-good apps and services whose only real advantage is their supposed integration.

Given that Safari is being positioned as the platform for iPhone software development, it seems likely that core pieces of the OS X desktop experience will eventually get better browser-based simulations. But as a Mac user, I want the data on my machine to play well with third-party webapps, too, in my user-agent of choice. The whole advantage of the web desktop model is that all of my data lives in the cloud and, thanks to public APIs, I can interact with it through a broad range of providers. I can use the out-of-the-box UI or create my own. I can aggregate Remember the Milk into my gCal with a widget instead of waiting for Google to come up with a first-rate to-do list manager. I'm not locked into a single piece of hardware, operating system or software vendor. But locking me into a monolithic suite seems to be the whole point of Apple's desktop strategy, .Mac included.

Right now, all .Mac does is sync data between Macs and allow me to access a subset of that data, in read-only mode, through the browser. That's simply not good enough, and it hasn't been for a couple of years now. Apple should be integrating each of its elegant, easy-to-use but fairly vanilla desktop apps into a web-services architecture. That way, I can use my Mac as an oasis of no-fuss desktop computing at home, but still have the power and the flexibility to do what I need to do from any other machine or physical location.

I get why Apple's user interfaces are geared toward somebody with my grandmother's level of technical proficiency. But why not set up .Mac so that third parties can create more powerful and varied UIs on top of the underlying services? That might actually be worth $100 a year. In the meantime, .Mac and the Macintosh platform are positioned as one-size-fits-all, all-or-nothing propositions. And there's nothing new about that, media event or no.

Cross-platform widgets: fact or fiction?

For such a simple idea, widgets (or "gadgets" or "modules" or - ugh - "badges") are ridiculously complicated. Take three basic web technologies (XHTML, CSS and JavaScript), wrap them in a fourth (XML), and you should have a really simple, powerful way of deploying a platform-independent UI for your remote data. Yet between Yahoo Widgets, OS X Dashboard, Google Gadgets, Vista Sidebar, Netvibes Widgets and the umpteen other flavors out there, broad deployment is time- and cost-prohibitive. Pretty much every major implementation is incompatible with the others. Often, a single vender offers multiple overlapping versions of its platform, such as Google Desktop vs. iGoogle and Windows Live vs. Vista Sidebar. I'm all for healthy competition and the innovation it produces, but couldn't each big player at least release a unified API for all of its properties?

Amid all of this chaos, what's a would-be widget author to do? Probably the same things as widget users: weigh the options and pick a side. True, the WC3 is beavering away on a standards spec, but we all know how long that's going to take. By the time anything gets signed off on, the fad will either have died out or, perhaps worse, have become a long-term part of the web ecosystem. Imagine hundreds of thousands of legacy widgets written in proprietary formats, a huge number of which will never get refactored to meet the standards. And that's assuming the various widget platform vendors even agree to sign on. It's easy to imagine Google jumping on board, but much harder to hope the folks in Redmond will follow suit. Who knows about the other players?

True, tools have sprung up to translate certain types of widgets into certain other types. But these are stopgap solutions with often unpredictable results. Even when the widgets work, they often don't look pretty in their new homes. And nobody yet has come close to a write-once, run-anywhere SDK for widgets. Translation is the best option the marketplace has produced.

That said, I'm keeping an eye on UWA, the new Netvibes "Universal Widget API." This is another translation methodology, but instead of a third-party application that performs a one-way port of an existing widget, it's an actual spec for authoring widgets once and then compiling them to the various platforms. Thus far it mainly supports Netvibes itself, iGoogle and Dashboard. But Vista support is on the roadmap, and Yahoo support has been discussed. Best of all, they're planning to open-source it. If this API ends up being halfway as useful as it promises, perhaps it will offer a good middle path while the official standard takes shape.

[Lest I end on a completely hopeful note, here's a somewhat related digression: I'm also often depressed by the way the aforementioned standard web technologies get used in widgets. To a certain extent, pretty much all of the widget platforms force you to develop kludgy code. iGoogle and other Web-based platforms scale their widgets based on the size of the browser window. Some developers spend the time to come up with intelligent liquid layouts, but the limitations of fixed-height iframe wrappers make design compromises inevitable. A lot of the third-party widget-assembly shops just slap together some fixed-width design based on the worst-case scenario and built the entire interface out of a sliced-up PSD file. Forget font-scaling and other basic accessibility considerations. It's like the 640x480 viewport all over again, but in miniature. The more things change...]

Mash note: Remember the Milk

You've got to love a Web 2.0 startup manned by a dev team of 2 that manages to add every feature on your wish list just before said feature's omission really starts to bug you. That's the case with me and Remember the Milk, a to-do-list webapp developed by an Australian company and supplemented by awesome new features with astonishing regularity.

Although they're a commercial entity, they've got a beta API that's allowed the development of a handful of really cool mash-ups. They've had iCal integration and a gCal plug-in for ages. They got on the Twitter bandwagon really early. They were one of the first non-Google companies to port their application offline with Gears. Last but not least, they've got a powerful (though still not perfect) user interface. (More on that later.)

A little background: I've been an obsessive to-do-lister since high school. GTD is my mantra. During my years at Microsoft-centric companies, I used Outlook to manage my entire life. But these days I find myself on Windows, 'nix and OS X machines in disparate locations for hours or days at a time. A webapp is clearly the only way to go for my to-do needs. But after years as an Outlook power user, I need something that will slice and dice my many lists (work, play, home, shopping, whatever) with exacting precision.

I gave Apple's iCal a shot, but its list functionality was way too primitive. I need multiple lists, categories, tags, flexible sort criteria - you get the picture. Ta-Da Lists from 37signals was even more stripped-down than iCal - plus I found its interface surprisingly clunky for something developed by a well-regarded Ajax shop. I thought about todo.txt, but I'm not enough of a command-line purist to completely abandon the GUI - even after years of suffering through Outlook's hideous hidden menus. Then, about a year ago, I stumbled on Frank Gruber's Do More: Online To Do Lists Compared. I didn't agree with his conclusions, but at least he gave me several more options to explore. Luckily for me, Remember the Milk was the first one I tried.

There's a lot to love about RTM, especially its UI, so just let me gush for a minute.

  • Flexible organization: You can create multiple tabbed lists, apply arbitrary tags to your tasks, and create saved searches based on any criteria.
  • Keyboard navigation: Except for a few advanced functions, such as moving items from one list to another, you can do almost anything from the keyboard. Create tasks, set priorities and due dates, apply tags, edit multiple items ... most functions take only a single keystroke.
  • Natural language entry: You can set due dates and repeat intervals using some pretty flexible natural language. It ain't perfect, but with a little training the syntax becomes second nature.
  • SMS, IM and email reminders: The service can nag you quite effectively via a wide range of communication protocols.
  • Email, gCal, Atom and Twitter integration: You can create tasks or lists of tasks using a special email address; add or edit tasks directly from gCal and Yahoo plug-ins; and use Twitter or Atom as syndication services. The public API means that mash-ups and cross-pollination will only proliferate.
  • Built-in collaboration capabilities: There are a host of features dedicated to assigning, sharing and collaborating on tasks.
  • Serious accessibility: The main app is fast, powerful Ajax all the way, but the mobile version works just as well in a variety of more specialized user-agents.

There are a few things to hate:

  • Poor multi-list view: The main Overview page list all of your tasks that are due, overdue or due tomorrow regardless of which list they're on. But it separates the Today, Tomorrow and Overdue tasks into separate tabs. The gCal plug-in does a much better job of showing all of your most important uncompleted tasks in a single, unified view.
  • Recurring task weirdness: Delete a completed instance of a recurring task, and you've just deleted the master version of that task. After any previously spawned instances are completed, the task will no longer recur. This is a very strange user experience, especially for folks who like to purge their completed tasks every once in a while.
  • Poor sortability: Tasks are sorted by their priority. Period. This shortcoming doesn't account for the fact that a low-priority task that's a week overdue is probably a high-priority task by now.

See the strikethrough text above to see exactly what I meant about the RTM team rolling out your must-have features before the lack thereof becomes too annoying. I've been dying for flexible sortability on RTM since I started using it. But no sooner did I start this post than I noticed an RTM blog post announcing just such a feature. It would be nice if you could set your sort preference globally as well as one list at a time, but that's a minor quibble.

So what can we learn from my ramblings, besides the fact that I really, really love this platform? I think there are a few powerful lessons for developers of any RIA:

  • You don't have to sacrifice brawn for the sake of simplicity: Pleasing power users doesn't mean hopelessly confusing everybody else - at least not with smart UxD. (Apple could stand to learn that lesson, but I digress.)
  • You don't have to sacrifice accessibility in the name of Ajax: Let your mobile app function as your accessible app, too.
  • You don't have to fear Web 2.0 trendiness: Rapid adoption of emerging protocols such as Twitter can only help you differentiate your product and find new users.
  • You don't have to lock your app down, even if you're a commercial enterprise: Public APIs - and the cross-pollination they enable - can only strengthen your foothold in the marketplace. In our Googlized world, this one's kind of a *duh*, but it bears repeating.
  • You don't have to hide from your users: An active blog and well-maintained user forums are far more powerful marketing tools than terse release notes on Google Code.

I can only speculate as to the future of GTD's business model or exit strategy. Their logo carries the ubiquitous "Beta" tag, and their pages carry no ads. Where's the funding? It seems like somebody's waiting to get snapped up by a big player....

Lord knows it would be nice to have the old  Outlook/Palm OS quintet of email, calendar, contacts, notes and to-do lists available on a single web-based platform; personally, I would prefer that platform to be Google, though I can't really see them acquiring a start-up just for this one capability. Still, it would be a shame if a product as solid as Remember the Milk got lost in the shuffle or edged out by inferior offerings from bigger players. Only time will tell....

Bubble 2.0?

The sky is falling! Every publication has to have it's resident curmudgeon. It's a franchise, and PC Magazine's is held down by John Dvorak. Now he's moaning about a dot-com bubble redux involving Web 2.0 based companies.

Each of these bubbles had a distinctive theme. For the dot-com bubble, it was e-commerce—it really should have been called the e-commerce bubble. Everything was focused on how the Internet was going to destroy all existing brick-and-mortar operations. We were told that you'd be buying sandwiches over the Internet and having them delivered the next day by FedEx. Everything was about "eyeballs" and finding ways to attract customers, whether they bought anything or not. Every article in every newspaper in the country parroted the litany as to how you'd be out of business in a year or two if you were not present on the Web in a big way. Of course, this was all crap.

The current bubble, already called Bubble 2.0 to mock the Web 2.0 moniker, is harder to pin down insofar as a primary destructive theme is concerned.

He goes on to scoff at the various concepts that are in vogue in the Web 2.0 space, all of which could come tumbling down in a crash.

  • Neo-social networking
  • Video mania
  • User-generated content
  • Mobile everything
  • Ad-leveraged search
  • Widgets and toolbars

An economic bubble is defined as “trade in high volumes at prices that are considerably at variance from intrinsic values”. Is that really where we are? I don't see all that many "me too" or momentum investments in Web 2.0 companies -- just a $10 million investment here or there by some VC's. Facebook has a large valuation because they actually generate lots of advertising income (shoot, 1% of all online time is spent on Facebook), and online advertising it here to stay.

Most of the Ajax/Web 2.0 activity I see right now is existing companies retooling their online presence to take advantage of some of the new technologies and ideas.

Sorry Dvorak, no bubble here yet.

Technorati Tags: , ,

Topics: ,

Most Popular Ajax/Web 2.0 App?

I conducted an informal survey a while back on which Ajax-based apps people actually used. I got back a good number of responses and the results are in. With the exception of a smattering of applications such as GMail and Yahoo! Mail, far and away the most popular type of Ajax-based app was the RSS Reader. When you think about it, it is an online application designed to perform what is essentially an online activity: reading blogs. Mail, on the other hand, has lots of offline aspects to it (attachments, a history of offline reading, etc.).

I guess this result isn't too surprising, but I'm not sure what it says about the future of Web 2.0, all online apps. Do we all have to be weaned from our dependence on offline apps? Is this a thing "the kids" will be embracing, and not us elders? Or will we have to wait until there is truly robust online/offline functionality in Ajax/Web 2.0 apps, through platforms like Adobe's Apollo and the mysterious (does it even exist as more than an announcement and a slide show) Project Flair from Sun?


Technorati : , ,

The Expert List - An Idea to Improve Online Social Bookmarking

The so-called rule of 150, states that the size of a genuine social network is limited to about 150 members (sometimes called Dunbar's number). The rule arises from cross-cultural studies in sociology and especially anthropology of the maximum size of a village (in modern parlance most reasonably understood as an ecovillage). It is theorized in evolutionary psychology that the number may be some kind of limit of average human ability to recognize members and track emotional facts about all members of a group. However, it may be due to economics and the need to track "free riders", as it may be easier in larger groups to take advantage of the benefits of living in a community without contributing to those benefits. -- Wikipedia entry on Social Network

Peter Szinek has published an excellent article on some of the shortcomings of social bookmarking as it exists today (see Problems of Social Bookmarking Today - Part One). Two of his more compelling points are those of information overload (too many articles, that disappear off the "top" page too quickly), the pumping up of vote counts by cliques, and the lack of differentiation between experts and non-experts when counting their votes. He admits that many of his solutions are impractical, unfortunately, but then again not many of us have answers to these problems. His succinct statement of the problem is worth quite a bit, however. I've blogged about some of these issues in the past as well (see Web 2.0, Communism, Pet Rocks and the Wisdom of Crowds and More from Hinchcliffe on Web 2.0), and some of the issues I've brought up about the Free Rider problem and the spread of bad actors do explain some of the issues at the root of Peter's observations.

The "rule of 150" cited above goes a long way toward explaining why online communities become dysfunctional as they grow (from Usenet to Digg). It simply becomes harder to police all of the free riders. So, what to do? How can we make the rule of 150 work for us?

I think part of the answer lies in one of the observations that Peter makes in his article:

In my opinion, it is not right that if a 12 year old script kiddie votes down an article and an expert with 20 years of experience votes it up, their votes are taken into account with an equal weight. OK, I know there is peer review and if the 12 old will do a lot of stupid moves, he will be modded down - so he will open a new account and begin the whole thing again from scratch. On the other hand, the expert maybe does not have time to hang around on digg and similar sites (because he is hacking up the next big thing instead of browsing) and therefore he might not get a lot of recognition from his peers on the given social site - which does show that he is an infrequent digg/dzone/whatever user, but tells nothing about his tech abilities.
Proposed solution: I think it is too late for this with the existing sites, but I would like to see a community with real tech people, developers, enterpreneurs and hackers of all sorts. How could this be done? Well, people should show what they did so far - their blog, released open source software, mailing list contributions, sites they designed or any other proof that they are also doing something and not just criticizing others (It seems to me that always those people are the most abrasive on-line who do not have a blog, did not hack up somehing relevant or did not prove their abilities in any relevant way). This would ensure also that only one account belongs to one physical person. I know that this may sound too much work to do (both on the site maintainer's and the users' side) but it could lay a foundation for a real tech-focused (or xyz-focused) social site . Of course this would not lock out people without any tangible proof of their skills - however they votes would count less.

What Peter seems to be proposing is a smaller community where the members all know one another, and those that are not known are not given much weight by the voting system. I think Peter is right, for the community at large, this does sound like too much work to do, sort of like a giant public key exchange, where the web of trust evaporates as the network grows.

The other part of the answer lies in asking, "why can't my social network be limited to just 150 people?" If I had 150 people I really, really trusted, then I would have pretty good confidence in the stuff they recommended. The downside is, of course, that 150 people will never discover what a horde of tech nerds on dzone discover. But if I could combine the wisdom of the crowd with the trustworthyness of my small clique of experts, I'd be cooking with gas! The key insight here is that not every article or post should be ranked the same for two different people. We are interested in different things, therefore the things on our "top" page should be different.

One way of achieving these personalized rankings is by using something like collaborative filtering. The basic idea is that you use the votes you have cast (stories dugg or dzoned or whatever) to calculate a distance between every two participants on the social bookmarking system. You calculate a predicted score (how much you will like something) for individual A by averaging all the votes by the other individuals, weighted by how far away they are from individual A -- further away means their vote counts less.

There are lots of algorithms and functors for computing recommendations, but they all share one thing in common: they are horendously expensive to compute, since they are O(nm), where n = number of individuals and m = number of rated items (yes, even if we cluster with something like kmeans first). They all also tend to have problems with sparse datasets, i.e. where most of the items have not been voted on by most of the participants.

Because of these problems and others, I think means of tacit (i.e. the user doesn't have to explicitly do anything) social network building are impractical. Instead, we should consider something that the social networking sites have been doing for a while (see LinkedIn for an example), namely having an explicit list of contacts or "friends," although here they may be more accurately referred to as "experts."

How would this explicit list of experts be leveraged to give you better rankings? You would use these experts to weight votes:

  1. First, everyone in your experts list has their vote count as 1.
  2. Next, everyone who is in your experts' expert list ("a friend of a friend....") has their vote count .5 (unless they already are in your list).
  3. Next, everyone in the next level out has their votes count .25.
  4. Everyone else's votes counts .1.
  5. Add them all together and you get the vote total for a particular item for you (someone else with a different list may have

Now we can tweak this formula to our heart's content (e.g. the decay is linear and goes out to a depth of 5; people who you link to by several paths get extra weight, etc), or even let the end use configure the exact formula by means of a number of parameters, but the principle is sound -- the people you respect and the people they respect in turn are more likely to recommend things that interest you.

Last, limit the number of individuals a user can have in his expert list to 150. If you have more than that, you can't possible know all of them and their "emotional facts."

Now I can see a few objections to this proposal:

  1. The votes are too expensive to calculate - I admit that it is more expensive than just precomputing one-size-fits-all totals, but with some judicious use of precomputing, caching and efficient database design, I think this is doable. After all, not every use will log in at the same time or want to see every item back to the beginning of time. And, as long as we are not searching or sorting historical results by rankings, we should be fine.
  2. Where is the sense of community if we all see different things? - what is the value of that community if we don't feel we are a part of it? I've long since stopped using digg, because I'm not interested in "what's hot." The value of social bookmarking is in aiding people in finding content they are interested in, not in making us all look at the same stuff.
  3. What about the "Digg Effect?" Won't this diminish the power of the social bookmarking sites that adopt it? - will fewer people try to game the system if the audience is ultimately smaller? Yes. Probably. Fewer people will try to use the bookmarking sites as a way to lob their press releases into the net. But I think more people will find these sites useful. Frankly, I see the whole "Digg Effect" as a symptom of the free rider principle in action.

Consider this a modest proposal. For one, I would like to see dzone, the most progressive and tech-focused of the social bookmarking sites, experiment with this.


Technorati : , , , ,

Topics:

About Pathfinder

  • We design and build extraordinary applications for companies looking to make the next great idea a reality.
  • learn more

Topics