Managing a Community

a chapter in the Administrator's Guide to the ArsDigita Community System

Introduction

In this section I want to show off the capacity of the user-tracking portion of the toolkit to improve the user-experience and enhance the effectiveness of the administrator in a variety of real-world examples. This is the first of four sections in which I will present the four categories of modules in the toolkit, and show how they work in a variety of real sites. The four categories, which I introduced in the first chapter, are: I want to discuss this last category first because it is the most important to administering a site built using the toolkit. In addition, because of the special importance of this category in the toolkit, I have two extra goals in this chapter:

First, in the introduction I suggested that many sites with widely varying purposes -- for example, on-line publishing, ecommerce, and intranets -- nonetheless require a common core of functionality in the code that supports their operations. The reader may well find this suggestion hard to imagine. Therefore a main purpose of this chapter is to present a number of specific examples of sites built with the toolkit whose common features and underlying philosophy support this claim.

Second, in the introduction I also suggested a novel philosophy of administration: an administrator should think of his role as the leader of a community and not merely as editor of individual interactions. Since understanding this philosophy is key to being able to successfully administer a site as it grows, and this role is made possible by the capabilities described in this section, I want to take this opportunity to explain in detail how this strategy is applied in specific examples.

The Toolkit's Birthplace: photo.net

In the first portion of this chapter, I want to show how the user tracking functions were designed in the birthplace of the toolkit: the photography site photo.net. Philip Greenspun has been operating this site for over five years to display his photographs and writings. Using his programming expertise he has built it into an active community of photographers and other fans.

Community Member Histories

One of the features of photo.net of which Philip is the most proud (justifiably) is the community member history pages. On this page every contribution by a particular user is displayed in one place. From this page one can learn the interests, habits and personality of another user. At the right, we see (an abridged view) of the community member history for the community's oldest member. If you wish, you can also view the complete version. An administrator can see another version of this page that offers even more information about the user: contact information, demographics, a record of all the searches initiated by the user, the mailing lists the user has signed up for, and a record of all the static pages the user has viewed while registered on the site.

The capability to display these histories is impressive because it draws on the functions of all the other modules: it would not be possible except in a fully-integrated toolkit like this one. The aim of building these community member reports was one of the main goals of the toolkit from the very beginning. For example, Philip asserts in his description of the benefits of the bulletin board module that the bulletin board's most important benefit is the data it collects for display on the community member history pages. From the description of the motivations behind the design of the community system given in his book, it is clear that Philip considers the user-tracking capabilities the payoff for the effort of building an integrated toolkit. Why are these capabilities so important to him?

One reason is that the community member history pages make it possible for the assortment of unacquainted people who visit a site to get to know each other. Users can look each other up in the directory (shown above) and see each other's full interaction summary. In addition, as Philip describes in his description of the classified service, community members can use the member history pages to figure out which users they can trust. Trust is essential if community members are going to buy and sell from each other, or work together, or do anything else for which they need to feel they can rely on each other.

However, the main reason Philip thought it was so important to gather comprehensive data about users, is not the capabilities it offers ordinary users, but the power it gives to administrators. As photo.net grew from 33 registered users in August 1995 to over 33,000 in August 1999, Philip found that eventually the moderation burden got out of hand. Visit http://photo.net/shared/new-stuff.tcl to view all the new stuff that has been submitted to photo.net in the last week: this is the amount of material that an administrator has to read through each week. When I checked it was more than twenty pages long, and it doesn't include the new messages in the bulletin board forums -- for instance, the 1323 new messages in the photo.net Q&A forum. As Philip said in his description of the Big Problem in site administration, "Site growth can outstrip the capacity of any person, no matter how dedicated or efficient." He was talking from personal experience. Faced with a task of this magnitude, Philip realized he needed a new strategy to handle the moderation of photo.net. The community tracking functions are the key to the new strategy he devised: this is why he considers them so important. They are useful in two ways:

First, user contributions that demand attention from the administrators tend not to appear randomly: particular users cause most of the trouble. The community member histories help the administrator identify those users and allow him to nip the problem in the bud.

Second, the summaries of the user's activities help identify the most active contributors, who may well be willing to turn their energies into aiding with the moderation task. It is a mistake for the administrator to assume that he is the only one who cares about about keeping the site in good shape: many of the most involved community members care as much or more than he does, and will be quite willing to help maintain the site if given the power to do so.

The moral of this story is: it is much more efficient for an administrator to focus on managing of the community by promoting the most energetic members and banning the most destructive ones, than to try to manage each of the interactions of the community individually. The community member history page is the tool that allows the administrator to learn about his community so he can effectively implement this strategy.

Philip has also built into photo.net a system that takes this principal one step further: the Member Value Module. Here is the description he gives of the purpose of this module from the chapter of his book discussing the design of the community system:

Member Value

Commercial publishers and service operators are interested in how much customers are worth to them because they expect to get money from them. However, non-commercial and intranet communities also need to know which members are valuable and which are imposing a burden on the community.

Even if you're a classically greedy commercial publisher, pricing user activity on the Web presents some paradoxes. Traditionally people are willing to pay to run classified ads in magazines. So obviously you should charge people for every classified ad posted. But once you've installed the ArsDigita Community System, the marginal cost of letting a user post a classified is $0. If people come to your site to look at this classified ad and also view banner ads, then actually you should be willing to pay the reader for posting a classified ad! That seems logical until you think about the fact that every classified ad user presents a statistical chance that you will need to invest customer support resources in (1) deleting a duplicate ad, (2) editing an ad, (3) assisting the user if he can't figure out what you thought were self-explanatory forms, and (4) dealing with bounced email to that user, etc. I explicitly designed the ACS classifieds to have a zero support cost but in practice operating the photo.net classifieds seems to have chewed up about 30 minutes of my time for every 1000 ads posted.

In the off-line world, it is tough to set "pain-based prices". The publisher is expected to charge all the users equally and spread customer support costs among them. In the online world, there is no technological reason not to charge people for the costs that they impose, though it may seem confusing to customers. For example, if I place a classified ad in a newspaper and then call to cancel it, I wouldn't expect to be charged. Yet in the online world, a user who places an ad and then telephones your customer service number has cost you 100 times as much as a user who merely places an ad. It makes sense to charge people according to how much customer service time they've burned up and you might even be able to explain that to them.

In the off-line world, recognizable contributions from customers come almost exclusively in the form of money. If Jane Smith recommends her Ann Taylor jacket to a friend, neither the Ann Taylor manufacturer nor retailer is likely to ever find out. In the online world, a customer can contribute to an online community by posting an interesting question in a discussion forum, answering someone else's question, buying something from a merchant that gives the community a kickback, writing a static article, or filling out a form recommending the community to a friend (who will then receive an e-mail invitation to join).

With a public community site you might decide to charge users for viewing certain pieces of content, even though the marginal cost of them doing so is nearly zero. You could make this decision to charge simply because you're greedy or because you're trying to defray the high average cost of producing content. The ArsDigita Community System lets you attach prices to individual pages. Note that these prices can be negative--you can pay users to read pages that are important to you or the community.

This is the principle. How does it work in practice? In photo.net, whenever an administrator needs to delete or edit a posting, or is required to do any work because of a users action, he is given an option to assign a charge to the user. For example, the image of the form shown at right is taken from the bottom of the page on which an administrator can edit a classified ad. The select box shown in the image is reproduced below.


Notice that the administrator does not actually assign a monetary charge to the user; he simply enters the severity of the sin. The publisher can decide for the whole site how much each category of mistake is worth. Photo.net does not actually bill the users who have sinned, but nonetheless the charge records are useful to the administrators to identify difficult users. If a user is particularly incorrigible, he can be banned from the site. In the case studies chapter in his book, Philip describes his first experience banning a user:

Microsoft Helps Defend Against Bozos

One of my motivations for building the fancy software described in the community chapter was the difficult of moderating the Q&A forum for photo.net. With about 10,000 participants, deleting duplicate postings and uninteresting threads was time-consuming but bearable. One day in 1997, Martin Tai showed up. He contributed some useful information about black and white film development and the Minox spy cameras. He also added some eyebrow-raising statements such as that a print from a Minox was as good as that from a 4x5 inch view camera in 8x10 inch enlargements. Since a Minox negative is less than one tenth the area of a standard 35mm negative, which is in turn laughably poor quality compared to what you get out of a view camera, this generated some skepticism. Martin pointed to some Web sites displaying Minox photos that allegedly proved his point, but to my eyes you could clearly see the failure in lens and film resolution right on screen.

Personally I didn't mind having Martin as a community member despite his eccentric belief in the quality of the Minox's 8x11mm negatives. However, he'd apparently previously annoyed folks in rec.photo.* (USENET) exchanges and even the slightest error on Martin's part provoked a volley of vitriolic responses from other photo.net readers. Every day I'd have to go in and clear out 50 postings plus respond to private e-mail complaints.

My forums at the time were backed by the Illustra relational database management system, the child of some self-professed computer science geniuses at UC Berkeley. They spent a lot of time writing papers for academic journals about how stupid the engineers at Oracle were. Indeed, Illustra did quite a few things that Oracle could not. For one user at a time. If you wanted to update an Illustra row, you had to wait for all the readers to stop reading. If you wanted to read from an Illustra row, you had to wait for all the writers to stop writing. The bottom line was that, as soon as you had more than one person using Illustra, the system tended to deadlock. Under the best of circumstances, users posting to the forum would get a page saying

please wait while we try to insert your message .....
message inserted.  
Under heavy usage, the users would see
please wait while we try to insert your message .. 

*** 60 second pause *** ... 

deadlock, transaction aborted.  

Please hit Reload in five or ten minutes.

I felt humiliated by the situation but for a variety of annoying reasons, it was taking me months to move my services to Oracle. Then it hit me: Sometimes a system that is 95 percent reliable is better than a system that is 100 percent reliable. If Martin was accustomed to seeing the system fail 5 percent of the time, he wouldn't be suspicious if it started failing all of the time. So I reprogrammed my application to look for the presence of "Martin Tai" in the name or message body fields of a posting. Then Martin, or anyone wanting to flame him, would get a program that did

ns_write "please wait while we try to insert your message ..."
ns_sleep 60
ns_write "... deadlock, transaction aborted. 
 Please hit Reload in five or ten minutes."  

The result? Martin got frustrated and went away. Since I'd never served him a "you've been shut out of this community" message, he didn't get angry with me. Presumably inured by Microsoft to a world in which computers seldom work as advertised, he just assumed that photo.net traffic had grown enough to completely tip Illustra over into continuous deadlock.

I've used this trick a few more times in the photo.net forums with users who wouldn't take gentle suggestions from the moderators. Even though I've subsequently converted to Oracle, so that message insertion is 100 percent reliable and takes one-tenth of a second, no user has ever suspected foul play when presented with a "database error" page.

The general rule to be extracted here is to take advantage of the world that Microsoft has created. Don't tell users that you hate them. Just program your server so that it can pretend to be broken.

The community system does not require that you use this trick on banned users: you can choose whether a user is shown an error or told explicitly that he has been shut out. The ArsDigita web infrastructure has gotten so reliable that I am not sure the user will be fooled by this trick anymore. However, if you forego this trick and tell a user explicitly that he is banned, the danger is that he may return to register again under a different user name. The community system has a defense against this kind of persistent troublemaker: the administrator can view the IP address from which a user has registered, and request a report of all the users who have registered from that IP address. In this way, sneaky double identities can be unmasked. (The report shown at right reveals that David Difficult is a construction of the author's imagination.)

So we have come to the end of our review of the strategies the photo.net administrator can use to handle difficult users. To summarize, the administrator can assign users charges using the member value module and, if they become too burdensome, ban them from the site entirely. In addition, particularly helpful users can be promoted to co-administrator using the User Groups module. This allows the administrator to protect himself from difficult users and benefit from the enthusiasm of the most active users. In the next example we will see a variation of these same strategies applied in a quite different context: ecommerce.

The Relationship Between Community and Ecommerce

Having read thus far, you may be asking yourself, "Well, this community stuff is all very well if you are an artist dying for attention, but I am a practical businessman and I want to make money. Where's the profit in all this?" To answer this question, we turn now to discuss ecommerce. I want to show how the same principles and strategies that can simplify the administration of an on-line publishing site can also ease the burdens of managing an ecommerce site. At first glance, this may seem like a strange idea, because an ecommerce site has to face different challenges: few ecommerce administrators have to contend with 1,323 submissions to review and edit each week. But the administrator of an ecommerce site has to face his own brand of challenges: customers service disputes, return handling, and the ever-present need to maintain a decent profit margin while still pleasing the customers. In facing these challenges, the philosophy of community-centered management may benefit an ecommerce administrator as much as it helps an on-line publisher. In his statement of Arsdigita's ecommerce strategy Philip discusses the role of community in ecommerce:

Since 1995, we have built and operated six sites that accept credit card orders from consumers. We are now operating ecommerce services with our standard ArsDigita Community System toolkit because it turns out that there is almost always a substantial need for collaboration between customer service staff and customers, e.g., to provide technical support. We've always done the obvious things like relationship management and customer value management, but since 1998 we've extended our software with an eye toward achieving "mass customization, 1:1 marketing, disintermediation, and whole product management" (requirements from one of our customers).

I pointed out in the first chapter that the ecommerce buzzwords like "lifetime customer value management" are the same as the concept of Member Value that Philip developed for photo.net. Now it is time to show off these ideas in action. First, let us look at the result of ArsDigita's efforts in "mass customization, 1:1 marketing, disintermediation, and whole product management":

Spotlight: Personalized Ecommerce -- Dockers' Internet Khakis

The Site: Arsdigita built a site for Levis that allowed users to order khakis custom-built to their measurements. Here is the description the site itself gives of the capabilities it offers:

Your Choices:
You need to get exactly what you want in an effortless way, and so we've given you the choices you care about: pleats, cuffs, fabric and color. We take care of everything else, so whatever combination you choose adds up to a classic pair of khakis.

Your Size:
You need to know that these pants are going to fit, and that's why DockersŪ Internet Khakis lets you choose waist and length sizes to the 1/2". We also use your individual measurements, weight, height and shoe size, to choose a pattern that is the best match to your dimensions.

Your Data:
When it's time for your next pair, we base the fit on an existing pair. If you want a pair that's a bit looser, or longer, it's no problem. In fact, we remember every pair of DockersŪ Internet Khakis that you order so you can duplicate or adjust them.

I ordered a pair of pants from this site and it quickly became my favorite pair. My friends noticed the label in the pocket specifying the unique identification number of the pants and they were amazed and jealous. They thought it was a great idea and wanted to know when they could get one too.

One of the managers at Levi's who ran this project made a comment that made a deep impression on me. He was talking about the difficulties of designing a factory that was capable of taking custom orders and delivering finished pants within a period of time the customer was reasonably willing to wait.
Throughout the process, he said, he had to fight against the entrenched mindset of people trained in factory-design. Their mindset demanded that every process in the factory must be done as efficiently and cheaply as possible to achieve the maximal productivity from the factory. Therefore they rebelled against the idea of cutting each pair of pants to a new pattern. "Look," he told the design people, "if you make a pair of pants in the most efficient manner possible, and then it goes and sits in warehouse for two months, then sits on a store shelf for three months, then goes down to the bargain basement for two weeks, then gets returned to the warehouse to sit for another few months, and finally ends up in discount store to be sold for a fraction of its value, you have NOT increased the productivity of this factory." His point was, even though the factory is somewhat less efficient when it sews custom-cut pants, it is in fact much more productive because it has a nearly total guarantee that every pair of pants it made would be sold immediately. In fact, the factory gets the money for the pants from the customer even before they begin to cut the fabric. This comment is noteworthy because it seems to me to herald the real productivity revolution that the Internet will make possible.

This kind of product personalization would not be possible without an ecommerce system built around a powerful users model. My friends were terribly impressed by the tag in the pocket of my pants, but a pair of pants with a serial number in the pocket is not in itself so impressive. What they were really impressed by, I think, was the idea that there was a computer somewhere that knew what kind of pants I wore, so that next time I wanted new pants I could simply ask for "another one like that but a bit shorter." Its funny, because in general people seem terribly threatened by the idea that computers will know stuff about them; but in this case everyone I met seemed to think it was wonderful. I suppose when people think of mysterious computers out there that know about them, they think of the IRS or the FBI, neither of which carry very pleasant associations. It is a new idea to people that computers can also use their data to do "mommy tasks" like "my pants are uncomfy: get me a better pair." When consumers realize that computers can hold "mommy wisdom" that will make their lives more pleasant, their attitude toward these distant computers may change drastically.

I cannot show off the administrative features of this site itself because the data in it is proprietary. However, whenever ArsDigita's programmers do an interesting project for a customer, they take the best features developed for the commercial site and add them to the toolkit as a new module. In this case, most of the features built for the Dockers site have found their way into the ecommerce module in the toolkit. The module will be used to support the site of BostonShopSimple.com, a Boston-based ecommerce site, and future ArsDigita ecommerce projects. I will show off the administrative features built into this ecommerce module, and from this example we can get an idea of what the administration of a ecommerce site built by ArsDigita is like:

Spotlight: Individual Customer Service -- Eve's Ecommerce Module

The Site: Eve Andersson (seen in the portrait above) is ArsDigita's ecommerce project leader. She worked hard to bring the Dockers site to light and was responsible for the creation of the ecommerce module. The images seen below are taken from the administrative pages of her development server. The data is entirely fake, but the administrative pages of any commercial ecommerce service is likely to look fairly similar.

Compare this image of a a customer service summary page from the ecommerce module (at right) with the administrator's version of the community member history page from photo.net. Though the information on the page is different, the basic form of the page is the same. This similarity is no accident: we can think of a seller and a buyer as members of a community trying to accomplish something together. Just as a member of a photography community might like to see all the contributions made by another member of the community listed together, a customer service representative will want to see all the actions of a customer summarized on one page.

However, to use this data only to benefit the customer service agent shows a lack of imagination about the true potential of an ecommerce web site. Think about what the ecommerce buzzwords like "1:1 marketing" and "disintermediation" really mean. "1:1 marketing" means that an merchant doesn't have to guess anymore who his customers are. No more of this "18 to 24 demographic" stuff: he knows his customers by name. What's more, he knows their whole history of purchases and interactions. "Disintermediation" means that the middleman is removed. Even if the merchant is a huge factory a few thousand miles away from the customer, for the potential buyer he fills the role of the little shop around the corner. This means the merchant inherits the relationship the customer had with the corner shop. In the little shop, the shopkeeper slipped candy to the kids of his regular customers: the customer may well fell dissatisfied and alienated if he cannot build similar relationships to replace the ones he has lost.

In addition, ecommerce sites have the same kind of problems handling the administrative burden as they grow that publishing sites have. Why? Administrators don't have 1,323 submissions to edit each week. But they have their own problems. In the chapter So You Want to Join the World's Grubbiest Club: Internet Entrepreneurs of his book, Philip discusses the difficulties:

Internet commerce is the most obvious method of making money from a popular site, but it may not be the best. Internet commerce appeals deceptively to a particularly male fantasy. Guys like the idea that after a short initial period of programming, a computer will tirelessly slave away for them, making them money 24 hours a day. Set up the site, walk away, and watch the money pile up in your bank account.

You can feed this fantasy by reading articles in the business press about http://amazon.com, the perennial poster children for Internet commerce. They set up what is essentially a front-end to a wholesale book distributor's database, and now they are selling books every few seconds. It sounds like they are rolling in money.

Well, it turns out that I know some people who work at amazon.com. The customers don't always fill out the forms exactly right. The books aren't always in stock like they should be. The customers send e-mail asking when their books are going to be shipped. So instead of one Unix box and a big vault for the cash, the company has hundreds of employees sucking all the money out of it (they lost $34 million on $307 million in sales during the 12 months ending in June 1998, according to quote.yahoo.com). And remember, this is the best that anyone has really done: high expenses and high sales. More typical is an Internet store with high expenses and low or no sales.

So the Big Problem of the runaway administration burden that Philip faced as photo.net grew will strike down ecommerce sites as well. Ecommerce sites may well want to try a similar solution: after all, they have detailed data on the behavior of their customers, so why not use it? In ecommerce sites, as in publishing sites, there is an idea of valuable customers and expensive ones. The valuable customers fill out forms accurately and completely, tolerate understandable delays, return items only when there is a real problem, and come back often. The expensive customers complain unreasonably, fill out forms badly, damage items before returning them, and generally make themselves more trouble than they are worth. For example, the (fictional) customer shown here seems to be causing problems. At the right we see the top portion of his interaction history. Above we see that his credit card has been rejected once and only grudgingly accepted the second time (authorized_minus_avs means that his credit card number matched but his address didn't -- avs stands for Address Verification Service). I think he may soon qualify for the David Difficult category. The administrator can save himself a good deal of trouble and expense by cultivating the good customers and protecting himself from the expensive ones. After all, this idea is not new: the corner shopkeeper has an idea of his good customers and his not-so-good ones, and he treats them differently. When the web merchant tries to "disintermediate" and take over the role of the corner shopkeeper, he might as well stop to take a lesson from his real-world counterpart.

But how is an ecommerce site going to handle David Difficult? It is unlikely to want to ban him entirely, as Philip might do in photo.net. Difficult as he may be, he is still a paying customer. Similarly, what can it do to reward Rachael Supergreat? In photo.net, a similarly valuable community member might be offered a job as a co-administrator, but that kind of offer is unlikely to interest even a very loyal customer. Enthusiastic people volunteer to edit magazines, but they don't volunteer to mind stores. An ecommerce site needs another method. However, an ecommerce site has an advantage over photo.net: even though photo.net keeps track of member value in dollars, it would have difficultly actually charging people because it has no infrastructure in place to collect money. A ecommerce site does have this infrastructure, and what's more, they don't even have to charge people explicitly: they can just adjust the prices a customer sees for the services they are already looking to buy. If the administrator doesn't want to touch the prices, they can adjust other aspects of the offer, like the shipping time, as Philip suggests in his example prescription for the business rules of a lifetime customer value management system. So Rachel Supergreat can be encouraged to return with sweet deals, while David Difficult can be gently discouraged with high prices or long waits. In the next section I will show the features that an administrator can use to implement this strategy.

Spotlight: User Classes -- Eve's Ecommerce Module

If you are running a ecommerce site, you may want to keep track of categories of customers. One obvious reason is that you may wish to offer different customers different prices! Without this feature in an ecommerce system, many businesses could not afford to sell their products on the web at all. You may also want to use this feature to reward your best customers and discourage the most expensive ones. Here we see a very silly example of this feature in action (remember this is a development server: this is not real data). When I first come to the site I am offered a chance to buy Philip's book for the low, low price of $39.95. Later I beg Eve to allow me into the prestigious and selective "Nerds" group.

After much begging, she grants my request. When I return to the page listing the price of Philip's book, I see that "Nerds" are offered a special discount price. If I did not know the group existed, I would never have known of the special price. (This whole scenario is fake, by the way, though if you go to Philip's seminars, he may give you a copy of his book at Nerd prices.)

User classes can be used in many ways. It is easy to email to all the customers in a class, and one can use this feature to issue the customers coupons or notify them of special offers. Different classes of users may also see different versions of the product reviews. In this way, it is easy to selectively encourage groups of customers, or show them offers targeted to their interests or known buying patterns.

In this way, an ecommerce administrator can set up a system whose effect is very similar to the system of "pain based prices" that Philip proposed earlier for a publishing site. Users of an ecommerce site who have caused a pain to the company can be assigned to a class which sees higher prices, while the customers making the most money for the company can be entered into a class which receives special coupons and notices of the best deals. This basic strategy of administration is very similar to the one I presented for photo.net: only the details of implementation have been appropriately adapted to this new situation..

A Community Working Together

We have discussed how the philosophy of administering a community applies in the context of publishing and ecommerce sites. Now we turn to examine how it applies to sites built to help people work together. In one sense, the requirements of such a site are less demanding than that of a publishing or ecommerce site, because it usually has fewer users and some guarantees that they will behave at least minimally decently. In another sense, its requirements can be much more exacting. The site has to allow each user to maintain his individual contributions and integrate them into the larger effort. Because the work people are contributing is probably quite valuable, the site administrator has to worry about protecting the data. Even if none of the users are actively malicious, some may be careless, and even innocent carelessness can have unfortunate consequences. Therefore, the site administrator has to concern himself with protecting the site from less experienced users while allowing access to anyone who can be truly useful. In the next few examples, we will show how the user management modules of the ArsDigita Community System help a site administrator achieve these goals.

First, just as in a public community, in a company site members will wish to see a summary of the contributions of other members so they can get to know their co-workers. Here we see this feature displayed in a site built for internal use by Siemens corporation:

Spotlight: User Directory -- Sharenet


The Site: Arsdigita built a knowledge management system called Sharenet for Siemens corporation to help their sales people better collaborate with each other and their customers. Here is how the Sharenet site describes its purpose:

The ShareNet Vision*

ICN ShareNet is a global knowledge sharing network.

We leverage our local innovations globally.

We are a community committed to increase value for our customers and ICN by creating and re-applying leading-edge solutions.

ShareNet Mission / Long-Term Goals

The Sharenet site provides a user directory that allows users to search or browse to quickly find another user of the system. The directory leads to a Community Member page for each user, like the one shown above for photo.net. However in this case it lists all the knowledge management sales/service activities of the user in question. In this way a salesperson at Siemens can easily keep track of the activities of the other salespeople, facilitating collaboration and group coordination. That much less time will have to be wasted in long Dilbert-esque meetings!

Compare this page to the user directory shown for photo.net (the image with the owl at right). These pages are very similar, showing their common origin in the ArsDigita toolkit. However, the necessary adjustments have been made to integrate each page with their respective websites. The adjustments are very easy: almost all of them can be made just by changing the entries in the main configuration file for the system.

As an aside, the images on these pages are worth commenting upon: the community system toolkit supports graphic decoration to spice up dull text-only pages. The design of the system ensures that the graphics will not impeding navigation or the speed of page loading. As you can see from these examples, the placement of the images is quite flexible, so the toolkit can support a variety of different looks. Even though these two pages have almost identical text, they convey quite a different impression. I have to admit that Sharenet graphics better communicates the purpose of the page in its corporate graphics design kind of way, but I love that owl.

The perceptive reader may have noticed the text on the images above that refers to the users workspace. (The page directs readers who wish to edit their own listing to visit their personal workspace.) The workspace is an important part of any site whose purpose is to allow people to work together, for it is the place from which a user can manage his own personal data and contributions. It would be roughly analogous to a person's personal desktop on a computer that allowed multiple logins. In one sense it is more limited than a workstation's desktop, because it only supports a few types of activities, but in another sense it is more powerful, because it allows more people to work together in more flexible ways on those activities. In the next example we will show how the users workspace can be used and customized in a web project.

Spotlight: Personal Workspace Customization -- Photo Database

The Site: Philip taught a web design course at MIT in which students built their own projects on top of the Arsdigita Community System. In ten weeks, students completed an array of impressive projects, one of which was a photograph management service. This is a project Philip had wanted completed for a long time, because he hoped to get the community of photographers he had gathered in photo.net to start sharing their work and collaborating. Here is the description this site gives for itself:

The Photography Management Service allows photographers to organize and share their photos.

Photos are jpgs, gifs, and Kodak PhotoCD files (.pcd) uploaded through your browser. The Management service lets the photographer save information (e.g. caption, camera and film type, date) about each photo as it is uploaded. The system creates thumbnails that can be accessed on the WWW that link back to this information.

Photographers can share their photos in two ways. First, individual photos can be made available to the public for browsing or searching. Second, the photographer can create a presentation. A presentations exhibits a selected group of photos about a topic for a specific audience.

Photographers organize and manage their portfolio of photos and presentations. In their portfolio, photographers can store additional information about each photograph with custom data fields.

The functions described above can be accessed from a user's personal workspace. In a general community system, the personal workspace allows each user to view or update their contact information, change their password, or edit their email alerts. Custom applications can add entries to a user's workspace, to allow for application-specific capabilities. Compare the image at right with the image of my workspace from photo.net. In a publishing site like photo.net, the workspace also has links to the main sections of the site, to a page that lists all the new content that has been entered recently on the site, and to any special administrative roles the user has been granted. A site that allows users to enter private information, like this photo database, will include links to the user's personal data. In this case, I get a handy new link in my workspace which allows me to check out the state of my personal photography portfolio. In the next two case studies we will see two more examples of the user workspace in action.

Community and Intranets

The photo database is an example of a system that allows users to manage their personal projects. Now we turn to examine a system that allows a community to manage a shared project -- the work of a company. Philip considers the development of community tools for internal business use one of the major frontiers of development for Arsdigita in the future:

Collaboration among employees
A general solution to the Web-based collaboration problem would completely change the kinds of businesses that are manageable (see http://photo.net/wtr/thebook/future.html ). We're working toward that goal with a focus on building great systems for coordination of IT operations and knowledge management (this draws on our experience since 1993 building online communities for education). We apply and test our solutions at ArsDigita, Levi Strauss, and Siemens AG.

Spotlight: Intranet -- ArsDigita

The Site: ArsDigita the company has employees in three offices across the country, and is currently working an over thirty separate projects. In order to keep track of it all, they built themselves a web based intranet manager.

Above we see my personal view of the intranet which I can call up from my personal workspace. The system knows who I am: it knows what projects I am assigned to and offers me links to my personal information. In addition I can view all the shared information from this page. I can find out who is working at ArsDigita, what projects they are working on, which customer commissioned which project, who the new prospective customers are, and many other useful tidbits of information about the company's operations. In addition, if I drill down a bit I can discover detailed information on the number of hours of work each project has soaked up so far, and where people are spending their time. For example, the page that lists all the active project contains a link to the intranet manager (for of course the construction of this module is itself one of Arsdigita's projects), and if I click on this link I can discover that the current version took David Rodriguez 100 hours to build. In addition, I find a note from Philip:

OUR OPERATIONS AND THE INTRANET MODULE We are going in front of Andersen in Dublin on October 13/14. We need to have a really impressive Intranet module to demo. We also need to make our operations better. Some quick things for the module: a) we need a virtual time card page that shows all of a person's projects and enables them to enter time for a whole week at a time (or go day by day). This should be a convenient table with a single submit button. b) we need deadlines for projects and alerts of various kinds. A person ought to be able to go in and ask "which project is most behind schedule?" c) we want to put some cost accounting into the intranet module so that I can ask "what projects are losing money?" (this means we have to also have monthly fees in there for each project). This can be rough but we want to make the point. d) we need a project-based knowledge management system in the intranet module deadline: August 30 (Andersen is flying someone over that week to check up on presentation)

The software tells me that two new people have been added to the project in late August. I can also see from this page that five hours have recently been logged by a team leader, who described her activity as: "Met w/Tracy, David and Malta about project requirements. Ran report templates for David." (Malta is one of the new programmers on the project; Tracy is another team leader who we will introduce more formally in the next section). Also I see that Mitchell, the other new person on the project, has logged four hours, reporting that he "Added chat module, AIM buddy file auto-generation, proselytized." That's a lot of work for four hours! I suppose this is an example of the productivity the toolkit makes possible: the chat module, which is already built and tested, can be quickly made to work in this new context. It seems like they are successfully ramping up to build the next generation intranet. Even so I wonder if they have a chance to meet Philip's insane August 30 deadline given that the project requirements meeting was on August 23. Seven days to build a project-based knowledge management system? Well, ArsDigita has already built one for Siemens, and they have almost certainly begun to convert the code written for the Siemens' project into a generic module, since that is the ArsDigita's habit with every project they do. Therefore they probably have some generic "project-based knowledge management" code lying around, which they could hook up into a new project in ... seven days?

In any case, I hope it is clear from this example how the intranet module can be used to learn about the state of a project and the progress of the people involved. If people reliably report on their activities, it can be a powerful tool to monitor the progress of a company's projects.

Now we have examined two examples of systems that help a community work together: the photo database, that helps people share their personal work; and the company intranet, that helps coordinate the efforts of a thirty employee company. Next we will look at a site that operates on another scale entirely: a hospital medical records system that organizes the work of hundreds or even thousands of people. On this scale, difficulties of administration similar to the ones we have been examining throughout this essay make their appearance. We will discuss the strategies that can be used to render the administration of a site as large as this one practical and scalable.

Spotlight: User Groups, User Group Roles and Permissions -- iMedix CV source

The Site: Arsdigita built an outsourced medical record system for cardiac surgeons for a company called iMedix. To view a demo of this system, log in with email=teadams@mit.edu password=demo. As in the ecommerce example, the images seen here display fake data from the development server: the data in a real system would be highly confidential.

The system is intended to replace hundreds of hospital information systems with a single Unix machine. The project was a stunning vindication of ArsDigita's architecture and strategy, for with only a few programmers on the project they finished the system months ahead of the competitors. The lead programmer on the project, Tracy Adams, is a brilliant programmer and a tremendously hard worker. She was the one who masterminded this site; I would show you a picture of her if I had one. At the right we can see an image of one patient record from this system: it gives an idea of the amount of data that this system handles. Below we can see an image showing all the groups using the system: from this we can get an impression of the number and varietyof users who will use this site. Here is a description of the system that appeared in a local newspaper article:

AATS, NEW ORLEANS, LA (Monday, April 19, 1999) - iMedix, Inc. today announced it is the first - and only - clinical outcomes software vendor to receive the first of two stages of certification by the prestigious Society of Thoracic Surgeons (STS) for its web-based product - CV Source.

iMedix enables hospitals, surgeons and other cardiac caregivers to collect, analyze and compare clinical outcomes via the Internet using its STS certified product, CV Source. One of the many benefits CV Source delivers is to help clinicians establish best practices and provide high quality cardiac care at a lower cost. CV Source is the only product that is certified to be in compliance with the most recent STS data collection standards.

"We are thrilled to be the first vendor in the industry to offer a solution that is recognized and accepted for the essential first stage of certification by the Society of Thoracic Surgeons. This is a very significant validation for our customers, because it shows that the STS has tested and approved of our web-based application model for collection and analysis of cardiovascular surgery data," said Ern Blackwelder, CEO of iMedix. "This level of recognition from such an elite professional society serves as a springboard for us to reach our ultimate goal - to lead this industry with a technology that provides unparalleled benefits for our customers and establishes us as the database innovator and pioneer."

CV Source is the industry's first, and only Internet-based solution that provides hospitals, physicians, and other health professionals with real-time clinical outcomes data collection, , analysis, and comparative reporting tools via web-based technologies, to help dramatically improve cardiac patient care.

The STS has many stringent requirements for certification of software. Benefits to members include having confidence that the products offer features such as improved and simplified core data sets, better automatic internal data quality checks, standardized export capabilities to make outcomes data more accessible and useful, and a new standard method for data harvest.

Here we see yet another example of the use of the user's workspace in a custom application. In this case the workspace shows the groups of which Tracy is a member, and provides her with a link to view the cardiac database records (like the one shown above for Mr. Hillbilly). Since this system is meant to serve so many patients and doctors, the user groups system is an important way to ensure that users sees only the information of concern to them. Tracy is only allowed to view records from patients associated with the groups of which she is a member, i.e. patients at Cambridge General Hospital, Washington Hospital Center, or Albany Adams' Hospital. As you can see above, there is a user group defined for each hospital, company, organization or specialty using the system. When a person joins a user group, that group is listed on the users workspace. The link for each group leads to information of concern to that particular group.

A site like this provides a special challenge to an administrator. The data in this system is sensitive and valuable. Maintaining the integrity of this data can be literally a matter of life and death importance. At the same time, many people need to access and modify the data to get important work done. How can the administrator ensure that the system is accessible enough that work can get done, yet secure enough that valuable data is protected?

The answer is to use the powerful system of user group roles and permissions associated with the User Group module. Each user group has a number of defined roles. Users within the group are assigned to various roles. Each role has a set of permissions associated with it. In the image to the right you see a number of the roles defined within the Washington Hospital Center, and below you can see a table of the various permissions associated with each of the roles. In this way, the data is protected: for example, a lowly clerical support person cannot damage any of the valuable data. At the same time, it is still accessible to the the people who need it: the surgeon can enter into the system the results of Mr. Hillbilly's heart operation.

Finally, I want to point out that this permissions system adds another a tool to the box of tricks an administrator can draw on if he wants to implement a community-based management scheme. When it is easy to alter the permission level of a user, the most helpful users can be granted a promotion to a higher permission level, while the most expensive users can be demoted to a level where they can no longer cause any damage. In photo.net. the practice of promoting the most helpful users to administrative positions is really a very simple example of this strategy, in a system which has only two permission levels (ordinary user and administrator). I wanted to show off the elaborate permission system from the iMedix site to suggest how much farther this basic strategy can be taken.

I do not think the iMedix system would ever use the strategy I am suggesting, but this is simply because the community it serves is made up of people who work together in the non-virtual world too. The decisions about the promotion or demotion of members will be made off-line. That is to say, the community probably does manage itself in the way I suggest: able allied clinicians will get promoted to the clerical team, while careless surgeons will be directed to turn over their data to the data entry people for input into the system. However, these promotions and demotions are not brokered by the site administrator, because they can be handled perfectly well in the non-virtual world by people who see each other every day. However, if a system of this size and complexity were built to coordinate the efforts of a group of people who were entirely separated in time and space, it would need an administrator-mediated system to handle these questions of authority and promotion. It is exactly these subtle questions of managing a community that the ArsDigita Community Toolkit is designed to enable the administrator to manage.

Role \\ Actionadministrateclinical_entrydata_reportdata_reviewdemographic_entry
administratorAllowedAllowedAllowedAllowedAllowed
allied clinicianDeniedDeniedDeniedAllowedDenied
clerical supportDeniedDeniedDeniedDeniedAllowed
clinical teamDeniedAllowedDeniedAllowedAllowed
data analystDeniedDeniedAllowedDeniedDenied
data entryDeniedAllowedDeniedAllowedAllowed
surgeonDeniedAllowedAllowedAllowedAllowed

Summary and Conclusion

So we have finished our grand tour of the three main varieties of sites -- publishing sites, ecommerce sites, and sites that help people work together. Each of them has slightly different administrative concerns and uses the modules of this section -- Community Member Histories, Member Value, and User Groups -- in a slightly different way to address them. An administrator of a publishing site has to worry about an unmanageable moderation task: he can use the member value module to identify difficult users to warn or ban, and the user groups module to reward the most helpful users with administrative positions. An administrator of an ecommerce site has to worry about runaway customer service costs: he too can use the member value module to identify expensive and profitable customers, and the user classes module to assign users different levels of priviledge within the site. Finally, the administrator of an intranet, or a site similarly devoted to helping people work together, has to worry about protecting the valuable or confidential data such a site gathers. He can use the detailed user group system, with its capability to define multiple group roles with different permission levels, to assign appropriate levels of authority to the most trustworthy users and to the more careless or inexperienced members. So each kind of site has slightly different problems, and strategies for dealing with them. However, they all make use of the same three modules: the users module that contains the community member history pages, the member value module, and the user groups module. They also make use of the same basic philosophy of administration: the idea that the administration of a large site can be simplified by harnessing the power to manage a community that the modules in this section provide.

It is my hope that the examples in this section make this philosophy clear enough that an administrator can figure out how to use it to tackle the entirely new problems that he may encounter in the novel Internet applications of the future. For of course, not every site is going to fall exactly into one of these three categories or have exactly one of these three types of problems. This is why it is useful to keep in mind the general philosophy of managing a community: sites' requirements and capabilities may change, but the basic problems of managing a group of people remains the same, whether one is running an old-fashioned corner store or the most novel new ground-breaking Internet concern.

I also hope I have succeeded in communicating to the reader how the many different examples of Internet applications presented in this section all have a common core of functionality. As one can see from the examples above, the most impressive sites all share the feature that they can be tailored to the individual user. It adds tremendous power to an Internet application if the site knows who the user is and can present him features and information tailored to his personal goals. In a publishing site, this means that the system keeps track of all the submissions by a single user; in an ecommerce site, this means prices, offers, reviews, and even the product itself can be customized to the user; and in a site built for people working together, it means the system can offer each user a private private workspace from which he can manage his personal contribution to the project. In each case, the specific features are different, but the underlying engine that supports this ability is the same. One can see the elements of this common engine cropping up over and over again: the user directory and the community member history page, the user workspace, the user group system, and the member value tools. These elements are useful in any site that needs to support the activities of a community.

Though the modules described in this section form the backbone of most sites built with the ArsDigita Community Toolkit, this is not the end of the story of toolkit features that can be useful in a wide range of sites. In the next section we will turn to examine the toolkit features that enable community member interactions, and we will show off a variety of sites that have made use of these features.