:Note: ''I originally posted this in about 45 minutes. I was pressed for time, and wrote sort of offensively/defensively. This version was written when I had hours of time, and is a lot more relaxed. Thank you for reading!'' -- LionKimbro WikiNodes is part of a solution to our "OffTopic" problem. I realize that this page is OffTopic, and apologize for it. However, OffTopic-ness continues to be a problem. Not just here- but everywhere. After the problem is "solved," I invite you, anyone, to delete this page. '''Why do we have an OffTopic problem?''' The reason we have a problem with OffTopic is because we don't want to leave "our" wiki. If you and I were willing to leave our wiki, we could put our words where they were actually ''on topic.'' Everything could be nice and orderly. So, why are we reluctant to leave our wiki? Because if we post somewhere else, the people we care about won't see it. When we write on wiki, we want to make sure our collaboration partners can see it. We collaborate easily with our friends, there are good reasons for wanting to collaborate with them. "Now," you might ask, "what do you mean, my friends won't see it?" I mean that if you post your changes ''elsewhere,'' they won't appear on the ''RecentChanges'' list ''here.'' You met your collaboration partners here on ''this'' wiki. Your friends are reading the RecentChanges ''here.'' Not ''over there.'' So you and I post ''here.'' And I'm arguing that ''even'' when ''here'' isn't the place that it makes sense- from an organizational perspective- from an OnTopic / OffTopic perspective - even when ''here'' isn't the place that it makes sense to post, we do it anyways. Because our friends wouldn't see it otherwise. We might as well be posting in the Void. So we start writing OffTopic here. And then that OffTopic pulls in more OffTopic. And then there's this whole tension between OffTopic and OnTopic. Even the most austere writers here must feel it, in some way or another. Thus, the OffTopic problem. '''The Solution''' There are roughly two parts to the solution. I'll call them "Clique-Tracking Tools," and "WikiNodes." 1. Clique-Tracking Tools 1. WikiNodes Clique-Tracking Tools are, simply, tools that make it easy for us to follow the activities of our respective cliques, ''across the boundary of a single wiki.'' Clique? Aren't clique's those terribly evil things that go out of their way to exclude people, and take positions of power? They certainly can be. But they also can be you with your friends, who encourage you, collaborate you, are interested in the same things as you, and generally, all around, like you. These are people you can work with. (CliquesAndCommunities, over on CommunityWiki, describes more. http://www.emacswiki.org/cgi-bin/community/CliquesAndCommunities) Is a Clique Tracking Tool something like UnifiedRecentChanges? No, not really. How about ChangeAggregators? ''No,'' especially ''not.'' ChangeAggregators allow ''you'', an ''individual,'' to see the happenings on multiple wiki. But it doesn't help your ''clique'' see the happenings on multiple wiki. When you aggregate another wiki site, your friends don't suddenly become aware of your activities there. And if they ''did'' aggregate the site, they'd have to look at the activities of everyone ''else'' on the site as well. We don't want to aggregate the whole world..! ChangeAggregators give the ''individual'' mobility, but not the ''clique.'' We want tools to help ''make entire cliques mobile.'' What would "clique tracking tools" look like? I'm not sure. Possibilities include "activities recording servers," that you have a WikiEngine forward a log of your activities onto, or perhaps queries between WikiEngines about what users are doing, so that their friends can track their motions. But ''some'' mechanism, so that friends or coworkers can keep track of each other's motions across wiki, so that their clique can retain cohesion across wiki. And now for WikiNodes. '''What WikiNodes Are''' WikiNodes are [http://wikifeatures.wiki.taoriver.net/moin.cgi/StandardPages StandardPages] that tell you what is on-topic for a particular wiki. Basically, it works like this: * You describe what is on topic for the wiki. * You describe the relationship between the present wiki, and related, neighboring or overlapping, wiki. See [http://wikinodes.wiki.taoriver.net/moin.cgi/UnderstandingDelegations Understanding Delegations.] * You ''don't'' describe what is radically off-topic for the wiki, ''unless it's a recurring problem.'' If for some reason a wiki dedicated to implementing Design Patterns in Python is attracting people to write about Go maneuvers, you can put a delegation saying, "Go Players, go to the Go wiki." WikiNodes are ''authoritative.'' Whatever [http://www.emacswiki.org/cgi-bin/community/WikiProcess WikiProcess] you have to decide what goes on the page, it is ''authoritative.'' That means, if someone starts writing about something that's off-topic, you can delete it, or take it where it belongs, and say, "I did it because the WikiNodes page says that ''that'' is OffTopic," and the argument's more or less over. The offender would have to mess with Ward, or the System, or your Community, or whatever the authority of the wiki is vested in. '''What this all Means''' So here's the system we have for solving OffTopic / OnTopic. You have your as-yet unmade Clique-Tracking technology. That makes it so you can watch your friends across wiki. That means you can still bond, and have all the fun that comes with having interesting friends. And you have your WikiNodes. Your WikiNodes are there to help you keep straight what's OnTopic, what's OffTopic, and where to go for things that are nearly topical but not quite. So here's what it means for you, personally: Your habits will change. You'll follow links to other wiki, where things are more related. When you talk about wiki features you like, you'll refer to a wiki where all people do is talk about wiki technology. Or perhaps you'll want to link to the wiki where people talk about wiki technology from the perspective of ''developers working on implementing it.'' Or perhaps you'll want to talk about a particular wiki technology from the perspective of ''it's impact on the future.'' Regardless of whatever your idea and perspective on it is, there will be ''at least one'' place for it. '''Answering Reservations''' I've talked about this before with people, and find common reservations. I will attempt to answer them now. "Wouldn't this require some coercive force?" No. ''You,'' ultimately, will be the person who makes this happen. You're going to stumble across these well integrated, topically focused wiki one day, and it's going to be like the broken window thing- you're not going to break the Zen, so to speak, because you won't want to. But if you do, by accident, a number of helpful people will help you find where your topic is on topic. And they'll refer you to the WikiNode, or whatever the page is called, that helps you find your way. Social groups will still be alive. When your conversation digresses to Ayn Rand, or Mental Maps, or Visualization software, at each hop, you'll follow your friends' activities across the boundaries of wiki. And you'll find a living community in each of these places, composed of numerous cliques. You can ''always'' participate in a social wiki. Nobody's forcing anybody. But I think you will find that the topically focused wikis are more attractive. Most likely, you'll participate in a handful of dedicated social wikis, and many many topically focused wikis. But I suspect that as time goes by, you will find the topically focused wikis stronger, more appealing, and more understandable, as things settle. "Isn't this against the WikiWay?" The wiki way will likely continue, but as one of ''several'' ways of working with wiki. New processes are coming into existence all the time. The wiki way is like a proto-process, like Confucianism for wiki. It will likely survive in the new processes, but it will be different in each one. "How is this different than now? I already participate in many wiki." You probably do, but they are likely topically distant. When I say, "You will participate in multiple wiki," think: "There will be 20 wiki about XP programming." 20 wiki dedicated to Design Patterns. "But what will be different about them?!? How could I possibly know which one to write on?! They will be different, right?" Yes, they will be different, and you will rely on WikiNodes to figure out how they relate to one another. WikiNodes, or something very much like WikiNodes. At any rate- as for the concrete questions: What will they be about? A wiki for discussing Pair Programming. A wiki for discussing variations on XP. A wiki for discussing XP and Python. A wiki for cataloging elements of XP, like for a dictionary. A wiki for discussing case histories of XP in the world. A wiki for discussing the future of XP. A wiki for discussing business aspects of XP. A wiki for discussing the XP community and events. A wiki for criticism of XP. A wiki for unit testing. And many other wiki, for various things as discovered, that I do not begin to understand because I am not a hard-core XP man. "All at once?! Just like that?!" No. Wiki will start singular, and then split. You begin with one wiki on XP. But with time, you find that focuses are more specific. So-and-so is interested in discussing pair programming, with other people, who don't necessarily care about the rest of XP. Hence the pair programmers wiki, collecting the wisdom of pair programming. "But who would want to write about ''only'' pair programming?" Nobody. But remember: it's easy to cross from wiki to wiki, and to watch your friends as they do so too. "Won't our community fragment into pieces?" On the contrary, I believe your community should ''grow.'' People will be attracted by OnTopic content. More wiki mean more space for people to feel that they are making meaningful contributions. The people who are present will feel that they are building something of their own, yet part of something larger. And it will be. They will never be distracted by Ayn Rand and Chomsky, unless those are things that interest them, and their cliquemates go to talk about those people on wiki dedicated to them. NoamChomsky's life will be mapped out in far greater detail, his views on multiple wiki, and precise analyses of what he got wrong or right- will all be completely mapped out. Hopefully, we will all learn something in this future. But that place will ''not'' be the same as the place where you write about Design Patterns as applied in Python. That place will ''not'' be the same as the place where you write about XP strategies. That place will ''not'' be the place where you write about XP terminology from a dictionary perspective. Every thought will have a place, and everyone will participate in the organization of everything. '''Partial Solution NOW''' Right now, there are steps we can take to bring ourselves to this future. One, you can setup wiki for perspectives and topics that don't have wiki for them, and implement WikiNodes on them. It's a simple process; Go see http://wikinodes.wiki.taoriver.net/ to learn a little about the process. Ad lib it if you don't get it. Just get the concept of saying what is on topic, and what isn't, and what's close but not, and how they relate to the present wiki. Discuss with people about how you would divide up your wiki in the future, and work something out, even though we don't have the Clique-Tracking technology yet. Read http://wikinodes.wiki.taoriver.net/moin.cgi/UnderstandingDelegations, to get a feel for how topics can delegate between wiki. Second, if you can code, you can implement UnifiedRecentChanges. It'd be terribly overwhelming to try to unify ''all'' RecentChanges for ''all'' wiki, not just on the implementer, but on the reader. But it's beneficial in some cases to unify 2-7 wiki, depending on the traffic present, and how they are topically related. Say you are interested in splitting off a portion of a wiki. You can start in the middle, and use the UnifiedRecentChanges to maintain community cohesion between two wiki. The first is your original wiki, and the second is the one you are giving birth to. Setup wiki nodes, and start delegating a subject to that wiki. Make it so that the RecentChanges on both wiki show what is happening on the partner wiki. Insist that conversation about the one subject appear on the child wiki. With time, it will grow it's own culture, and it's own content, and organize it's own things. But it will be terribly OnTopic. (Just delegate anything else back to the parent wiki.) You are one step closer to a future of organized wiki. So that was Two: implement UnifiedRecentChanges. Third, you can work on InterWiki software. We're working on some over at CommunityWiki (http://www.emacswiki.org/cgi-bin/community/RecentChanges). Introduce yourself to BayleShanks and I, we'd love to talk with you. Fourth, you can think about this stuff. This is very interesting, there's a lot to think about, there's a lot to do, and again: It's very interesting. Think about it. Talk about it. '''Answering More Objections''' If you find yourself saying: "But can't we just use Change Aggregators?" - reread what I wrote about about ''clique'' mobility, not ''individual'' mobility. If you feel that this is some sort of fascist organization system- I assure you, it is not. Nobody is taking SocialWiki away, or saying that they shouldn't exist. Only that many wiki will want to be topical, and will arrange themselves to be this way. You will not be forced or prodded or shamed into anything. If you find yourself saying: "But I think there should be multiple pages on an idea on many wiki, because there are so many perspectives-" understand that we are in perfect agreement. A wiki, by this system, roughly corresponds to a perspective or a context. Many wiki will talk about the same idea, from different perspectives. (You may want to see: http://wikikm.wiki.taoriver.net/moin.cgi/IdeasHaveContext.) If you find yourself saying: "Can't we just implement a technology that allows us to organize the entire world into our one wiki?" Then ask yourself: "What am I trying to accomplish?" People like independence. People like using their own, preferred technology. People like to not have to rely on an overworked system administrator. People like distribution. Thus, InterWiki- not a mountain wiki, that tries to implement everything, and host every conversation in the world. '''Fin''' Okay. Thank you for putting up with this aggravation, and reading. If this means something to you, let me know. Get in touch with me. If you think this is outrageous, (and I've met people who have,) you probably are not understanding something. Ask questions, and I will attempt to answer. Thank you. -- LionKimbro