Social networking and massive amateur integration
For quite a while now we've been working on activity-based Computing. This is about organizing work in terms of the activities that people do, rather than the tools they use. If the focus is on the work instead of the tools, it is possible to make semi-structured work patterns more productive than they currently are. Today we try our best to use team rooms, but we're not always disciplined enough to post everything there. Or, at the other extreme, we all have a lot of stuff scattered throughout our e-mail, on the file system, etc. with no organization at all. Sure, you can use search tools to find it, but it really shouldn't be the case that people have to work so hard at finding and organizing information.
If we expand the discussion beyond "things", it gets even worse when you consider work that involves a formal process or a very structured application. In a lot of transaction systems, the transaction is sometimes just a small part of the work. There might be a signficant amount of preparation that takes place beforehand, involving very loose steps. Think about the last time your department ordered hardware: somebody probably went around collecting up everyone's requirements, maybe in a spreadsheet or on paper, or maybe they wrote a quick-and-dirty application of some kind. Only after this was consolidated did the real ordering take place.
An activity is the collection of materials, communications, and processes that emerge when people work together. Examples might be driving a sales process to close, preparing for an important meeting, or writing a report for a client. At Lotusphere 2006, we show a lot about the Activity Dashboard we're working on, plus many new research projects that have spawned from the main product development work.
Basically what you can do with the Activities Dashboard is post links to things that you're working with. You don't actually need to visit the dashboard to do this, because the service integrates easily with a wide range of applications and tools. For example, while you're in your browser, you can click a bookmarklet to post the page you're currently looking at, into the Activity server. It's a similar story from your Notes client or Word, or other places.
This works because we use very lightweight integration methods. Data flows in and out over standard protocols/markups, with the most important ones being Atom and the Atom Publishing Protocol. Basically this means that you can post anything that has a URL associated with it -- which means just about anything these days. You can extend it to work with your tools, not just the ones we thought of.
I use Activites for work like writing papers, studying emerging technologies, and just plain-old document sharing. It's a nice simple way to share things, and it works beautifully in small groups. We have some activities that involve very large groups as well. Where is this is really going is more ambitious than my simple use cases though. We can take activities and distill patterns out of them, so that pattern is repeatable. A good example might be the steps that you go through when you hire a new employee. These steps are structured, but not necessarily rigidly structured. You need to talk to people, make sure you have funding, interview candidates, process HR paperwork, get equipment, etc. But some of the steps can be done out of order, and the exact details might change from time to time. They are familar enough that you don't need a fancy application to do it, but infrequent enough that you might not remember every step. An activity template is perfect for a situation like that.
Next: real-time business.[Read More]
Continuing from my last post, I want to describe more about communities and what they need to do.
What kind of work happens in communities? One obvious thing is that the members share stuff. For example, keeping bookmarks in a shared location helps others reuse research work. Keeping hints and tips in a common place enables support personnel resolve issues. What is different in the Web 2.0 world is that shared content systems aren't about locking and version control and management of the asset, but rather, they are about really sharing it and organizing it in new ways.
Think about systems for sharing bookmarks, with del.icio.us being the best known, or IBM's research project called Dogear. In these systems, users save their bookmarks on the web, rather than using the browser's built-in bookmark folders. When you save a bookmark, you get a chance to "tag" it, meaning that you type in a few keywords to say what the bookmark is about. These keywords can be anything that is meaningful to you -- any words that will help you find it again.
At first, I used Dogear just for myself, as a way to organize a large number of bookmarks and find them again. But what really got me hooked was seeing other people's bookmarks. Wow! I discovered all kinds of new information that I probably would not have found on my own. This is the “wisdom of crowds” in action, and it is a good example of the give-to-get principle that is the hallmark of effective social software.
However social bookmarking on public sites raises an important privacy issue for companies. Employees need to be able to tag and share links behind the firewall, without risk of publicly revealing trends or topics being investigated. For business use, it's also important for users to be accurately identified, because you want to contact people and build more lasting work connections with them.
It turn out that when enough people do this -- save bookmarks and tag them -- you wind up with a really interesting set of data. If you want to identify experts on topics, just follow the tag cloud, and you've got a pretty good clue as to who the experts are. You can watch trends develop by looking at which tags are most popular. You can even watch communities form by looking at clusters of people related to a tag, or people who follow each other's bookmarks.
In general tagging is about collaborative efforts to organize all kinds of information, not just bookmarks. Users are encouraged to assign freely chosen keywords (“tags”), and the tags are displayed as a “cloud”, where more popular tags are drawn in larger text. This method of organization is most effective when the information is changing rapidly. I've written about this topic here, and contrasted it to formal taxonomy.
Next up: activity-based computing.[Read More]
People frequently ask me about IBM's strategy for "Web 2.0". (Yes, I know it is odd to combine the words "strategy" and "Web 2.0" in the same sentence.) Over the next few posts, I'll explain my views about this question.
First off, to state what is already completely obvious to everyone, we're not a trendy bunch, So we aren't going to start writing in pink type and spelling words with dots between the syllables. You won't ever confuse us with Jotspot or Flickr or del.icio.us -- all companies whose work I have great respect for. It's just that what we do is much different.
What we are about, and have always been about, is innovation, and how innovation helps businesses succeed. So getting back to Web 2.0, we're primarily interested in how we can help you apply the technologies of Web 2.0 to your business in a meaningful way.In my mind, a very important trend happening in software today is the trend toward "social" software, where the effect of users has a lot to do with how the software works. This social flavor is much broader than "social networking" that we hear about so often. It is a trend that you can capitalize on, to unlock innovation in your company.Social software about the amplifying the power of people working together, beyond ordinary collaboration tools. Web 2.0 is largely based on the principle that there can be great “wisdom of crowds”, and that cleverly designed software can help capture and convey that wisdom. It means that valuable data is being contributed by users, rather than by a central authority. In successful systems, users have a strong incentive to contribute because they get a good payback for their efforts. That's in strong contrast to strongly centralized systems, where the burden of participation outweighs any benefit, and users learn to bypass the system or ignore it. This is a problem with many content management systems, for example.There are many enabling technologies for capturing the wisdom of crowds; things like communities, tagging, social bookmarks, feedback, subscriptions, and cross-linking etc. are all part of the picture.Communities are any groups of people with a common interest or work objective. We want to create tools for finding, joining and watching communities, so we can see what is new, popular, active, interesting, and relevant. Communities are meant to be organic, fluid and self-guided; thus the concept is very different from groups in your LDAP directory, and different from relatively static groups like mailing lists. People should be able to join, see who's who, understand what kind of activity takes place there, and leave if they want to. People should be able to invite each other, so there's no adminstrative burden on one individual. Leaders can come and go, and they don't necessarily have any formal responsibility for the community. The system should figure out when a community has become inactive, so they can be cleaned up as appropriate.More on communities later...[Read More]