Wiki is not UseNet. The rest of this page documents some of the differences between these two media, in the form of a debate with someone who thinks wikis should follow UseNet's model. Historical note: this page originally began with a "note to contributors" requesting them to preserve the opening statement by adding comments to a different section of the page. The UseNet advocate moved changes to the bottom of the page, forcing the page from DocumentMode into ThreadMode. Refactoring of this page is encouraged, but see the next point. ''Before anyone refactors too quickly (which is only natural for us WikiZens), I want to make what (to me) is a very important point. I hope you appreciate the irony. The original author (the ranter) completely misses the point on several different levels. First, he/she is too focused on the technology involved, trying to prove that it's really nothing new. Most importantly, the tone and demeanour of the ranter are '''''exactly''''' why WikiIsNotUsenet. If you've ever gotten into heated debates on UseNet, as I have when I was younger and more naive, you'll know what I mean. The reason I'm bringing this up is that it would be a bit of a shame if it got refactored down to a standard Wiki document mode page explaining mostly dispassionately how Wiki and UseNet are different. I would suggest we preserve some of this rant, including the thread mode counter- and counter-counter-arguments, with the inevitable 'moreovers' and 'refutations'. We don't have to keep too much, just enough for the irony to be evident.'' ---- ---- '''Summary''' A wiki is an asynchronous messaging filing system that enables idea exchange between two or more participants. A wiki system collects ideas, seemingly related, into a single container, i.e., a wiki page. Wiki pages can link together through a hypertext mechanism. Wiki pages linked together form a directed graph. A wiki uses the WorldWideWeb as its foundation and relies upon a specialized file server, i.e., a Web server (aka an HTTP server), to store and retrieve wiki pages and any object that a wiki page references. '''Pattern Prototype''' A wiki is a variation of the long established USENET (User's Network, circa 1985). USENET collects ideas, seemingly related, into multiple containers, i.e., a separate file for each idea, aka article. USENET requires a specialized server, a newsgroup server host. A newsgroup server host stores and retrieves newsgroup postings, aka articles. A newsgroup server host replicates all stored messages with other newsgroup server hosts, which comprise the USENET. Usenet uses NNTP as the messaging protocol to exchange messages between a newsgroup server host and a newsgroup user host, i.e., a specialized application known as a newsgroup reader. '''Components''' * A wiki uses HTTP as the messaging protocol. * A wiki uses plain text files that embed delimited (aka escaped) sections of text that function as hyptertext references, i.e., uses the HTML file format. '''Variation''' * USENET is a real network of computers, each with their own server program that interacts with the filesystem of the host computer as well as other USENET server hosts. * A wiki is a program that uses a Web server, which interacts with the filesystem of the host computer and relies upon form rendering in a Web browser. * A wiki has one super user who can indiscriminately determine the collection of ideas either directly or through delegation of authority using a permission based mechanism. '''Recommended Wiki programs''' The ZwiKi product, which is free software, is an excellent implementation of the wiki design pattern. ZwiKi implements the ZopeApplicationServer Web services framework, also free software, which allows the super user to define permission and access editing rights. Examples of these access rights include, adding and editing rights, adding but not editing rights, adding rights and adding comments but not editing rights. Providing users with adding rights, adding comments rights but restricting editing rights allows the wiki to maintain the original intent and meaning of the original author. '''Opinion''' A wiki is like any Web service. It trades power in exchange for mass appeal, i.e., the ability for anyone to point and click using a specialized file reader, i.e., a Web browser. See my post on WikiWikiOrigin to learn about historical hypertext influences. While the wiki idea has appeal, the idea is not original nor is it unique. WardCunningham (see WikiWikiOrigin) and his partner KentBeck would have the world believe they originate clever ideas, e.g., Beck's ExtremeProgramming (See my debunking of this idea at the ExtremeAutoShop), but it's easy to see that these ideas are an application of the original ideas invented by others. ---- '''Discussion''' ''Don't overlook the importance of being able to revise existing messages, rather than just add new messages.'' ''The individual components of wiki may not be original, but their combination ''is'' both novel and useful. The importance of that combination is worth recognizing.'' ''Wiki has fundamental and important differences from Usenet. Usenet is a distribution network for static, hierarchically organized articles; wiki is not a distribution network, and its pages are neither static nor hierarchically organized. '' The preceding paragraph presents a false description. Web pages are files that exist upon a filesystem, whose user interface is hierarchically organized, invariably. Even when a system decomposes Web pages into a database (e.g., Zope), the containment view is hierarchical. ''I think we're looking at different levels. How the wiki pages are ''stored'' is implementation-specific, but your average visitor to WardsWiki doesn't care. To her, there is no innate ''conceptual'' hierarchy to pages in Wiki, aside from that imposed manually by the use of categories and suchlike.'' Moreover, the above contributor is splitting hairs. A wiki page is an unthreaded discussion, i.e., all of the "articles" exist within one containment structure, a Web page file. A USENET discussion is a threaded discussion, i.e., each idea exists within a containment structure, i.e., an article file. An implied hypertext mechanism exists that links together all of the articles within "one thread of discussion". In other words, a threaded discussion of articles and a wiki page are the same. Because USENET uses protocol designed for its purpose, i.e., the correct use of an application level protocol, USENET is closer to a correct model. All Web services, i.e., Web based programs, misuse, inherently, HTTP and HTML, i.e., use these components in manner that conflicts with their inherent design. ''Could you explain your concept of a model, and what makes one correct? I don't understand how Web services, specifically wiki, misuse HTTP. HTTP was designed for posting and retrieving files across a network, and wiki does just that.'' As the original author, I assumed that any random reader could infer this conceptual breakdown from the original content. Silly me. ''I understood your intent, but disagreed. A good example of the conceptual difference between wikis and Usenet is how you've refactored the comments that were added to this page, moving them from their original context to the bottom of the page. Such a refactoring is impossible in Usenet. Usenet is all ThreadMode; there's no way to convert a discussion thread to DocumentMode.'' ''Or, to put it a simply: I can't fix spelling errors in Usenet posts, whereas I can on wiki pages.'' ''Perhaps this page should be renamed WikiUsenetComparison.'' ---- This page embodies a fundamental misconception, that "a wiki is an asynchronous messaging filing system". This is wrong. A wiki is a tool for collaboratively writing documents. It can be (mis)used as a messaging facility or discussion board, and usually is during the writing of documents. However, for the wiki to work well, those discussions should be refactored into DocumentMode as soon as possible. ---- If a wiki "is a tool for collaboratively writing documents" then the design pattern would be a word processor application that provides revision control, e.g., MS Word. It's doubtful that WardCunningham would want his wiki concept to have association with MS Word. The original content of the document should exist forever and untouched. This is the only way for other contributors to understand the exchange of ideas. Following a thread, even if that thread exists in a single container provides a mechanism of discovery for people. When a sufficient number of people determine voluntarily decide on a final form and content of a discussion, then those people can collectively create a final document of the idea. Using a Wiki in so-called 'document mode' but more accurately named 'dictatorial revisionist mode' tramples upon the ideas freely exchanged by allowing a super user and that user's henchmen to delete content and otherwise alter content beyond recognition. Used in this manner, a Wiki is nothing more than a tool that resembles state socialist control a la Orwell's 1984 or the Soviet Union of 1948. HTTP is an application-level (based upon the OSI model) protocol for the transport of HTML encoded documents. Using it for any other purpose, e.g., transporting surface level binary encoded data ridiculously marked up with XML/HTML/XHTML is the incorrect use of the model. After all, who attempts to race a Ford Escort in the Le Mans? Correctly used, HTML and HTTP provide a mechanism for document publishing where a document is a container file of text and references to other text files and image files. Using this mechanism for any other purposes is a misuse of these tools. Misusing them is akin to "everything must be a nail because I have a hammer syndrome." The gravitation toward HTML/HTTP computing is a result of people not possessing the capability to use the 'right tool for the right job', e.g. email, USENET, Telnet, FTP, Wais, etc. Also contributing to this movement is in the inability of most people to write programs using programming languages supported by a compiler. Other contributing factors include computing with file based persistence mechanisms, the proliferation of applications with their proprietary formats, an anti-Microsoft backlash with Sun Microsystems behind the XML movement, which supports their publishing products and Java tools and the indecency of humans to desire to destroy the property of others through malicious computer viruses and other hacking. Finally, this document should remain as is, i.e., a document of history regarding the exchange of ideas as put forth by the original author and contributed by others. If someone wants to create a *new* document with the title WikiUsenetComparison, then that person should feel free. The controllers of this Web site and content could move this document, hack it, etc., and there would be nothing I could do about it. In the end though, I know the truth. If the aforementioned people want to live deluded, phony lives because it puts money in their pocket, then that is their choice. Whatever happened to ethics and and striving for ideals? Oh that's right, schools stopped teaching about the Ancient Greeks long ago. ---- Wow! What a rant! Perhaps I shouldn't even be responding, seeing as how the verbiage above skates on the thin edge of GodwinsLaw (although allusion is actually made only to BigBrother and Stalin and not ThatGermanGuy). My biggest problem with the foregoing is that I'm not seeing in the preceding paragraphs any willingness to AssumeGoodFaith on the part of the other contributors to this page. Instead I see a lot of talk about "dictatorial revisionists" who "live deluded, phony lives" for money, and an apparent assumption that the "Ancient Greeks" (and their latter-day pupils) have a monopoly on ethics. I also see a lot of stuff that's just factually inaccurate. ''E.g.,'' the assertion that the only content HTTP is meant to deliver (taking "meant" in some Platonic, ideal, "Ancient Greek" sense no doubt) is HTML -- obviously nonsensical since the HTTP specification has lots of capabilities to support the delivery of any type of data (witness the "Accept" header to allow the client to specify MIME types he is willing to receive). Heck, if HTTP could only transport HTML, how would you ever put graphics on a Web page? They are PNGs or JPEGs or GIFs or whatever, but they're ''not'' HTML and they ''are'' transported via HTTP. More troubling than the obviously false statements are all the normative assertions about how Wiki "should" work this way and "should not" work this other way and how the original form of a page "should" stand for all time to commemorate the original intent of the page's creator. These suggestions run directly counter to well-known WikiDesignPrinciples, particularly those of being "Open" and "Organic". This, coupled with the previous action of detaching legitimate, responsive commentary from its context and transporting it to the (then-)bottom of the document, where it loses most of its value, indicates to me that someone is lacking all clue of WikiSocialNorms and WhyWikiWorks. One hates to DisagreeByDeleting, but one is sometimes strongly tempted. I would suspect this as a candidate for CategoryJoke if the tone weren't so hostile, but it comes closer to deserving the "T" word. DeleteNoContent is not normally applied to a page with this much text on it, but I almost think it's appropriate here. I guess I'm just another of the Super User's trusty Henchmen, but I don't like to see this kind of thing in WardsWiki. -- CameronSmith Do you think the original author will notice that I changed "Wiki" to "wiki" where it was appropriate? I also fixed a misunderstanding of HTTP in comments far above, and in the response. None of it was signed, so I figured it was fair game for refactoring. -- AnonymousDonor ''I think the original author and the author of that rant (probably the same person) just doesn't understand the Wiki or how it encourages users to spontaneously form communities and for those communities to create documents. That is not surprising, because it takes some time of actually ''using'' the Wiki in the way that Ward originally intended for the lightbulb to come on over your head.'' ---- CategoryRant CategoryWiki CategoryWikiIsNot